Raspberry Pi Cam: bot telegram che rileva movimenti

Nell’articolo di oggi vedremo come creare un sistema che ti permette di notificare qualsiasi movimento che rileva la Raspberry Pi Camera.

Per questo scopo utilizzeremo un bot telegram.

Secondo la definizione classica data al termine Bot (abbreviazione di robot), esso è un codice di programmazione che permette di automatizzare un servizio e di dialogare con utenti reali, tramite chat, senza che dall’altro lato ci sia un essere umano. Un Bot, infatti, permette di programmare input di messaggi che possono aiutare coloro che fanno parte di questi gruppi o canali.

I materiali da utilizzare sono i seguenti:

  • Raspberry Pi
  • Pi camera
  • Tastiera
  • Mouse
  • Monitor
  • Telegram
  • Connessione a internet

INSTALLAZIONI PRELIMINARI

ATTENZIONE: questa procedura è valida solo per la Raspberry Pi Camera, non funzionerà con una webcam USB

Apri il terminale.

Per sicurezza effettuiamo un update:

Per l’implementazione del bot occorre una specifica libreria. Per installare questa libreria basta eseguire il comando.

pip install telepot

INSTALLAZIONE RASPBERRY PI CAMERA

Ho scritto una guida approfondito a riguardo, per leggerla potete utilizzare il seguente link: Come installare e configurare la Raspberry Pi Camera

INSTALLAZIONE INTERFACCIA WEB

Ho scritto una guida approfondito a riguardo, per leggerla potete utilizzare il seguente link: Come creare interfaccia web con la Raspberry Pi Camera

IMPOSTA MODALITA’ DI RILEVAMENTO SU MONITOR

Andiamo su “Camera Settings”

Andiamo su Motion detect mode e impostiamo su monitor

 

CREAZIONE BOT

Il primo passo consiste nell’aprire l’applicazione telegram. Una volta aperta cerchiamo “BotFather” tramite la funzione cerca cliccando sull’apposita lente di ingrandimento.

“BotFather” è un bot che permette di creare altri bot.

Avviamo il bot scrivendo “/start“, poi premiamo invio.

Telegram

Per creare un nuovo bot digitiamo “/newbot”.

BotFather ci chiederà di assegnare un nome al nostro nuovo Bot, basta digitare un qualsiasi nome e poi premere Invio.

Dobbiamo anche inserire un username che lo renderà riconoscibile pubblicamente. Username deve terminare in “Bot” o ” _bot”.

In seguito alla assegnazione del nome e dell’username BotFather ci comunicherà informazioni importanti in seguito per compilare il codice per il funzionamento del sensore e dell’invio dati. ATTENZIONE: QUESTE INFOMAZIONI LE DOVREMMO TENERE SOLO PER NOI. La prima parte riguarda il percorso per trovare il nostro bot. La seconda è la API che sarà utilizzato nel nostro codice.

Telegram

Per recuperare il chat_id bisogna andare al link https://api.telegram.org/bot<TOKEN>/getUpdates, dove al posto di <TOKEN> dovete inserire il TOKEN di accesso alle API http del bot.

A questo punto mandate un messaggio nella chat ed aggiornate la pagina del link. In questa pagina vedrete popolarsi un file JSON in cui vi viene mostrato il CHAT_ID nella chiave “chat” e nel campo “id” (come nello screenshot sottostante):

TEST FUNZIONAMENTO BOT

Ora che possiedi il Token API e chatid possiamo ricevere un messaggio dal nostro bot. Digitiamo nel terminale quanto segue (sostituiamo dove è opportuno il token e il chatid).

Apri telegram e verifica che ti è arrivato il messaggio.

Raspberry

SCRIPT BASH

Dobbiamo creare due script per inviarti notifiche quando viene rilevato un movimento.

PASSO 1

Creiamo un nuovo file di configurazione per memorizzare i vari parametri di Telegram necessari per lo script.

Inserisci questo comando nel terminale:

Inserisci questo codice:

Crea un nuovo file che verrà eseguito ogni volta che viene rilevato un movimento.

Digita il seguente comando:

Inserisci il seguente codice:

Ora dobbiamo eseguire lo script motion_event.sh e cambiare alcune proprietà con i seguenti comandi:

Ora siamo pronti ad utilizzare il BOT.

Accediamo sulla nostra interfaccia web.

TEST 

Attiviamo la modalità motion detection

Raspberry

Avviamo il bot telegram

Ed ecco che se ci muoviamo arriverà un messaggio.

Raspberry

Ed ecco che abbiamo creato il nostro bot telegram tramite il quale riceveremo notifiche se ci sono movimenti intorno della picamera.

Voglio ringraziare AZ-Delivery per avermi dato la possibilità di avere la rpicam.

Preferireste aspettare 8 settimane per l’autoimportazione dalla Cina, incerti se le merci arriveranno mai, le terre alla dogana o semplicemente saranno rispedite indietro? O acquistare in Germania ad un prezzo totalmente gonfiato da un rivenditore specializzato? Preferisci acquistare il prodotto a buon mercato in Cina senza essere sicuro di quale versione del prodotto riceverai, o ordinarlo dal rivenditore tedesco incl. istruzioni e scheda dati?

Nel seguente link è presente il sito ufficiale AZdelivery

Per chi fosse interessato può acquistare la rpicam nel seguente link.

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

Simone Candido è un ragazzo appassionato del mondo tech nella sua totalità. Simone ama immedesimarsi in nuove esperienze, la sua filosofia si basa sulla irrefrenabile voglia di ampliare a 360° le sue conoscenze abbracciando tutti i campi del sapere, in quanto ritiene che il sapere umano sia il connubio perfetto tra cultura umanistica e scientifica.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.