02/07/2019, 12:12
(Questo messaggio è stato modificato l'ultima volta il: 04/07/2019, 16:30 da Thedrifter.)
Ciao,
questo problema è già stato trattato diverse volte, ma le ricerche online non mi hanno aiutato...
Ho fatto un piccolo programmino in Python per far si che mettendo a gnd un pin del GPIO, raspberry invii una mail, ve lo posto:
import RPi.GPIO as GPIO
import smtplib
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(17, GPIO.IN)
fromaddr = 'xxx@gmail.com' (ind. mail della casella usata da raspberry)
toaddr = 'xxx@hotmail.com' (( ind. mail a cui invio la mail)
msg = 'pulsante premuto'
username = 'xxx@gmail.com' (credenziali accesso mail)
password = 'xxx'
server = smtplib.SMTP('smtp.gmail.com:587')
while (True):
if GPIO.input(17) == False:
server.starttls()
server.login(username, password)
server.sendmail(fromaddr, toaddr, msg)
server.quit()
Il pin 17 è tenuto alto da una resistenza di pullup, ed è corredato da filtro passa basso per i vari disturbi.
Se da riga di comando faccio: python /home/pi/Desktop/Invio_Mail.py lo script si avvia
premendo il tasto la mail viene inviata, quindi deduco che lo script sia fatto bene; però i problemi che riscontro sono 2:
dopo il primo invio mail, se ripremo il tasto, non viene più eseguito nulla...
All'avvio di raspberry lo script non si avvia da solo.
Per fare ciò, ho aggiunto il comando nel file /etc/rc.local come si vede quà sotto, dopo l'avvio della vpn:
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
# enable nat iptables rule
/etc/openvpn/up.sh
# avvia script per invio mail
/home/pi/Desktop/Invio_Mail.py &
exit 0
Ho anche aggiunto la seguente riga nel file sudo crontab -e
@reboot python /home/pi/Desktop/Invio_Mail.py &
Però lo script continua a non avviarsi, dove sbaglio?
Grazie a tutti
questo problema è già stato trattato diverse volte, ma le ricerche online non mi hanno aiutato...
Ho fatto un piccolo programmino in Python per far si che mettendo a gnd un pin del GPIO, raspberry invii una mail, ve lo posto:
import RPi.GPIO as GPIO
import smtplib
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(17, GPIO.IN)
fromaddr = 'xxx@gmail.com' (ind. mail della casella usata da raspberry)
toaddr = 'xxx@hotmail.com' (( ind. mail a cui invio la mail)
msg = 'pulsante premuto'
username = 'xxx@gmail.com' (credenziali accesso mail)
password = 'xxx'
server = smtplib.SMTP('smtp.gmail.com:587')
while (True):
if GPIO.input(17) == False:
server.starttls()
server.login(username, password)
server.sendmail(fromaddr, toaddr, msg)
server.quit()
Il pin 17 è tenuto alto da una resistenza di pullup, ed è corredato da filtro passa basso per i vari disturbi.
Se da riga di comando faccio: python /home/pi/Desktop/Invio_Mail.py lo script si avvia
premendo il tasto la mail viene inviata, quindi deduco che lo script sia fatto bene; però i problemi che riscontro sono 2:
dopo il primo invio mail, se ripremo il tasto, non viene più eseguito nulla...
All'avvio di raspberry lo script non si avvia da solo.
Per fare ciò, ho aggiunto il comando nel file /etc/rc.local come si vede quà sotto, dopo l'avvio della vpn:
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
# enable nat iptables rule
/etc/openvpn/up.sh
# avvia script per invio mail
/home/pi/Desktop/Invio_Mail.py &
exit 0
Ho anche aggiunto la seguente riga nel file sudo crontab -e
@reboot python /home/pi/Desktop/Invio_Mail.py &
Però lo script continua a non avviarsi, dove sbaglio?
Grazie a tutti