Talaan ng mga Nilalaman:
- Hakbang 1:
- Hakbang 2:
- Hakbang 3:
- Hakbang 4:
- Hakbang 5:
- Hakbang 6:
- Hakbang 7:
- Hakbang 8:
- Hakbang 9:
- Hakbang 10:
- Hakbang 11:
- Hakbang 12:
- Hakbang 13:
- Hakbang 14:
- Hakbang 15:
- Hakbang 16:
Video: Makatanggap ng isang Email sa Notipikasyon Kapag ang isang Channel sa ThingSpeak ay Hindi Nai-update nang Sandali: 16 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Kuwento sa background
Mayroon akong anim na mga automated greenhouse na kumakalat sa buong Dublin, Ireland. Sa pamamagitan ng paggamit ng isang pasadyang ginawang mobile phone app, malayuang masubaybayan ko at makaugnayan ang mga awtomatikong tampok sa bawat greenhouse. Maaari kong manu-manong buksan / isara ang mga bintana kapag ang temperatura ay masyadong mataas / mababa; Maaari kong simulan / itigil ang patubig kung ang kahalumigmigan ng lupa ay masyadong mababa / mataas; at maaari kong simulan / itigil ang bentilasyon ng bentilasyon kapag ang kahalumigmigan ng hangin ay masyadong mataas / mababa. O maaari ko lamang ilipat ang system sa Auto mode, at ang mga gulay ay mababantayan ng utak ng Arduino. Ang mga karagdagang detalye tungkol sa proyektong ito ay matatagpuan dito -
Ang malayuang koneksyon sa mga board ng Arduino sa anim na greenhouse ay ginawang posible sa tulong ng mga USB GPRS dongle, isa sa bawat lokasyon (Bumili ako ng minahan mula dito -E353s-2-With-Antenna-3G-USB-Modem-21-6-Mbps-HSPA-Mobile / 32979630201.html? Spm = a2g0s.9042311.0.0.44cb4c4dzVUThU). Tulad ng kaso sa koneksyon ng mobile data (hindi bababa sa Dublin), ito ay random na bumabagsak, kung minsan sa loob ng ilang minuto, minsan ay maaaring sa loob ng ilang oras. Dapat na bumagsak ang koneksyon, ang The Arduino ay naka-program upang i-reset ang USB dongle bawat 10 minuto, upang subukan nitong simulan ang isang sariwang koneksyon. Minsan gayunpaman, dahil sa (hindi) hindi alam na mga kadahilanan, kahit na ang koneksyon ng data ng GPRS ay nakabukas muli, ang Arduino (at ang naka-attach na kalasag na Ethernet) ay nabigo upang pansinin ang kaganapan. Ito ang sandali na kailangan kong pumunta sa tukoy na lokasyon at manu-manong i-reset ang buong system.
Kapag bumaba ang koneksyon ng data sa ilang lokasyon, nais kong maabisuhan sa pamamagitan ng email sa lalong madaling panahon, upang mabantayan ko ang tukoy na lokasyon na iyon. Tulad ng komunikasyon sa pagitan ng app ng telepono at ng Arduino ay nagaganap sa pamamagitan ng isang online na serbisyo na ibinigay ng https://thingspeak.com, hanggang kamakailan (at hanggang sa Marso 31, 2019), posible ito sa pamamagitan ng paggamit ng isa pang serbisyo na ibinigay ng https:// ifttt.com/discover, at pagtatakda ng isang ThingHTTP at isang React sa bawat channel, sinusubaybayan ang katotohanan kung ang partikular na channel na iyon ay hindi nai-update nang ilang oras. Gayunpaman, alinsunod sa isang email na natanggap ko mula sa Google, simula sa Marso 31, 2019, dahil sa hindi pagsunod sa kanilang na-update na mga kinakailangan sa privacy ng data (https://cloud.google.com/blog/products/g-suite/elevating-user -trust-in-our-api-ecosystems), ang pag-access sa ilang data sa aking Google account ay hindi na magagamit sa IFTTT, at tulad ng sa aking kaso ang email ay ang tanging mapagkukunan na na-access ng IFTTT, ang aking pag-unawa ay ang abiso ang serbisyo na inilarawan sa itaas ay titigil sa pagtatrabaho.
Kaya't samakatuwid, narito kami, nagpapatupad ng isang alternatibong solusyon upang ang mga abiso sa email ay patuloy na makarating kapag bumaba ang koneksyon ng data sa aking mga lokasyon. Gumagamit pa rin ito ng mga tampok na ThingHTTP at isang React sa aking mga channel, ang link lamang sa IFTTT ang muling naituro sa Google Drive. Kaya bukod sa hardware (Arduino sa aking kaso) maaari kang magkaroon ng pakikipag-usap sa iyong ThingSpeak account, kakailanganin mong lumikha ng isang Google account, na kung sakaling wala ka pa… at magsimula tayo!
Hakbang 1:
Sa Google Drive
Una, sa Google Drive (https://drive.google.com) kailangan naming lumikha ng isang spreadsheet at isang simpleng form. Buksan ang iyong Google Drive, at mag-click sa Bago - Google Sheets - Blangkong spreadsheet.
Hakbang 2:
Pinalitan ko ang pangalan ng minahan ng "Lokasyon ng spreadsheet". Pagkatapos ay pumunta sa Mga Tool - Lumikha ng isang form.
Hakbang 3:
Pinalitan ko ang form bilang "Lokasyon pababa form", at binago ang "Walang pamagat na tanong" sa "Katayuan", at ang uri mula sa "Maramihang pagpipilian" hanggang sa "Maikling sagot".
Hakbang 4:
Inalis ko ang pagpipilian para sa pagkolekta ng mga email address - mag-click sa "Baguhin ang mga setting", at alisan ng check ang lahat ng mga pagpipilian sa window na lumitaw. Mag-click sa "I-save".
Hakbang 5:
Isara ang kasalukuyang tab ng browser na humahawak sa iyong form, at dapat kang bumalik sa iyong pangunahing tab na Google Drive, kung saan dapat ay mayroon kang parehong form at spreadsheet na iyong nilikha. Buksan ang spreadsheet, at pumunta sa "File - Share …". Sa bagong window mag-click sa "Advanced"
Hakbang 6:
Pagkatapos mag-click sa "Baguhin …" sa tabi ng label na "Pribado - Ikaw lang ang maaaring mag-access"
Hakbang 7:
at baguhin sa "Bukas - Sinumang may link", at pati na rin sa "Maaaring i-edit"
Hakbang 8:
Mag-click sa "I-save" at "Tapos Na" upang makabalik sa iyong spreadsheet. Habang nandiyan, mag-click sa "File - I-publish sa web …", at pagkatapos ay mag-click sa "I-publish", at "OK" para sa window ng dayalogo. Isara ang window na "I-publish sa web".
Habang nasa spreadsheet pa rin, mag-click sa "Form - Go to live form". Mag-right click sa iyong mouse (Gumagamit ako ng browser ng Google Chrome) at piliin ang "Tingnan ang mapagkukunan ng pahina".
Hakbang 9:
Sa bagong pahina na magbubukas ng paghahanap para sa "form action" at pagkatapos ay hanapin ang link na mukhang katulad sa https://docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXX/formResponse. Piliin ang link na iyon, at kopyahin at idikit ito sa ilang tekstong dokumento. Gagamitin mo ito upang mabuo ang pangwakas na link na kailangang ipasok sa ThingHTTP para sa ThingSpeak.
Hakbang 10:
Bumalik sa view ng mapagkukunan ng iyong form, at ngayon maghanap para sa "entry.". Hanapin at piliin ang buong teksto, isang bagay tulad ng "entry. XXXXX". Kopyahin at i-paste ito sa parehong dokumento ng teksto tulad ng nasa itaas. Maaari mo nang maisara ang view ng mapagkukunan ng iyong form sa Google.
Hakbang 11:
Sa bagong dokumento ng teksto (kung saan mayroon ka ng link at ang entry na na-paste namin dati), lumikha ng pangwakas na link, na dapat magmukhang
docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXX/formResponse?entry. XXXXX = LOCATION + NAME at isumite = Isumite
Sa aking kaso, ang "LOCATION + NAME" ay papalitan ng aktwal na pangalan ng bawat partikular na lokasyon na kailangan kong subaybayan. Ang email sa notification sa email na matatanggap ko kapag bumaba ang koneksyon ay maglalaman ng teksto na ito, upang malaman ko nang eksakto kung anong mga problema ang lokasyon. Ang teksto na ito ay sa katunayan ay isusumite bilang nilalaman ng maikling teksto para sa patlang na "katayuan" sa form ng Google. Ang "& isumite = Isumite" ay tahimik na magsumite ng form, nang hindi nangangailangan ng anumang karagdagang mga aksyon, kapag na-invoke ng ThingHTTP at React.
Sa wakas, kailangan naming magdagdag ng isang script na awtomatikong magpapadala ng isang abiso sa email sa tuwing may idinagdag na bagong entry sa spreadsheet. Buksan ang spreadsheet, at pagkatapos ay mag-click sa "Tools - Script editor". Sa bagong bubukas na window idagdag ang sumusunod na code (kasama ang mga kinakailangang pagbabago upang maipakita ang iyong mga pangangailangan):
pagpapaandar ng bagongEntryNotification (e)
{
subukan mo
{
var timestamp = e.values [0];
lokasyon ng var = e.values [1];
var message = lokasyon + 'lokasyon ay BAWAS / n' + timestamp;
MailApp.sendEmail ("IYONG ADDRESS SA LAKOM", "Pansin, lokasyon na Pababa!", Mensahe);
}
mahuli (e)
{
MailApp.sendEmail ("IYONG Alamat sa email", "Error - Pansin, lokasyon na pababa!", E.message);
}
}
Palitan ang teksto ng "IYONG ALAMIN SA LAKOM" ng email address kung saan dapat maipadala ang abiso, at ang aktwal na mensahe ng abiso, kung nais mo.
Hakbang 12:
Kailangang ma-trigger ang script na ito kapag naidagdag ang isang bagong entry sa spreadsheet. Habang nasa parehong window (kasama ang script code sa itaas), mag-click sa icon na "stopwatch" sa tool bar - "Mga pag-trigger ng kasalukuyang proyekto". Hihilingin sa iyo na pangalanan ang iyong proyekto (Pinangalanan ko ang minahan na "lokasyonDown"), at magbubukas ang isa pang tab ng browser, na nag-uulat na walang mga resulta (walang mga nag-trigger) ang natagpuan. Mag-click sa "lumikha ng isang bagong gatilyo".
Hakbang 13:
Sa bagong window, piliin ang "Mula sa spreadsheet" para sa "Piliin ang mapagkukunan ng kaganapan"; "Sa form isumite" para sa "Piliin ang uri ng kaganapan"; "Ipaalam sa akin kaagad" para sa "pagkabigo sa mga setting ng abiso". Mag-click sa "I-save". Hihilingin sa iyo na mag-sign in sa iyong Google account, at "Payagan" para sa trigger na ito na i-access ang iyong account kapag kinakailangan.
Hakbang 14:
Dapat ay mayroon kang isang gatilyo sa listahan ng mga pag-trigger, na mai-link sa script na nilikha namin dati. Samakatuwid, sa pagpasok ng bagong data sa spreadsheet (gamit ang naka-automate na link na form at ang tahimik na pamamaraan na inilarawan sa itaas), tatawagan kaagad ng trigger ang script, na magpapadala ng isang abiso sa email address na ibinigay, na naglalaman ng iyong napiling mensahe.
Tapos na kami sa panig ng Google Drive, at lumilipat kami ngayon sa ThingSpeak.
Hakbang 15:
Sa ThingSpeak Mag-sign in sa iyong account (https://thingspeak.com/login), pumunta sa "Apps - ThingHTTP", at pagkatapos ay mag-click sa "New ThingHTTP". Bigyan ito ng isang pangalan (Pinili ko ang aktwal na pangalan ng bawat lokasyon; "MyLocationName" para sa hangarin ng tutorial na ito), at sa patlang na "URL", i-paste ang link mula sa iyong text file, ang mukhang
docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXX/formResponse?entry. XXXXX = LOCATION + NAME at isumite = Isumite
Iwanan ang lahat ng iba pang mga patlang tulad ng mga ito, at mag-click sa "I-save ang ThingHTTP".
Hakbang 16:
Pagkatapos ay pumunta sa "Apps - React", at mag-click sa "New React". Bigyan ito ng isang pangalan (muli, pinili ko ang pangalan ng lokasyon na sinusundan ng salitang "reaksyon", ngunit maaari kang pumili ng anumang pangalan na nais mo); "Walang Suriin ang Data" para sa "Uri ng Kalagayan"; "Tuwing 10 minuto" para sa "Frequency ng Pagsubok"; ang pangalan ng channel na nais mong subaybayan para sa mga update, para sa "Kung Channel"; ang oras na hindi na-update ang channel (pumili ako ng 15 minuto), para sa "hindi na-update para sa"; "ThingHTTP" para sa "Aksyon"; "MyLocationName" para sa "pagkatapos isagawa ang ThingHTTP"; "Patakbuhin ang aksyon sa kauna-unahang pagkakataon lamang natugunan ang kundisyon", dahil nais ko lang makakuha ng isang notification nang isang beses. Mare-reset ang sarili nito kapag na-update muli ang channel gamit ang bagong papasok na data. Mag-click sa "I-save ang React" at tapos ka na.
Mula ngayon kapag ang iyong channel ay hindi nai-update sa loob ng 15 minuto (o iba pang oras, depende sa iyong napili), mahuhuli ng React ang pagbubukod na mag-uudyok sa ThingHTTP, na kung saan ay tahimik na lilikha ng isang bagong entry sa iyong spreadsheet Dadalhin ito ng Trigger at ng script sa Google Spreadsheet mula doon, tulad ng naipaliwanag na sa itaas.
Inirerekumendang:
Makatanggap ng Mga Abiso sa Email Mula sa Iyong Mga Proyektong IoT: 6 na Hakbang
Makatanggap ng Mga Abiso sa Email Mula sa Iyong Mga Proyektong IoT: Mga abiso sa email ng programa na kumokonekta sa iyong mga proyekto ng IoT sa Adafruit IO at IFTTT. Nag-publish ako ng ilang mga proyekto ng IoT. Inaasahan kong nakita mo sila, Kung hindi inaanyayahan kita sa aking profile at suriin ang mga ito. Nais kong makatanggap ng ilang mga notification kapag ang isang variable
Kapag ang Makita BL1813G Baterya ay Hindi Magkasya sa Radio ng Makita Site: 6 Mga Hakbang
Kapag ang Makita BL1813G Baterya ay Hindi Magkasya sa Radio ng Makita Site: Ang mga baterya para sa Makita Cordless 18V Li-Ion Combi Drill HP457D ay hindi umaangkop sa pag-dock para sa mga radio site, isang bagay na may kinalaman sa katotohanang ang drill na ito ay nai-market sa mga tindahan ng DIY at Amazon para sa paggamit ng DIY. Ito ay napaka nakakainis dahil hindi ko
NFC Lock - Kapag ang isang PCB Ay Gayundin ang Mga Pindutan, ang Antenna at Higit Pa : 7 Hakbang (na may Mga Larawan)
NFC Lock - Kapag ang isang PCB Ay Gayundin ang Mga Pindutan, ang Antenna at Higit Pa …: Maaari kang kumuha ng isa sa dalawang mga bagay mula sa Instructable na ito. Maaari mong sundin kasama at lumikha ng iyong sariling kumbinasyon ng isang numerong keypad at isang NFC reader. Ang eskematiko ay narito. Narito ang layout ng PCB. Makakakita ka ng isang bayarin ng mga materyales para sa iyo upang mag-order ng p
Lumiko Ang Anumang Headphone Sa Isang Modular Headset (hindi Mapanghimasok) Nang Hindi Pinipinsala ang Headphone .: 9 Mga Hakbang
Lumiko Ang Anumang Headphone Sa isang Modular Headset (hindi Mapanghimasok) Nang Hindi Pinipinsala ang Headphone .: Ito ay isang ideya na wala ako sa asul pagkatapos bigyan ako ng isang kaibigan ng ilang sirang mga headset ng supercheap. Ito ay isang modular microphone na maaaring magnetically nakakabit sa halos anumang headphone (gusto ko ito dahil kaya kong mag-gaming kasama ang mga high res headphone at pati na rin
Ano ang Dapat Gawin Kapag Hindi Kinikilala ng ITunes ang Iyong IPod .: 7 Mga Hakbang
Ano ang Gagawin Kapag Hindi Kinikilala ng ITunes ang Iyong IPod .: Kaya natanggap mo ang iyong bagong iPod at nasasabik kang gamitin ito. I-plug mo ang USB cord sa computer at isaksak ang kabilang dulo sa iyong iPod. Ngayon ay nakasalamuha mo ang isang problema. Para sa ilang kadahilanan ay hindi nakita ng iTunes ang iyong iPod. Maaari mong isipin na ito ay isang pr