La procedura relativa all’invio in frequenza del messaggio della temperatura richiede sia installata nel sistema, oltre al web server apache e al php (anche nella versione cgi con il comando sudo apt-
sudo apt-
Controllare che nel file php.ini presente nel vs. sistema linux sia decommentata la riga
;extension=php_curl.dll
togliendo quindi il “;”
Potete facilmente verificare che la libreria curl sia presente nel sistema , basta creare un file tipo info.php (sudo touch info.php) all’interno di /var/www editarlo (sudo nano info.php) ed inserire al suo interno queste istruzioni:
<?php
echo phpinfo();
?>
Adesso, se digitate http://xx.xx.xx.xx/info.php vedrete una pagina riassuntiva le caratteristiche del php installato, e nella relativa sezione, se presente, la libreria curl (ricordo che al posto di xx va messo l’ip del raspberry).
La pagina che ci interessa si chiama cattura.php e va messa sempre sotto /var/www
L’obiettivo è “catturare” dal sito http://www.cfr.toscana.it/ le informazioni che ci interessano e una volta estrapolate inviarle al programma “texttransmit” che si occuperà di inviarle lato rf.
La pagina è abbastanza commentata nelle varie linee del codice, i punti ove intervenire sono:
$ch = curl_init(“http://www.cfr.toscana.it/”);
ovvero l’indirizzo web ove andare a prendere le informazioni, specificare dove andare a posizionarsi per i dati che ci interessano:
$ricerca = “Firenze”;
ed infine adattare l’output al proprio sistema radio:
$comando = “texttransmit ir5ubo_b –
Il tutto è stato pensato per trovare informazioni del tipo (sempre da cfr.toscana.it)
Firenze 28.2 °C –
dove andremo a prendere solo il nome della città ed il valore della temperatura, ovviamente la procedura può essere adattata a pagine diverse, con formati diversi, in tal caso occorre agire nel codice per posizionarsi e leggere solo ciò che ci interessa.
Infine, inserire nel cron (sudo crontab –
*/15 * * * * /home/pi/temp_fi.sh >/dev/null 2>&1
Per praticità è stato creato un file temp_fi.sh (con i diritti di esecuzione, sudo chmod 777 temp_fi.sh) che viene eseguito appunto ogni 15 minuti, e che si occupa di lanciare da riga di comando la pagina php in esame:
#!/bin/sh
sudo /usr/bin/php /var/www/cattura.php
ik5xmk@gmail.com