Inhaltsverzeichnis:

Twitter und das Arduino Yún - Gunook
Twitter und das Arduino Yún - Gunook

Video: Twitter und das Arduino Yún - Gunook

Video: Twitter und das Arduino Yún - Gunook
Video: Arduino YÚN - Intro (read the description below!) 2024, Juli
Anonim
Twitter und der Arduino Yún
Twitter und der Arduino Yún

Nachdem wir fast 100 Dollar für einen Arduino Yún ausgegeben hatten, um zu sehen, worum es bei der Aufregung ging, schien es eine gute Idee zu sein, einige Verwendungen dafür zu finden und zu demonstrieren. In diesem Artikel werden wir also anhand einiger einfacher Beispielskizzen untersuchen, wie Ihr Yún einen Tweet senden kann – und das erste von mehreren Arduino Yún-spezifischen Tutorials. Erste Schritte Wenn Sie dies noch nicht getan haben, stellen Sie sicher, dass Ihr Arduino Yún sich über WLAN oder Kabel mit Ihrem Netzwerk verbinden kann – und erhalten Sie ein Temboo-Konto (wir führen dies hier durch). Und Sie benötigen (zum Zeitpunkt des Schreibens) die IDE-Version 1.5.4, die von der Arduino-Website heruntergeladen werden kann. Schließlich, wenn Sie keinen Twitter-Account haben – holen Sie sich einen.

Schritt 1: Senden eines Tweets von Ihrem Yún

Senden eines Tweets von Ihrem Yún
Senden eines Tweets von Ihrem Yún
Senden eines Tweets von Ihrem Yún
Senden eines Tweets von Ihrem Yún

Senden eines Tweets von Ihrem YúnDank Arduino und Temboo sind 99% der Arbeit bereits für Sie erledigt. Um einen Tweet zu senden, benötigen Sie die Arduino-Skizze, eine Header-Datei mit Ihren Temboo-Kontodetails und auch die Notwendigkeit, eine Anwendung in der Twitter-Entwicklungskonsole zu registrieren. Keine Panik, folgen Sie einfach den Anweisungen zum Einrichten auf der folgenden Seite. Wenn Sie dies tun, stellen Sie sicher, dass Sie auf der Temboo-Website angemeldet sind, da die Header-Datei dann für Sie mit Ihren Temboo-Details gefüllt wird. Vergessen Sie während der Twitter-Anwendungsphase nicht, Ihre OAuth-Einstellungen zu speichern, die auf der Registerkarte "OAuth-Tool" auf der Twitter-Entwicklerseite angezeigt werden, zum Beispiel im obigen Bild. Diese Einstellungen werden dann in jede Skizze kopiert, beginnend mit der Zeile:constStringTWITTER_ACCESS_TOKEN=Wenn Sie die Skizze speichern, stellen Sie sicher, dass Sie die Header-Datei mit dem Namen TembooAccount.h im selben Ordner wie Ihre Skizze ablegen. Sie wissen, dass dies erfolgreich war, wenn Sie den Sketch öffnen, da Sie die Header-Datei in einem zweiten Tab sehen, zum Beispiel im zweiten Bild in diesem Schritt. Wenn Sie schließlich Code mit anderen teilen, entfernen Sie Ihr OAuth und TembooAccount. h Details andernfalls können sie Tweets in Ihrem Namen senden.

Schritt 2: Hat es funktioniert?

Hat es funktioniert?
Hat es funktioniert?

OK – genug Warnungen. Wenn Sie Ihr Temboo-Konto erfolgreich erstellt haben, Ihre Twitter-OAuth-Details erhalten, sie alle in die Sketch- und Header-Datei eingegeben, dann gespeichert (!) und Ihre Skizze auf Arduino Yún hochgeladen haben - ein kurzer Tweet erscheint auf Ihrer Timeline Beispiel im ersten Bild oben. Wenn in Ihrem Twitter-Feed nichts angezeigt wird, öffnen Sie den seriellen Monitor in der IDE und sehen Sie, welche Meldungen angezeigt werden. Es wird Ihnen die Fehlermeldung von Twitter zurückgeben, die im Allgemeinen auf das Problem hinweist.

Schritt 3: Eigene Daten als Tweet senden

Eigene Daten als Tweet senden
Eigene Daten als Tweet senden

