Vediamo una serie di esempi su come inviare un messaggio Twitter con i processori Rabbit, FlyPort e con un modem Telit.
In questo articolo presentiamo tre soluzioni per inviare messaggi Twitter
dai processori:
Rabbit su rete LAN Ethernet,
OpenPicus Flyport su LAN Wi-Fi
e via GPRS con un modem Telit Python.
Twitter è un servizio gratuito di rete sociale e microblogging che fornisce agli utenti una pagina personale aggiornabile
tramite messaggi di testo con una lunghezza massima di 140 caratteri (wikipedia).
Twitter come tante altre importanti applicazioni WEB (Google , Facebook) utilizza il sistema di autenticazione OAuth,
di facile integrazione
su applicazioni per PC, ma estremamente macchinoso e a volte impossibile da utilizzare su
processori con ridotte risorse.
Per semplificare la procedura di autenticazione
è
possibile utilizzare una piccola applicazione WEB
(TwittHTTP).
Questa dopo essere stata autorizzata sul proprio profilo Twitter è in grado di accettare
una semplice richiesta GET o POST HTTP
e postare un messaggio sulla propria pagina TWITTER.
Al momento della registrazione dell'app TwittHTTP, verrà fornito un codice token che andrà inserito nei sorgenti
degli esempi presenti in questo articolo.
Grazie al token ricevuto dal POST o la GET HTTP, l'applicazione TwittHTTP potrà autenticarsi
sul profilo Twitter fornito al momento della registrazione, ed inserire il messaggio passato come parametro nella richiesta HTTP,
sulla bacheca Twitter.
Un Twitter dal Rabbit
Per sviluppare questo esempio è necessario disporre di un micrprodessore Rabbit RCM3700 montato sulla scheda di sviluppo SX3000
(SX20: connettività USB e XBee su tutte le schede di Area SX).
Usando la scheda di sviluppo SX3000 gli unici collegamenti richiesti sono: l'alimentazione di +12V AC/DC e il collegamento alla rete
LAN dotata di accesso ad internet.
Prima di compilare e caricare il programma twitter.c contenuto nel file TWITTER_RABBIT.zip e necessario modificare
i seguenti define
#define MY_IP_ADDRESS "192.168.0.135"
#define MY_GATEWAY "192.168.0.1"
#define MY_NAMESERVER "212.216.112.112"
.
.
#define TWITTER_STATUS "E da oggi anche il Rabbit Twitta ;)"
#define TWITTER_TOKEN "318938137-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
impostando: un IP valido per la propria rete LAN, l'indirizzo del gateway per l'accesso ad internet, un server DNS, il messaggio
da pubblicare su Twitter e il token ottenuto registrando l'app TwittHTTP.
Per verificare il corretto funzionamento è sufficiente premere il pulsante "BTN1" e attendere la pubblicazione del messaggio
sulla pagina Twitter.
Un Twitter dal FlyPort
Per il primo esempio è richiesto: un modulo Wi-Fi FlyPort completo di scheda SDK Nest (Modulo openpicus FlyPort con interfaccia Wi-Fi 802.11 certificata b/g/n) e
l'ambiente di sviluppo
OpenPicus IDE (Ambiente di sviluppo IDE per il FlyPort Wi-Fi).
I soli collegamenti elettrici richiesti sono: un pulsante N.A. collegato tra massa GND e l'ingresso IN2 sulla scheda NEST;
e l'alimentazione di +5V
che può eventualmente essere fornita dal collegamento USB con il PC.
Prima di compilare e caricare il programma di esempio contenuto nel file TWITTER_FLYPORT.zip,disponibile nella sezione download
di questo articolo, è necessario editare il file taskFlyport.c e modificare i due define:
#define TWITTER_STATUS "Il mio FlyPort Twitta :)"
#define TWITTER_TOKEN "318938137-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
con il proprio messaggio e il token ottenuto al momento della registrazione dell'applicazione TwittHTTP.
Sempre nel file taskFlyport.c bisogna anche impostare i parametri
di rete LAN e Wi-Fi oltre al gateway e ai server DNS per accedere ad internet:
WFSetParam(MY_IP_ADDR, "192.168.0.138" );
WFSetParam(SUBNET_MASK, "255.255.255.0" );
WFSetParam(PRIMARY_DNS, "195.110.128.1" );
WFSetParam(SECONDARY_DNS, "212.48.4.11" );
WFSetParam(MY_GATEWAY, "192.168.0.1" );
WFSetParam(DHCP_ENABLE, DISABLED );
WFSetParam(SSID_NAME, "www.areasx.com" );
WFSetParam(NETWORK_TYPE, INFRASTRUCTURE );
WFSetSecurity(WF_SECURITY_WPA2_WITH_PASS_PHRASE,"xxxxxxxxxx",10,0);
A questo punto possiamo compilare e caricare il programma tramite OpenPicus IDE.
Per verificare se tutto funziona è sufficiente: alimentare il modulo FlyPort
(alimentazione richiesta solo se il modulo non è collegato in USB), attendere che questo
si colleghi rete Wi-Fi (LED D1 sul FlyPort acceso) precedentemente configurata,
e premere il pulsante che abbiamo collegato sulla Nest. Se tutto ha funzionato correttamente dopo pochi istanti
vedremo, il messaggio impostato nel define TWITTER_STATUS, apparire sulla nostra bacheca Twitter.
Un Twitter dal modem Telit
Per questo ultimo esempio l'hardware richiesto un modem Telit GM862-PY
montato sulla scheda di sviluppo SXPY (Guida all'utilizzo della SX-PY), ed una SIM GSM abilitata al traffico
GPRS.
I collegamenti necessari sono: l'alimentazione +12V AC/DC e l'antenna GSM da collegare al modem.
Prima di uplodare il programma Python (Compilare i programmi Python per modem Telit), contenuto nel file TWITTER_SXPY.zip, nel modem è necessario editare il file
TWITTER.py e modificare le variabili:
TwitterStatus = "Un TWITTER via GPRS dal mio Telit GM862"
TwitterToken = "318938137-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
APN = "ibox.tim.it"
impostando il messaggio da inviare su Twitter, il token ottenuto alla registrazione dell'applicazione TwittHTTP e l'APN
per la connessione GPRS. Quest'ultimo cambia per ogni da operatore telefonico.
Per collaudare il sistema è sufficiente: inserire la SIM GSM nel modem, alimentare la SXPY, attendere qualche secondo
per la registrazione (lampeggio lento del LED GSM) e premere sul tasto "TEST".
La corretta esecuzione del programma può essere ispezionata tramite console seriale:
Link Utili
Twitter
wikipedia
Download
Sorgente: TWITTER_FLYPORT.zip
Sorgente: TWITTER_RABBIT.zip
Sorgente: TWITTER_SXPY.zip
Segnala questo articolo:
Parole chiave: - FlyPort - GPRS - GSM - PIC - Python - Rabbit - Rabbit Serie 3000 - Rabbit Serie 4000 - Rabbit Serie 5000 - Wi-Fi -
|