Sadržaj:
- Korak 1:
- Korak 2:
- Korak 3:
- Korak 4:
- Korak 5:
- Korak 6:
- Korak 7:
- Korak 8:
- Korak 9:
- Korak 10:
- Korak 11:
- Korak 12:
- Korak 13:
- Korak 14:
- Korak 15:
- Korak 16:
Video: Primite poruku e -pošte s obavijestima kada kanal na ThingSpeaku neko vrijeme nije bio ažuriran: 16 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
Priča u pozadini
Imam šest automatiziranih staklenika koji su rasprostranjeni po Dublinu, Irska. Korištenjem prilagođene aplikacije za mobilne telefone mogu daljinski nadzirati i komunicirati s automatiziranim funkcijama u svakom stakleniku. Mogu ručno otvoriti / zatvoriti prozore kada je temperatura previsoka / niska; Mogu započeti / zaustaviti navodnjavanje kada je vlaga u tlu preniska / visoka; i mogu pokrenuti / isključiti ventilator kada je vlažnost zraka previsoka / niska. Ili mogu jednostavno prebaciti sistem u automatski način rada, a za povrće će se brinuti Arduino mozak. Više detalja o ovom projektu možete pronaći ovdje -
Daljinsko povezivanje s Arduino pločama u šest staklenika omogućeno je uz pomoć USB GPRS ključeva, po jedan na svakoj lokaciji (ja sam svoj kupio ovdje https://www.aliexpress.com/item/Unlocked-New-Huawei-E353 -E353s-2-sa-antenom-3G-USB-modem-21-6-Mbps-HSPA-Mobile/32979630201.html? Spm = a2g0s.9042311.0.0.44cb4c4dzVUThU). Kao što je slučaj s mobilnom podatkovnom vezom (barem u Dublinu), ona nasumično pada, ponekad na nekoliko minuta, ponekad na nekoliko sati. U slučaju prekida veze, Arduino je programiran za resetiranje USB ključa svakih 10 minuta kako bi pokušao uspostaviti novu vezu. Ponekad, međutim, iz (još) nepoznatih razloga, čak i ako je GPRS podatkovna veza ponovno uspostavljena, Arduino (i priključeni Ethernet štit) ne primjećuju događaj. Ovo je trenutak kada moram otići na tu određenu lokaciju i ručno resetirati cijeli sistem.
Kad se podatkovna veza prekine na nekoj lokaciji, želio sam dobiti obavijest putem e -pošte što je prije moguće, kako bih pazio na tu određenu lokaciju. Budući da se komunikacija između telefonske aplikacije i Arduina odvija putem internetske usluge koju pruža https://thingspeak.com, do nedavno (pa do 31. ožujka 2019.) to je bilo moguće pomoću druge usluge koju pruža https:// ifttt.com/discover i postavljanje ThingHTTP -a i React -a na svakom kanalu, nadgledajući činjenicu da li određeni kanal nije ažuriran neko vrijeme. Međutim, prema e-pošti koju sam primio od Googlea, počevši od 31. ožujka 2019., zbog nepoštivanja njihovih ažuriranih zahtjeva za privatnost podataka (https://cloud.google.com/blog/products/g-suite/elevating-user -trust-in-our-api-ecosystems), pristup nekim podacima na mom Google računu više neće biti dostupan IFTTT-u, a kako je u mom slučaju e-pošta bila jedini resurs kojem je IFTTT imao pristup, razumio sam da je obavijest gore opisana usluga prestala bi raditi.
Dakle, evo nas, implementiramo alternativno rješenje kako bi obavijesti putem e -pošte i dalje pristizale kad se prekine podatkovna veza na mojim lokacijama. Ovo još uvijek koristi funkcije ThingHTTP i React na mojim kanalima, samo je veza na IFTTT ponovno usmjerena na Google disk. Dakle, osim hardvera (Arduino u mom slučaju) možda ste komunicirali sa svojim ThingSpeak računom, morat ćete stvoriti Google račun, u slučaju da ga već nemate … i počnimo!
Korak 1:
Na Google disku
Prvo, na Google disku (https://drive.google.com) moramo stvoriti proračunsku tablicu i jednostavan obrazac. Otvorite svoj Google disk i kliknite Novo - Google tablice - Prazna proračunska tablica.
Korak 2:
Ja sam svoj promijenio u "Tablica prema lokaciji". Zatim idite na Alati - Kreiraj obrazac.
Korak 3:
Preimenovao sam obrazac u "Location down form", i promijenio "Pitanje bez naslova" u "Status", a tip iz "Višestruki izbor" u "Kratak odgovor".
Korak 4:
Zatim sam uklonio opciju prikupljanja adresa e -pošte - kliknite na "Promijeni postavke" i poništio odabir svih opcija u prozoru koji se pojavio. Kliknite na "Sačuvaj".
Korak 5:
Zatvorite trenutnu karticu preglednika na kojoj se nalazi vaš obrazac i trebali biste se vratiti na svoju glavnu karticu Google disk, gdje biste trebali imati i obrazac i proračunsku tablicu koju ste upravo stvorili. Otvorite proračunsku tablicu i idite na "Datoteka - Dijeli …". U novom prozoru kliknite na "Napredno"
Korak 6:
Zatim kliknite na "Promijeni …" pored oznake "Privatno - samo vi možete pristupiti"
Korak 7:
i promijenite u "Uključeno - Svatko s vezom", a također u "Može uređivati"
Korak 8:
Kliknite na "Spremi" i "Gotovo" da biste se vratili na svoju proračunsku tablicu. Dok ste tamo, kliknite na "Datoteka - Objavi na webu …", a zatim kliknite na "Objavi" i "U redu" za prozor za dijalog. Zatvorite prozor "Objavi na webu".
Dok ste još u proračunskoj tablici, kliknite na "Obrazac - Idi na živi obrazac". Desnom tipkom miša kliknite mišem (koristim preglednik Google Chrome) i odaberite "Prikaži izvor stranice".
Korak 9:
Na novoj stranici koja se otvara potražite "radnju obrasca", a zatim pronađite vezu koja izgleda slično https://docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXX/formResponse. Odaberite tu vezu, kopirajte je i zalijepite u neki tekstualni dokument. Koristit ćete ga za formiranje konačne veze koju je potrebno unijeti u ThingHTTP za ThingSpeak.
Korak 10:
Vratite se na izvorni prikaz vašeg obrasca, a sada potražite "entry". Pronađite i odaberite cijeli tekst, nešto poput "entry. XXXXX". Kopirajte ga i zalijepite u isti tekstualni dokument kao gore. Sada možete zatvoriti izvorni prikaz vašeg Google obrasca.
Korak 11:
U novom tekstualnom dokumentu (gdje sada imate vezu i unos koji smo prethodno zalijepili) stvorite konačnu vezu koja bi trebala izgledati
docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXXX/formResponse?entry. XXXXX = LOCATION+NAME & submit = Submit
U mom slučaju, "LOCATION+NAME" bi se zamijenilo stvarnim imenom svake određene lokacije koju moram nadzirati. E -poruka s obavijesti e -poštom koju ću primiti kada se veza prekine sadržavat će ovaj tekst, tako da znam točno na kojoj lokaciji ima problema. Ovaj će tekst u stvari biti poslan kao sadržaj kratkog teksta za polje "status" u Google obrascu. "& Submit = Submit" će tiho poslati obrazac, bez potrebe za daljim radnjama, kada ga pozovu ThingHTTP i React.
Konačno, moramo dodati skriptu koja će automatski slati obavijesti e -poštom svaki put kada se u proračunsku tablicu doda novi unos. Otvorite proračunsku tablicu, a zatim kliknite "Alati - Uređivač skripti". U novi prozor koji se otvori dodajte sljedeći kôd (sa potrebnim promjenama koje odražavaju vaše potrebe):
funkcija newEntryNotification (e)
{
probaj
{
var vremenska oznaka = e.values [0];
var location = e.values [1];
var poruka = lokacija + 'lokacija je DOLE / n' + vremenska oznaka;
MailApp.sendEmail ("VAŠA E -POŠTA", "Pažnja, lokacija DOLE!", Poruka);
}
ulov (e)
{
MailApp.sendEmail ("VAŠA E -POŠTA", "Greška - Pažnja, lokacija DOLJE!", E.poruka);
}
}
Zamijenite tekst "VAŠA E -POŠTA" e -adresom na koju treba poslati obavijest i stvarnom porukom obavijesti, ako želite.
Korak 12:
Ova se skripta mora pokrenuti kada je u proračunsku tablicu dodan novi unos. Dok ste u istom prozoru (sa gornjim kodom skripte), kliknite na ikonu "štoperica" na traci sa alatkama - "Okidači trenutnog projekta". Od vas će se tražiti da imenujete svoj projekt (ja sam svoj nazvao "locationDown"), a otvorit će se i druga kartica preglednika koja izvještava da nisu pronađeni rezultati (nikakvi okidači). Kliknite na "kreiraj novi okidač".
Korak 13:
U novom prozoru odaberite "Iz proračunske tablice" za "Odaberi izvor događaja"; "On form submit" za "Select type event"; "Obavijesti me odmah" za "Postavke obavijesti o grešci". Kliknite na "Sačuvaj". Od vas će se tražiti da se prijavite na svoj Google račun i "Dozvolite" da ovaj okidač pristupi vašem računu kada je to potrebno.
Korak 14:
Sada biste trebali imati okidač na listi okidača, koji će biti povezan sa skriptom koju smo prethodno kreirali. Stoga će, nakon umetanja novih podataka u proračunsku tablicu (pomoću veze automatiziranog obrasca i gore opisane tihe metode), okidač odmah pozvati skriptu, koja će poslati obavijest na navedenu adresu e -pošte koja sadrži odabranu poruku.
Završili smo sa strane Google diska i sada prelazimo na ThingSpeak.
Korak 15:
U ThingSpeak Prijavite se na svoj račun (https://thingspeak.com/login), idite na "Aplikacije - ThingHTTP", a zatim kliknite na "Nova ThingHTTP". Dajte mu ime (odabrao sam stvarni naziv svake lokacije; "MyLocationName" za potrebe ovog vodiča), a u polje "URL" zalijepite vezu iz svoje tekstualne datoteke, onu koja izgleda kao
docs.google.com/forms/d/e/XXXXXXXXXXXXXXXXXXXXXXXXXX/formResponse?entry. XXXXX = LOCATION+NAME & submit = Submit
Ostavite sva ostala polja onakva kakva jesu i kliknite na "Save ThingHTTP".
Korak 16:
Zatim idite na "Aplikacije - Reagiraj" i kliknite na "Nova reakcija". Dajte mu ime (opet, odabrao sam naziv lokacije iza kojeg slijedi riječ "reagiraj", ali možete odabrati bilo koje ime koje želite); "Nema provjere podataka" za "Tip stanja"; "Svakih 10 minuta" za "Učestalost testiranja"; naziv kanala koji želite pratiti radi ažuriranja, za "If Channel"; vrijeme u kojem kanal nije ažuriran (odabrao sam 15 minuta), jer "nije ažurirano za"; "ThingHTTP" za "Akciju"; "MyLocationName" za "zatim izvedite ThingHTTP"; "Pokreni akciju samo prvi put kada se ispuni uvjet", jer želim dobiti obavijest samo jednom. Ovo će se resetirati kada se kanal ponovo ažurira novim ulaznim podacima. Kliknite na "Save React" i gotovi ste.
Od sada, kada vaš kanal nije ažuriran 15 minuta (ili neki drugi put, ovisno o tome što ste odabrali), React će uhvatiti tu iznimku koja će pokrenuti ThingHTTP, što će zauzvrat šutke stvoriti novi unos u vašem proračunska tablica. Okidač i skripta na Google proračunskoj tablici preuzimaju ga odatle, kao što je već gore objašnjeno.
Preporučuje se:
Ažuriran solarni laser + LED sada sa Power Bank: 3 koraka
Ažurirano Solarni laser + Led sada sa Power Bank -om: Koristim krug power bank -a za USB i umjesto superkondenzatora koristio sam nikal -metal -hidrid za LED i dodao sam laserski pokazivač, a za power bank sam koristio litijumsku ćeliju i napunio pomoću USB nije solarni. I dodao sam rezervni solarni panel na
Tripwire automatski minimizira kartice kada neko prođe: 3 koraka
Tripwire automatski minimizira kartice kad neko prođe: Da li uvijek zabušavate na računaru i brinete se da li ćete biti uhapšeni? Ne više jer ćemo danas napraviti tripwire koji automatski minimizira vaše kartice kad neko prođe.Ovaj projekt uglavnom sadrži dva modula RECEIVER (Rx) a
Saznajte kada je neko ušao u sobu: 7 koraka
Saznajte kada je neko ušao u prostoriju: U ovom vodiču ćemo naučiti kako saznati kada je neko ušao u prostoriju pomoću RTC modula, PIR senzora, OLED ekrana i arduina. Pogledajte demonstracijski video
Senzor plamena s obavijestima o telegramu: 6 koraka
Senzor plamena sa obavijestima o telegramu: U ovom projektu realiziran je senzor plamena s obavijestima o telegramu. Dakle, kada senzor otkrije požar, odmah ćete dobiti obavijest o ovom događaju u Telegramu. Prilično je korisno i praktično. Pa kako to funkcionira? Pokazat ću ti
Ažuriran Steadicam za bicikle: 10 koraka
Ažurirani Steadicam montiran na bicikl: Ovaj projekt s uputama detaljno opisuje najnoviju verziju steadicama montiranog na bicikl (izrađenog od dijelova prodavaonice hardvera i dijelova hobby shop -a) za miniDV kameru. Video koji sam snimio iskoristio sam za stvaranje DVD -a za: trgovinu biciklima i za