Per fare cio' si usa la url
https://mail.google.com/mail/feed/atom/label
ma prima di fare cio' si deve andare nella configurazione della propria mailbox e configurare almeno una label e poi associare un filtro ad una determinata label
per esempio si puo' creare una label Lavoro e poi creare un filtro che in base ad un indirizzo mail associa l'etichetta Lavoro.
per recuperare il numero delle mail arrivate con la label Lavoro E NON APERTE si puo' usare il comando dove username e' la mail privata di @gmail.com e la password e' quella dell'account
curl -u username:password "https://mail.google.com/mail/feed/atom/Lavoro" -k --silent |grep -o "<fullcount>[0-9]*</fullcount>" |grep -o "[0-9]*"
se si lancia il comanda si ha un errore di violazione. Questo perche' gli account di GMail sono particolarmente protetti. Per fare si' che il comando abbia buon fine si deve andare nel proprio account e cercare Consenti app meno sicure e settare On
Fatto cio' si puo' creare uno script che se il numero delle mail non lette con una determinata label e' maggiore di zero effettua una azione, diciamo azionare un rele' collegato al pin D12 a sua volta collegato per esempio ad una sirena o ad una luce a 12 V
YUN
In YUN si procede caricando lo script bash e poi, dall'interfaccia web, si abilita l'accesso REST senza password (OPEN)
Si carica quindi lo sketch Bridge dagli esempi e si lancia lo script sottostante
------------------------------
gmail=$(curl -u username:password "https://mail.google.com/mail/feed/atom/Lavoro" -k --silent |grep -o "<fullcount>[0-9]*</fullcount>" |grep -o "[0-9]*")
#echo $gmail
if [ "$gmail" -gt "0" ]; then
then curl http://localhost/arduino/digital/12/1;
else
then curl http://localhost/arduino/digital/12/0;
fi
------------------------------
Edison
------------------------------
advertence=$(curl -u username:password "https://mail.google.com/mail/feed/atom/Lavoro" -k --silent |grep -o "<fullcount>[0-9]*</fullcount>" |grep -o "[0-9]*")
echo $advertence
if [ "$advertence" -gt "0" ]; then
./accendi.py
else
./spegni.py
fi
------------------------------
accendi.py
------------------------------
#!/usr/bin/env python
import mraa
x = mraa.Gpio(12)
x.dir(mraa.DIR_OUT)
x.write(1)
------------------------------
spegni.py
------------------------------
#!/usr/bin/env python
import mraa
x = mraa.Gpio(12)
x.dir(mraa.DIR_OUT)
x.write(0)
------------------------------
------------------------------
#!/usr/bin/env python
import mraa
x = mraa.Gpio(12)
x.dir(mraa.DIR_OUT)
x.write(0)
------------------------------