Уведомления от Domoticz в Telegram

Один из вариантов получения уведомлений от Domoticz в Telegram.

Для начала нам нужно создать бота:

Находим в Telegram бота @BotFather и пишем ему:

/newbot

Нам предлагают выбрать имя (любое) и username (уникальный), который в конце обязательно должен содержать bot и получаем токен:

Теперь необходимо отправить любое сообщение нашему боту, чтобы начать с ним работать.

Далее, переходим по ссылке вида:

https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getMe

где 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 это токен нашего бота

В ответ получите:

{"ok":true,"result":{"id":012345678,"is_bot":true,"first_name":"Domoticz","username":"myDomoticzBot"}}

Теперь отправим сообщение от имени нашего бота через https:

https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessage?chat_id=876543210&text=Тестовое+Сообщение

где 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 это токен нашего бота,
а 876543210 это id вашего чата.

Узнать свой id можно через бота @IDBot:
добавляем его и пишем /getid

в ответ придет ваш id

Если получилось, то в Domoticz заходим в Настройки на вкладку Уведомления
Активируем «Пользовательский HTTP/Действие», в поле #TO вводим id чата, а в URL/Действие вводим:

https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessage?chat_id=#TO&text=#MESSAGE

где 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 это токен нашего бота. Остальные значения не меняем.
Сохраняем настройки, переходим в раздел «Переключатели» и выбираем пункт Уведомления у любого устройства.

Активируем уведомления при включении/выключении устройства, выбрав систему http
Теперь уведомления будут приходить в телеграм в чат, id которого мы указали

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

Для этого нужно создать канал и добавить в администраторы нашего бота (у меня получилось только через десктопную версию под windows), а в настройках Domoticz, во вкладке Уведомления заменить id чата в поле #TO на имя канала, например: @myDomoticzСhannel (если он у вас публичный) или -1001321098765 (по id, если частный)

Узнать id канала можно разными способами, я сделал вот так:

1 способ (не уверен насчет работоспособности):

1. Делаем канал публичным, создаем ему имя, например @myDomoticzСhannel.
2. В браузере выполняем: https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessage?chat_id=@myDomoticzСhannel&text=Тестовое+Сообщение
3. Получаем ответ, в нем ищем «chat»:{«id»:-1001321098765, вот 1001321098765 и есть наш id канала (вместе с тире!).
4. Делаем канал обратно частным.

 

2 способ, более простой и рабочий:

1. Делаем канал публичным, создаем ему имя, например @myDomoticzСhannel.
2. В браузере выполняем: https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/getChat?chat_id=@myDomoticzСhannel
3. Получаем ответ, в нем ищем «chat»:{«id»:-1001321098765, вот -1001321098765 и есть наш id канала (чата) (вместе с тире!).
4. Делаем канал обратно частным.

Источник вдохновения:
https://www.domoticz.com/wiki/Telegram_Bot

Поделитесь с друзьями
Подписаться
Уведомить о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

1 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Алексей
Алексей
4 лет назад

«chat_id=@myDomoticzСhannel» — у меня так не работало, писал нет такого канала. Помогло вместо имени канала подставить ссылку на него, без t.me/