/domotica-telegram

Un semplice bot di Telegram su Raspberry Pi che controlla la casa e avvisa in caso di problemi

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Un bot in grado di gestire dei sensori in casa

Telegram è un'ottima piattaforma per creare bot che possano interagire con i messaggi di domando inviati tramite il proprio dispositivo portatile. Ho creato questo piccolo sistema per controllare l'impianto di videosorveglianza in casa (lo accendo, lo spengo, lo interrogo sullo stato e mi faccio mandare un avviso e le foto quando capita che viene rilevato un movimento) e lo sto perfezionando con il controllo di vari sensori e allarmi. La pagia riassuntiva di tutto il progetto è questa. Cercherò di tenere aggiornate entrambe per facilitarvi l'accesso a tutte le modifiche. L'applicazione è in Python, usa le librerie telepot per interagire con le API di Telegram e il programma motion per rilevare il movimento, usando la videocamera IR presente sul Raspberry Pi

Il programma tvcc.py va avviato al boot del sistema, in modo che il bot sia pronto (per motivi di sicurezza, al riavvio del raspberry la videosorveglianza viene attivata in automatico) Il programma invia_foto.py va inserito nel file di configurazione di motion alla riga on_picture_save (invia una foto ogni volta che questa viene salvata su disco, il problema è la lentezza dovuta al fatto che ogni volta deve aprire una connessione con Telegram) Il programma avvisa_movimento.py va inserito nel file di configurazione di motion alla riga on_event_start (avvisa che un evento di rilevazione di movimento è iniziato) E' necessario ricordarsi di mettere la calncellazione della cartelle delle foto alla riga on_event_end altrimenti il disco si potrebbe riempire rapidamente

Changelog

Versione 1.04 del 17/04/2016

Ho aggiunto la parte di gestione delle informazioni sulle temperature e le letture della corrente (manca la gestione del DB, ma arriva a breve) Ho aggiunto la cartella con il codice del lettore di consumo elettrico istantaneo, fare rifeimrento al blog per tutta la parte di descrizione e chemi elettrici.

Versione 1.03 del 21/02/2016

Il sistema non rispondeva quando ho tolto il cognome dela mio account su telefram, ho aggiunto il controllo che se il cognome non c'è il sistema non si blocca.

Versione 1.02 del 31/01/2016

Aggiunto il controllo del server multimedale linux con miniDLNA Aggiunte alcune try per tracciare problemi in giro per il programma Aggiunto un log per l'output del programma, far partire il sistema al boot con il comando nel crontab @reboot /bin/sleep 60 ; python /cartella_del_programa/tvcc.py >>/cartella_del_log/tvcc_std.log 2>&1 Aggiunto lo script per controllare se il programma cade, da inserire nel crontab ogni 5 o 10 minuti Affinata la gestione degli utenti autorizzati, ora sono gestiti tutti e 5

Versione 1.01 del 27/01/2016

Ho aggiunto il controllo delle eccezioni in caso di avvio del sistema con Internet assente e sulla mancata connessione ai server di Telegram per problemi loro o mancanza di Internet

Versione 1.0 del 24/01/2016

Funzionalità di base inserite, accensione, spegnimento, richiesta stato e invio messaggi di avviso quando viene rilevato un movimento. Ripetto alla prima versione beta ho annullato la solita falsa rilevazione dell'errore che segnala il movimento appena il servizio di motion parte. Resta da definire la procedura fatta bene che verifica gli utenti autorizzati.