Статья

Настраиваем уведомление в телеграм через Homebridge

1. Настроим Homebridge

Доброго времени суток, уважаемые читатели. Пропустим цикл статей про установку и настройку Homebridge на Raspberry, и сразу перейдем к нашему делу. Подключаемся по SSH к "малине" и устанавливаем плагин:

sudo npm install -g homebridge-telegram

Аналогичную операцию так же можно сделать через WebUI - плагины - Homebridge telegram - установить

Теперь нам нужен бот, который и будет отправлять нам уведомления. Для этого в Telegram пишем @BotFather:

 /newbot - создадим бота

На первом вопросе дадим имя нашему боту (абсолютно любое, всегда можно изменить)

На втором вопросе нужно придумать логин (писать без @), уникальное имя, оканчиваться должно на "bot" (к примеру - @myhomebestbot)

После этого получим токен бота, ниже пример:

>Done! Congratulations on your new bot. You will find it at t.me/dafanghallbot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you've finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.


Use this token to access the HTTP API:

743280324:AAFzR0_q3CYcah1Pc_E1S_S5qqrd8sy9jJc


For a description of the Bot API, see this page: https://core.telegram.org/bots/api

743280324:AAFzR0_q3CYcah1Pc_E1S_S5qqrd8sy9jJc - это и есть наш токен.

Возвращаемся к конфигурации Homebridge. 

Это моя конфигурация, у вашей будет другой токен (не забудьте заменить на тот что получили ранее), и ваш текст для команд:

{ "platform": "Telegram", "bots": [ { "name": "Home TG", "token": "714638720:AAGoJeNswoxZUgK79X45oHEIkbeDWB-iO71", "chat": "-1001321255153", "error": "Something broken. I'm shutting down.", "notifications": { "Влажность Ficus минус": { "mode": "Markdown", "randomize": true, "messages": [ "Ficus elastica сообщает, что нуждается в поливке", "Ficus elastica просит подлить", "Ficus elastica засыхает" ] }, "Влажность Clivia минус": { "mode": "Markdown", "randomize": true, "messages": [ "Clivia miniata сообщает, что нуждается в поливке", "Clivia miniata просит подлить", "Clivia miniata засыхает" ] }, "Влажность плюс": { "mode": "Markdown", "randomize": true, "messages": [ "? Ficus elastica спасибо за полив!", "? Ficus elastica Этого хватит на 2 недели!", "? Ficus elastica спасибо!" ] }, "Вода тема минус": { "mode": "Markdown", "randomize": true, "messages": [ "⚙️ В увлажнителе в детской заканчивается вода ? " ] }, "Вода спальня минус": { "mode": "Markdown", "randomize": true, "messages": [ "В увлажнителе в спальне заканчивается вода" ] }, "Свободу котам": { "mode": "Markdown", "randomize": true, "messages": [ "Открой дверь котам" ] } } } ] }

Теперь разберем нужные нам пункты.

name - имя устройства в HomeKit

token - мы получили ранее

chat - ID чата, в который бот будет присылать уведомления. Что бы получить ID чата, добавьте в свой созданный чат @GiveChatID_Bot и напишите в чате /chatid. Не забудьте - (минус) перед ID, это важно для любого чата

randomize - если установлено true, будет присылать случайное сообщение из раздела (не из всех)

Влажность Ficus минус - Название опции для HomeKit, которую мы будем выбирать для наших уведомлений. Может быть несколько, а в общем то, сколько вам необходимо

"Ficus elastica сообщает, что нуждается в поливке" - собственно, сообщение, которое нам будет присылать бот. Можно использовать эмодзи. Так же можно изменять текст сообщений в любое время, не перезапуская Homebridge. Можно оставить одно сообщение.

Теперь сохраняем конфигурацию, и перезапускаем Homebridge:

sudo systemctl restart homebridge

После перезапуска, как обычно в "Комната по умолчанию", увидим наше устройство (name - имя устройства в HomeKit), которое пока не поддерживается программой Дом, но отлично работает в Elgato Eve.

2. Создадим правила

Далее создадим сценарий, который будет выполняться при наших условиях:

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

Собственно, а как использовать то? - спросите вы. Сейчас разберемся:

Создадим правило (автоматизация) в Elgato Eve. Настраивать будем на моем примере, а ваша задача, попробовать настроить свой. Моя автоматизация отправляет уведомление если в ванной комнате никого нет, а дверь закрыта. В ванной у кошек туалет.

Выберем триггер:

Ванна дверь = закрыто

Поставим условия, исключающие эту автоматизацию, если в ванной кто-то есть:

Только если Свет в ванной = выкл

Только если Движение в ванной = нет

Собственно при таких условиях находится в ванной проблематично, поэтому будем считать что этого достаточно. В моем примере вместо Свет в ванной = выкл выбран уровень освещенности:

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

На этом настройка окончена. В следующей статье мы научим работать Telegram для малины в Российских реалиях на примере роутера Zyxel.


Спасибо, но вторая будет интересней, так как наши реалии - это пока 😥 интересно обойти из.

Поздравляю с дебютом ;)

хм... почему-то не получается получить chat id описаным способом

Попробовал. На каждое действие нужно делать сценарий, наплодить сценариев не очень привлекательно как по мне. Было бы прикольно получать уведомления по датчикам, но по каждому датчику делать сценарий придется

В идеале получать PUSH прямо в ДОМ или EVE

Привет. 

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

для проверки вот код: в home bridge

{

            "platform": "Telegram",

            "bots": [

                {

                    "name": "имя",

                    "token": "токен",

                    "chat": "- chatid",

                    "error": "Something broken. I'm shutting down.",

                    "notifications": {

                        "FED THE CAT": {

                            "mode": "HTML",

                            "randomize": false,

                            "messages": [

                                "FED THE CAT!"

                            ]

                        },

                        "AUTO GATE OPEN": {

                            "mode": "HTML",

                            "randomize": false,

                            "messages": [

                                "AUTO GATE OPEN"

                            ]

                        }

                    }

                }

            ]

        }

думаю на телеграм. Кто может живую инструкцию про телегу скинуть? 


Вернуться назад

Устройства


Raspberry Pi

Raspberry Pi 4

(16 отзывов)

Raspberry Pi

Raspberry Pi 3 Model B+

(22 отзыва)

Вернуться назад