Оглавление:

Twitter и Arduino Yún: 3 шага
Twitter и Arduino Yún: 3 шага

Видео: Twitter и Arduino Yún: 3 шага

Видео: Twitter и Arduino Yún: 3 шага
Видео: Linux на Arduino. Платформы Tian, Yún и Yún mini. Железки Амперки 2024, Ноябрь
Anonim
Twitter и Arduino Yún
Twitter и Arduino Yún

Потратив почти 100 долларов на Arduino Yún, чтобы понять, из-за чего возникла такая суета, казалось хорошей идеей найти и продемонстрировать некоторые способы его использования. Итак, в этой статье мы рассмотрим, как ваш Yún может отправлять твит, используя несколько простых примеров набросков - и первое из нескольких руководств по Arduino Yún. Начало работы Если вы еще этого не сделали, убедитесь, что ваш Arduino Yún может подключиться к вашей сети через Wi-Fi или кабель - и получите учетную запись Temboo (мы рассмотрим это здесь). И вам понадобится (на момент написания) IDE версии 1.5.4, которую можно загрузить с веб-сайта Arduino. Наконец, если у вас нет учетной записи в Твиттере - заведите ее.

Шаг 1. Отправка твита от вашего Yún

Отправка твита от вашего Yún
Отправка твита от вашего Yún
Отправка твита от вашего Yún
Отправка твита от вашего Yún

Отправка твита с вашего Yún Благодаря Arduino и Temboo 99% работы уже выполнено за вас. Для отправки твита требуется эскиз Arduino, файл заголовка с данными вашей учетной записи Temboo, а также необходимость зарегистрировать приложение в консоли разработки Twitter. Не паникуйте, просто следуйте инструкциям «Get Set Up» со следующей страницы. Когда вы это сделаете, убедитесь, что вы вошли на веб-сайт Temboo, так как он затем заполнит файл заголовка вашими данными Temboo. На этапе приложения Twitter не забудьте сохранить настройки OAuth, которые будут отображаться на вкладке «Инструмент OAuth» на странице разработчика Twitter, например, на изображении выше. Затем эти настройки копируются в каждый эскиз, начиная со строки: constStringTWITTER_ACCESS_TOKEN = При сохранении эскиза убедитесь, что вы поместили файл заголовка с именем TembooAccount.h в ту же папку, что и ваш эскиз. Вы знаете, что это было успешным при открытии эскиза, поскольку вы увидите файл заголовка на второй вкладке, например, на втором изображении на этом этапе. Наконец, если вы делитесь кодом с другими, удалите свои OAuth и TembooAccount. h, иначе они смогут отправлять твиты от вашего имени.

Шаг 2: это сработало?

Это сработало?
Это сработало?

ОК - достаточно предупреждений. Если вы успешно создали свою учетную запись Temboo, получили данные Twitter OAuth, загрузили их все в файл эскиза и заголовка, затем сохранили (!) И загрузили свой эскиз в Arduino Yún - на вашей временной шкале появится короткий твит, для пример на первом изображении выше. Если в вашей ленте Twitter ничего не отображается, откройте монитор последовательного порта в среде IDE и посмотрите, какие сообщения появляются. Он вернет вам сообщение об ошибке из твиттера, которое обычно указывает на проблему.

Шаг 3. Отправка ваших данных в виде твита

Отправка ваших данных в виде твита
Отправка ваших данных в виде твита

Двигаясь дальше, давайте посмотрим, как отправлять твиты с вашей собственной информацией. В следующем примере скетча мы отправляем значение, полученное в результате analogRead (0), и текст, объединенные вместе в одной строке. Не забывайте, что сообщения Twitter (твиты) имеют максимальную длину 140 символов. Мы переместили всю отправку твитов в одну функцию tweet (), которую вы затем можете вызывать из своего скетча при необходимости - при событии и так далее. Текст и данные для отправки объединяются в строку в строке 26.----------------------------------- -------------------------------------------------- -------------------------------------------------- ---------- # include #include #include "TembooAccount.h" // содержит информацию об учетной записи Temboo // как описано в нижнем колонтитуле комментария 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); задержка (4000); в то время как (! серийный); Bridge.begin ();} void tweet () {Serial.println ("Запуск функции tweet ()"); // определяем текст твита, который мы хотим отправить String tweetText («Значение A0 равно« + String (analogZero) + ». Ура для твиттера»); TembooChoreo СтатусыUpdateChoreo; // вызвать клиента Temboo // ЗАМЕТЬТЕ, что клиент должен быть повторно вызван и повторно заполнен // соответствующими аргументами каждый раз, когда вызывается его метод run (). СтатусыUpdateChoreo.begin (); // установка учетных данных учетной записи Temboo. StatusesUpdateChoreo.setAccountName (TEMBOO_ACCOUNT); СтатусыUpdateChoreo.setAppKeyName (TEMBOO_APP_KEY_NAME); СтатусыUpdateChoreo.setAppKey (TEMBOO_APP_KEY); // определяем хореографию библиотеки Temboo для запуска (Twitter> Tweets> StatusesUpdate) StatusesUpdateChoreo.setChoreo ("/ Library / Twitter / Tweets / StatusesUpdate"); // добавляем информацию об аккаунте Twitter StatusesUpdateChoreo.addInput ("AccessToken", TWITTER_ACCESS_TOKEN); СтатусыUpdateChoreo.addInput ("AccessTokenSecret", TWITTER_ACCESS_TOKEN_SECRET); СтатусыUpdateChoreo.addInput ("ConsumerKey", TWITTER_CONSUMER_KEY); СтатусыUpdateChoreo.addInput ("ConsumerSecret", TWITTER_CONSUMER_SECRET); // и твит, который мы хотим отправить StatusesUpdateChoreo.addInput ("StatusUpdate", tweetText); // приказываем процессу запустить и ждать результатов. // Код возврата (returnCode) сообщит нам, смог ли клиент Temboo // отправить наш запрос на серверы Temboo. Unsigned int returnCode = StatusesUpdateChoreo.run (); // нулевой код возврата (0) означает, что все сработало if (returnCode == 0) {Serial.println ("Успех! Твит отправлен!"); } else {// ненулевой код возврата означает, что произошла ошибка // прочтите и распечатайте сообщение об ошибке while (StatusesUpdateChoreo.available ()) {char c = StatusesUpdateChoreo.read (); Serial.print (c); }} StatusesUpdateChoreo.close (); // ничего не делаем в течение следующих 90 секунд Serial.println ("Ожидание…"); delay (90000);} void loop () {// получаем данные от A0. analogZero = analogRead (0); твит (); делать {} в то время как (1); // ничего не делать}--------------------------------------------- -------------------------------------------------- ---------------------------------------- Результатом является следующий пример твита, показанный в изображение выше. В предыдущем примере скетча вы можете создать свою собственную функциональность на основе функции tweet () для отправки данных при необходимости. Напомним, что данные для отправки в виде твита объединены в строку в строке 26. Обратите внимание, что вы не можете отправлять твиты, как машина, по двум причинам: во-первых, твиттер не любит быстрые автоматические твиты, а во-вторых, вы получаете только 1000 бесплатных звонков на свою учетную запись Temboo в месяц. Если вам нужно больше, необходимо обновить аккаунт за определенную плату. Заключение Итак, Yún дает нам еще один способ отправки данных через твиттер. Это был не самый дешевый способ, но довольно простой. И, таким образом, компромисс с платформой Arduino - простота против цены. Следите за новостями, чтобы увидеть больше уроков. А если вы хотите узнать больше об Arduino или познакомить кого-то с интересным миром Arduino - посмотрите мою книгу (уже в третьем издании!) «Arduino Workshop» от No Starch Press.

Рекомендуемые: