Отправка уведомлений на телефон с помощью ESP8266

13 июля 2018

Прогресс не стоит на месте, умный дом прочно входит в привычную среду обитания человека. Согласитесь, было бы полезно получать данные с датчиков (температуры или движения) прямо на ваш смартфон, чтобы удаленно мониторить домашнюю обстановку. Запрограммируем для этих задач Wi-Fi модуль на базе ESP8266 через Arduino IDE и посмотрим, что из этого выйдет.

В одной из предыдущих статей в нашем блоге мы разбирали как управлять светодиодом, подключенным к NodeMCU при помощи Telegram бота. Теперь таким же способом попробуем осуществить отправку уведомлений на смартфон. Всего же в данной статье мы разберем два способа (через мессенджер и IFTTT) решения этой проблемы и оба будут совершенно бесплатными. Кстати купить модуль ESP8266 вы можете в нашем интернет-магазине >>> купить ESP8266

Способ 1: Настроим Telegram

Telegram можно скачать в любом магазине приложений под любую нужную вам ОС.Одно из его преимуществ - это создание ботов, которые являются программами, с которыми вы можете взаимодействовать в приложении чата.

Мы будем использовать универсальную библиотеку Teleduino Telegram, которая доступна менеджеру библиотек Arduino IDE, чтобы отправить сообщение в Telegram. Эта библиотека поддерживает платы ESP8266 и Wifi-101. (Telegram требует SSL, поэтому экраны Ethernet и старые экраны Wi-Fi не будут работать.)

Чтобы использовать библиотеку, первое, что вам нужно получить, это токен бота. Для этого вбейте во внутреннем поиске телеграма «botfather» и введите команду « / newbot ». Затем следуйте инструкциям на экране для обозначения бота. Botfather выдаст вам специальный бот-маркер, который вы будете использовать при работе с библиотекой.

Боты могут только сообщать вам какую либо информацию или сообщения. Если вы только начали разговор с ботом, то нажмите на ссылку в сообщении, отправленном "отцом ботов", и нажмите кнопку «Start» («Пуск»)

Бот будет знать, куда отправить сообщение, которое вам потребуется, чтобы добавить свой идентификатор чата в эскиз, это ваш уникальный идентификатор в Telegram. Самый простой способ получить это - найти бота под названием « myIdBot», нажать кнопку «Start» и отправить команду «/ getid».

Мои поздравления! Теперь вы можете использовать Telegram для уведомлений.

Способ 2: Настройка IFTTT

IFTTT (If This Then That) - это сервис, который позволяет выполнять действия на основе триггеров, например, отправлять твиты, если вы получаете электронное письмо с определенным заголовком.

К счастью для нас, поклонников ESP8266, довольно просто вызвать событие непосредственно из ESP8266. Мы будем использовать Arduino IFTTT Maker Library,которая также доступна в менеджере библиотеки Arduino. Он поддерживает те же платы, что и библиотека Telegram (ESP8266 и Wifi-101), а также требует SSL (поэтому нет экранов Ethernet).

Чтобы использовать эту библиотеку, первое, что нам нужно сделать, это создать так называемый «recipe»(«рецепт») на IFTTT.

«Эта» часть или триггер должны быть настроены как услуга «Maker» («Создатель»). Дайте триггеру имя (например, «button_pressed»). Вам понадобится это при использовании библиотеки.

Затем вам нужно настроить «ту» часть IFTTT. Можете использовать событие «Notification» («Уведомление», для которого требуется приложение IFTTT на вашем телефоне), но вы можете выбрать все, что захотите (электронная почта, твиттер, даже умную лампочку).

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

Наконец, вам нужно получить для библиотеки ключ Maker из вашей учетной записи. Нажмите на свою учетную запись вверху справа на веб-сайте IFTTT и нажмите «Services» «Услуги». Нажмите «Maker» (Создатель), а затем «Settings» («Настройки»). Ключ Maker - это символы в конце URL-адреса (в красном поле, как на фотографии ниже).


Любимое дело разработчика: тестирование

Теперь вы можете запустить пример с этой страницы github . Список схем и деталей находится в ReadMe.

В эскизе просто заполните:

  • Телеграмма
  • Идентификатор чата Telegram
  • Ключ разработчика IFTTT
  • Имя события IFTTT

Обе эти библиотеки требуют, чтобы библиотека ArduinoJson была установлена, поэтому убедитесь, что вы также захватили это из менеджера библиотеки.

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


Данная статья является собственностью Amperkot.ru. При перепечатке данного материала активная ссылка на первоисточник, не закрытая для индексации поисковыми системами, обязательна.


Поделиться: