Sommario:

Twitter e Arduino Yún: 3 passaggi
Twitter e Arduino Yún: 3 passaggi

Video: Twitter e Arduino Yún: 3 passaggi

Video: Twitter e Arduino Yún: 3 passaggi
Video: CIS3330 - Twitter based Arduino Secuirty(Black & Mulroy) 2024, Dicembre
Anonim
Twitter e Arduino Yun
Twitter e Arduino Yun

Dopo aver speso quasi $ 100 su un Arduino Yún per vedere di cosa si trattava, mi è sembrata una buona idea trovarne e dimostrarne alcuni usi. Quindi in questo articolo esamineremo come il tuo Yún può inviare un tweet usando alcuni semplici schizzi di esempio e il primo di numerosi tutorial specifici di Arduino Yún. Per iniziare Se non lo hai già fatto, assicurati che il tuo Arduino Yún possa connettersi alla tua rete tramite WiFi o cavo e ottieni un account Temboo (lo spieghiamo qui). E hai bisogno (al momento della stesura) della versione IDE 1.5.4 che può essere scaricata dal sito web di Arduino. Infine, se non hai un account Twitter, prendine uno.

Passaggio 1: inviare un tweet dal tuo Yún

Invio di un tweet dal tuo Yún
Invio di un tweet dal tuo Yún
Invio di un tweet dal tuo Yún
Invio di un tweet dal tuo Yún

Invio di un tweet dal tuo YúnGrazie ad Arduino e Temboo, il 99% del lavoro è già stato fatto per te. Per inviare un tweet è necessario lo sketch Arduino, un file di intestazione con i dettagli del tuo account Temboo e anche la necessità di registrare un'applicazione nella console di sviluppo di Twitter. Niente panico, segui le istruzioni "Get Set Up" dalla pagina seguente. Quando lo fai, assicurati di aver effettuato l'accesso al sito Web di Temboo, in quanto popolerà il file di intestazione con i tuoi dettagli Temboo per te. Durante la fase di applicazione Twitter, non dimenticare di salvare le impostazioni OAuth che appariranno nella scheda "Strumento OAuth" nella pagina degli sviluppatori di Twitter, ad esempio nell'immagine sopra. Queste impostazioni vengono quindi copiate in ogni schizzo a partire dalla riga:constStringTWITTER_ACCESS_TOKEN=Quando salvi lo schizzo, assicurati di posizionare il file di intestazione con il nome TembooAccount.h nella stessa cartella del tuo schizzo. Sai che questo ha avuto successo quando apri lo schizzo, poiché vedrai il file di intestazione in una seconda scheda, ad esempio nella seconda immagine in questo passaggio. Infine, se stai condividendo il codice con altri, rimuovi il tuo OAuth e TembooAccount. h dettagli altrimenti possono inviare tweet per tuo conto.

Passaggio 2: ha funzionato?

Ha funzionato?
Ha funzionato?

OK, abbastanza avvisi. Se hai creato con successo il tuo account Temboo, hai ottenuto i dettagli OAuth di Twitter, li hai inseriti tutti nello schizzo e nel file di intestazione, quindi salvato (!) e caricato il tuo schizzo su Arduino Yún - un breve tweet apparirà sulla tua timeline, per esempio nella prima immagine sopra. Se non appare nulla sul tuo feed di Twitter, apri il monitor seriale nell'IDE e guarda quali messaggi vengono visualizzati. Ti restituirà il messaggio di errore di Twitter, che generalmente indica il problema.

Passaggio 3: inviare i propri dati come Tweet

Invio dei propri dati come Tweet
Invio dei propri dati come Tweet