Sehen wir uns nun an, wie Sie Tweets mit Ihren eigenen Informationen senden. In der folgenden Beispielskizze senden wir den Wert aus analogRead(0) und Text zusammengefasst in einer Zeile. Vergessen Sie nicht, dass Twitter-Nachrichten (Tweets) eine maximale Länge von 140 Zeichen haben. Wir haben das gesamte Tweet-Versand in eine Funktion tweet() verschoben, die Sie dann bei Bedarf aus Ihrem Sketch aufrufen können – bei einem Ereignis und so weiter. Der zu sendende Text und die zu sendenden Daten werden in Zeile 26 zu einem String zusammengefasst.------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------#include #include #include "TembooAccount.h" // enthält Temboo-Kontoinformationen // wie im Fußzeilenkommentar unten beschriebenconst 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); Verzögerung (4000); while(!Seriell); Bridge.begin ();}void tweet () { Serial.println ("Tweet ()-Funktion wird ausgeführt"); // Definiere den Text des Tweets, den wir senden möchten String tweetText("Der Wert von A0 ist " + String(analogZero) + ". Hurra für Twitter"); TembooChoreo-StatusUpdateChoreo; // den Temboo-Client aufrufen // Beachten Sie, dass der Client bei jedem Aufruf seiner Methode run() erneut aufgerufen und mit // entsprechenden Argumenten gefüllt werden muss. StatusesUpdateChoreo.begin(); // Temboo-Kontoanmeldeinformationen festlegen StatusesUpdateChoreo.setAccountName(TEMBOO_ACCOUNT); StatusesUpdateChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME); StatusesUpdateChoreo.setAppKey(TEMBOO_APP_KEY); // die auszuführende Choreo der Temboo-Bibliothek identifizieren (Twitter > Tweets > StatusesUpdate) StatusesUpdateChoreo.setChoreo("/Library/Twitter/Tweets/StatusesUpdate"); // füge die Twitter-Kontoinformationen hinzu 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); // und der Tweet, den wir senden möchten StatusesUpdateChoreo.addInput("StatusUpdate", tweetText); // den Prozess anweisen zu laufen und auf die Ergebnisse zu warten. Der // Returncode (returnCode) sagt uns, ob der Temboo-Client // unsere Anfrage an die Temboo-Server senden konnte unsigned int returnCode = StatusesUpdateChoreo.run(); // ein Rückgabecode von Null (0) bedeutet, dass alles funktioniert hat if (returnCode == 0) { Serial.println ("Erfolg! Tweet gesendet!"); } else { // ein Rückgabecode ungleich null bedeutet, dass ein Fehler aufgetreten ist // die Fehlermeldung lesen und ausgeben while (StatusesUpdateChoreo.available()) { char c = StatusesUpdateChoreo.read(); Serial.print (c); } } StatusesUpdateChoreo.close(); // tue die nächsten 90 Sekunden nichts Serial.println ("Warten …"); delay(90000);}void loop(){ // einige Daten von A0 abrufen. analogZero=analogRead(0); tweet(); tun {} while (1); // nichts tun}--------------------------------------------- -------------------------------------------------- ---------------------------------------- Welche Ergebnisse mit dem folgenden Beispiel-Tweet in der Bild oben. Mit der vorherigen Beispielskizze können Sie Ihre eigene Funktionalität um die Funktion tweet() herum erstellen, um bei Bedarf Daten zu senden. Denken Sie daran, dass die als Tweet zu sendenden Daten in Zeile 26 zu einem String kombiniert werden. Bitte beachten Sie, dass Sie Tweets aus zwei Gründen nicht wie eine Maschine aussenden können – erstens mag Twitter kein schnelles automatisiertes Tweeten – und zweitens: Sie erhalten pro Monat nur 1000 kostenlose Anrufe auf Ihr Temboo-Konto. Wenn Sie mehr benötigen, muss das Konto kostenpflichtig aktualisiert werden. Fazit Nun, der Yún bietet uns eine andere Möglichkeit, Daten über Twitter zu versenden. Es war nicht die billigste Art, dies zu tun, aber es war ziemlich einfach. Und damit der Kompromiss mit der Arduino-Plattform – Einfachheit vs. Preis. Bleiben Sie dran für weitere Tutorials. Und wenn Sie mehr über Arduino erfahren möchten oder jemand anderen in die interessante Welt von Arduino einführen möchten – lesen Sie mein Buch (jetzt in dritter Auflage!) „Arduino Workshop“von No Starch Press.

Empfohlen: