Умный дом: сообщение в Twitter с помощью IFTTT

Продолжаем серию уроков по созданию своими руками умного дома. В этой статье познакомимся с одним из самых интересных сайтов, которые смогут облегчить жизнь начинающему iot разработчику.

IFTTT – If That Than This. Сайт, который по определенному событию, может что-то сделать. Отправить сообщение на Email, в соцсеть, сохранить определенный файл или сделать пост вам на странице и это очень малая часть всех способностей данных "костылей" . Остановимся на соцсетях, мы можем отправлять сообщения, делать посты и т.д. в Twitter или Facebook, но в данной статье рассмотрим соцсеть Twitter. Разобраться самостоятельно насчет Email или Facebook можно будет самостоятельно после нашего опыта.

Мы попробуем передать значение света нашей комнаты в Twitter, чтобы можно было получать данные находясь на другом конце света, не выходя из любимого приложения.

Сайт ifttt.com

Итак, для начала рассмотрим сам сайт ifttt.com, в начале вам нужно будет создать свой аккаунт.

Заходим на ifttt.com. И нажимаем на кнопку "My Applets"

Нажимаем кнопку "New Applet"

Нажимаем кнопку "+this"

Ищем в поисковике "Webhooks"

Выбираем действие "Receive a web request"

В "Event Name" пишем название "Message" (это слово будет в нашем коде) и создаем триггер.

Теперь мы создали условие. Компонент Webhooks принимает http запросы от Ардуино и после принятие передает информацию другому компоненту ifttt. Этот другой компонент может быть любым, в зависимости от возможностей ресурса ifttt. В нашемы случае это будет Twitter.

Нажимаем на "+that". В поисковой системе ищем Twitter и выбираем его.

Выбираем функцию "sent a direct message to yourself"

В сообщении пишем "Свет в (любой вашем месте, где вы поставите прибор) =". А дальше нажимаем на кнопку "Add ingredient", в ней мы можем добавить в сообщение данные, которые пришли с webhooks, а значит нашу температуру. Нажимаем на "value 1" и создаем наш "костыль"

В webhooks есть специальный ключ, специальный адресс, на который вы отправляете данные. Нужно зайти во вкладку "Webhooks"

Жмем на кнопку "Documentation"

И копируем ключ, его надо будет вставить в основной код.

Если вы закончили с сайтом, то пара преступить к созданию устройства.

Комплектующие

Для нашего проекта нам понадобятся:

  • Arduino Uno
  • Тактовая кнопка
  • Фоторезистор
  • ESP 8266
  • Два резистора на 1кОм

Я буду работать с уже готовыми модулями. Тройка-слот-шилд, тройка-кнопка, тройка-фоторезистор и более удобный esp8266 модуль.

Схема соединения

Соединяем все вместе. Если вы не знаете, как подключить те или иные модули, то посмотрите прошлые статьи.

Код для проекта

Напишем код, по которому при нажатии кнопки, отправляется запрос на сайт ifttt, который с нашими данными напишет нам сообщение в Twitter, с нашими показателями на датчике. Все действия будут информироваться в Serial соединении. В случае, если модуль не подключился к wi-fi или не удалось образовать TCP - соединение, то вас проинформируют в Serial - порту.

Ссылка на библиотеку и сам код ниже.

Финальный результат

И теперь, если вы все сделали правильно, при подключении питания и нажатия на кнопку, на ваш аккаунт в Twitter должно прийти сообщение, которое проинформирует вас о световой характеристике вашей комнаты.

Если у вас получилось, то попробуйте поменять фоторезистор на термистор или добавить больше переменных, характеризующих вашу комнату, с помощью добавочных данных value 2 и value 3. Или изменить соцсеть на другую, убрать кнопку и организовать отправку информации каждые 3 часа, с помощью модуля часов реального времени. В общем лишь дополнительная практика закрепит ваш успех.

В следующий раз поговорим о создании бота в Telegram. Попробуем управлять нашим домом через команды, отправленные нашему боту. Удачи вам и становитесь умнее вместе с вашим домом!

Автор - Артем Лужецкий

Смотрите больше интересного ↓