Du-te la conținut

Notificari SMS din HomeAssistant cu TTGo T-Call - Tutoriale IT & Tech

Tutoriale IT & Tech

Tutoriale

IT & Tech

Omite meniul
Invertorul EaSun SMW 8KW 48v 2xMPPT - Tutoriale IT & Tech
Setare Cookie
Pagina cu Butoane
Descriere:

Știu că HomeAssistant poate notifica prin diferite metode, și destul de eficiente, dar personal cred că nicio metodă nu este mai de încredere decât SMS-urile. Mi s-a întâmplat ca Androidul să dezactiveze diferite servicii (din diverse motive) și să nu primesc notificările, dar partea de SMS niciodată. Acum... dacă notificarea nu este ceva extrem de important... aia e... dar imaginează-ți că ai un sistem de alarmă sau ceva critic (ce consideri tu critic) și nu îți intră notificarea. Așa că astăzi am să îți arăt cum am rezolvat eu problema simplu și eficient.

Am căutat și am găsit acest modul. Este un TTGO T-Call v1.4 bazat pe ESP32 și bătrânul modul SIM800L, care este extrem de stabil și de încredere, dar dezavantajul este că știe doar 2G. Inițial am încercat ceva bazat pe alt modul compatibil 3G, dar sincer am constatat că este extrem de instabil. Acum... odată achiziționat, a trebuit să îl configurez. Am căutat pe net și aici... câte bordeie, atâtea obiceie... Majoritatea celor care au pus pe net codul fie au pus pentru v1.3, nu versiunea 1.4, și au uitat să menționeze, fie au pus cod incomplet sau nefuncțional (în cazul meu). Am săpat să mă inspir, am mai pus de la mine și, până la urmă, am reușit să îl fac funcțional.

Codul complet îl poți lua de mai jos și, înainte de compilare, trebuie să îl modifici să corespundă cu ce ai tu, după care compilează și urcă pe ESP. Înainte de a introduce cartela SIM, asigură-te că ai dezactivat codul PIN.
De asemenea, pentru a funcționa corect, trebuie să creezi un fișier lângă fișierul de configurație al modulului din HomeAssistant (de obicei în /homeassistant/esphome/). Denumește acest fișier "ttgo_nvs_helper.h" și adaugă în el conținutul de mai jos.
View Configuration Buttons
Ca de obicei, asigură-te că, înainte de compilare și upload, ai introdus KEY-ul, ai setat corect IP-urile și gateway-ul și că fișierul „secrets” este la locul lui și configurat pentru partea de WiFi.

În esență, dacă adaugi un număr de telefon la Boot SMS Number, ESP-ul va trimite un mesaj SMS la 15 secunde după ce este online. Dacă nu este configurat, va sări peste acest pas. Îl poți configura în HA să trimită mesaje SMS în orice automatizare către orice număr de telefon mobil. Nu am testat fără prefixul internațional și, sincer, nu știu dacă funcționează. De asemenea, există două câmpuri: unul pentru numărul de telefon și unul pentru mesaj, astfel încât să poți trimite un mesaj de test când dorești.

Am creat un whitelist de 5 numere de telefon (consider că sunt suficiente), iar acest whitelist are rolul de a permite recepționarea de mesaje SMS și apeluri. În esență, dacă numărul nu este în whitelist, va fi automat blocat. Ce poți face cu asta? Păi, de exemplu, poți să îi trimiți un SMS cu un mesaj preconfigurat, iar sistemul să execute o acțiune pe baza lui, de exemplu, să stingă sau să aprindă un bec sau un set de becuri. Bineînțeles, pentru a face asta, este necesar să editezi și să modifici configurația modulului ESP, să salvezi și să compilezi/uploadezi.

Poți urmări în log-uri dacă mesajele intră, dacă au formatul corect și așa mai departe.
Am căutat pe Google Play (nu știu pentru iOS) și am găsit o aplicație numită "SMS Templates", unde îți poți predefini mesajele și apoi doar să le expediezi.
Pentru a adăuga sau a scoate comenzi via SMS, trebuie să modifici sau să ștergi în două locuri. Mai întâi, mergi la secțiunea de butoane, unde trebuie să creezi un buton virtual (sau să ștergi unul). Aici, trebuie să îi dai un nume, un ID și să specifici ce să comande (senzorul din HA).

După aceea, mai sus în cod, trebuie să adaugi partea de mesaj, mai exact să legi textul pe care îl trimiți de acest buton virtual.

Nu este complicat, dar nici ușor. La început, am încercat să apelez direct serviciul prin funcția Lambda, dar nu era de încredere, deoarece nu executa comanda la fiecare mesaj. Era o chestiune de noroc. Din acest motiv, deși este puțin mai complicat să adaugi sau să ștergi, folosirea butoanelor virtuale este mult mai de încredere. Așa poți fi sigur că se întâmplă ceea ce vrei atunci când dai comanda.

Pentru golirea NVS, am introdus o protecție de care trebuie să ții cont dacă vrei să rulezi comanda, pentru a preveni apăsarea accidentală. În primul rând, după fiecare boot, trebuie să aștepți minimum două minute înainte de a putea apăsa. Fiecare apăsare în acest interval resetează contorul. După cele două minute, trebuie să apeși o dată și încă o dată în interval de 10 secunde. Doar așa se execută comanda care curăță NVS-ul.
🎥 Urmărește și tutorialul video, unde îți arăt tot procesul, pas cu pas tot ce trebuie să știi pentru a face lucrurile ca la carte, fără bătăi de cap.
Totul explicat clar, pe înțelesul tuturor, fără termeni complicați și cu exemple din viața reală. 🎥
Ne vedem acolo! 😉

Tutorial prezentat de: Remus @ Tutoriale IT & Tech

Canale și Platforme Sociale
Înapoi la cuprins