Andando avanti, esaminiamo come inviare tweet con le tue informazioni. Nel seguente schizzo di esempio inviamo il valore risultante da analogRead(0) e testo combinati insieme in una riga. Non dimenticare che i messaggi di Twitter (tweet) hanno una lunghezza massima di 140 caratteri. Abbiamo spostato tutto l'invio di tweet in un'unica funzione tweet(), che puoi quindi chiamare dal tuo schizzo quando richiesto - su un evento e così via. Il testo e i dati da inviare vengono combinati in una stringa nella riga 26.----------------------------------- --------------------------------------------------- --------------------------------------------------- ----------#include #include #include "TembooAccount.h" // contiene informazioni sull'account Temboo // come descritto nel commento in basso const String TWITTER_ACCESS_TOKEN = "aaaa";const String TWITTER_ACCESS_TOKEN_SECRET = "bbbb";const String TWITTER_CONSUMER_KEY = "ccccc";const String TWITTER_CONSUMER_SECRET = "dddd";int analogZero;void setup() { Serial.begin(9600); ritardo (4000); while(!Seriale); Bridge.begin();}void tweet(){ Serial.println("Funzione tweet() in esecuzione"); // definiamo il testo del tweet che vogliamo inviare String tweetText("Il valore di A0 è " + String(analogZero) + ". Evviva per twitter"); Stati di TembooChoreoUpdateChoreo; // invoca il client Temboo // NOTA che il client deve essere richiamato e ripopolato con // argomenti appropriati, ogni volta che viene chiamato il suo metodo run(). StatusesUpdateChoreo.begin(); // imposta le credenziali dell'account Temboo StatusesUpdateChoreo.setAccountName(TEMBOO_ACCOUNT); StatusesUpdateChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME); StatusesUpdateChoreo.setAppKey(TEMBOO_APP_KEY); // identifica la coreografia della libreria Temboo da eseguire (Twitter > Tweets > StatusesUpdate) StatusesUpdateChoreo.setChoreo("/Library/Twitter/Tweets/StatusesUpdate"); // aggiungi le informazioni sull'account Twitter StatusesUpdateChoreo.addInput("AccessToken", TWITTER_ACCESS_TOKEN); StatusesUpdateChoreo.addInput("AccessTokenSecret", TWITTER_ACCESS_TOKEN_SECRET); StatusesUpdateChoreo.addInput("ConsumerKey", TWITTER_CONSUMER_KEY); StatusesUpdateChoreo.addInput("ConsumerSecret", TWITTER_CONSUMER_SECRET); // e il tweet che vogliamo inviare StatusesUpdateChoreo.addInput("StatusUpdate", tweetText); // dire al processo di eseguire e attendere i risultati. Il // codice di ritorno (returnCode) ci dirà se il client Temboo // è stato in grado di inviare la nostra richiesta ai server Temboo unsigned int returnCode = StatusesUpdateChoreo.run(); // un codice di ritorno pari a zero (0) significa che tutto ha funzionato if (returnCode == 0) { Serial.println("Success! Tweet inviato!"); } else { // un codice di ritorno diverso da zero significa che c'è stato un errore // legge e stampa il messaggio di errore while (StatusesUpdateChoreo.available()) { char c = StatusesUpdateChoreo.read(); Serial.print(c); } } StatusesUpdateChoreo.close(); // non fa nulla per i prossimi 90 secondi Serial.println("In attesa…"); delay(90000);}void loop(){ // recupera alcuni dati da A0. analogZero=analogRead(0); tweet(); fai {} mentre (1); // fare niente}--------------------------------------------- --------------------------------------------------- ----------------------------------------Quale risulta con il seguente esempio di tweet mostrato nel immagine sopra. Con lo schizzo di esempio precedente puoi costruire la tua funzionalità attorno alla funzione tweet() per inviare dati quando richiesto. Ricorda che i dati da inviare come tweet sono combinati in una stringa alla riga 26. Tieni presente che non puoi far saltare in aria i tweet come una macchina, per due motivi: uno, a Twitter non piace il tweet automatico rapido e due, ricevi solo 1000 chiamate gratuite al mese sul tuo account Temboo. Se hai bisogno di più, l'account deve essere aggiornato a un costo. Conclusione Beh, Yún ci offre un altro modo per inviare dati tramite Twitter. Non era il modo più economico per farlo, tuttavia era abbastanza semplice. E quindi il compromesso con la piattaforma Arduino: semplicità vs. prezzo. Resta sintonizzato per altri tutorial. E se sei interessato a saperne di più su Arduino, o vuoi far conoscere a qualcun altro l'interessante mondo di Arduino, dai un'occhiata al mio libro (ora in una terza edizione!) "Arduino Workshop" di No Starch Press.

Consigliato: