Smart home Russia
675 subscribers

Продолжаем общаться с умным домом. Быстрые ответы бота в Telegram

<100 full reads

Когда во время общения с ботами в телеге под сообщением появляются быстрые ответы, то это называется Inline keyboard в Telegram. Такой способ общения очень удобен, напоминает обычную навигацию по меню. Сделаем такую же нашему боту в этой статье.

This article in English here. Также новостной канал в telegram

Для начала я попрошу Вас освежить в памяти информацию из статьи "Уведомления в telegram из умного дома" и "Telegram: разговариваем с умным домом". Без первой вообще ничего не заработает, а автоматизацию из второй статьи мы будем править.

Начнем мы с того, что в автоматизации "пинг-понг" изменим всего одно слово telegram_command. А изменим мы его на telegram_callback и вот почему, когда мы отвечаем на сообщение, то это будет не тоже самое, что и просто пустое сообщение в чате боту. После нажатия на кнопку в нашем меню старая автоматизация просто не видела ответ, хотя содержание сообщения было один в один.

Продолжаем общаться с умным домом. Быстрые ответы бота в Telegram

И как результат - телеграмм больше не реагирует на команду /ping

Продолжаем общаться с умным домом. Быстрые ответы бота в Telegram

Но для нас это не большая потеря. Создадим новую автоматизацию, как эта, но реагировать мы будем на /start, а отвечать не только текстом, но и Inline keyboard. Ниже скрины, которые мы и обсудим:

1. Поле названия не имеет смысл обсуждать. 2. Поле событие, как и в прошлый раз, только команду поменяли на /start. 3. Действие тоже без изменений, только текст поменяли. 4. И вот оно то самое новшество, мы ставим галку на Inline keyboard и пишем следующее Status:/status, Ping:/ping, News:/news, Rooms:/rooms, Start:/start

Слово до ":" это то, что будет отображаться на кнопке, что стоит после — это команда, которая будет отправлена в обратном ответе. Сохраняем, отправляем /start боту и получаем в ответ наш текст и быстрые ответы снизу.

Продолжаем общаться с умным домом. Быстрые ответы бота в Telegram

Нажимая на кнопки по очереди, сможем легко убедится, что единственная команда, на которую реагирует бот — это команда ping, но выполненная с кнопки и никак иначе

Продолжаем общаться с умным домом. Быстрые ответы бота в Telegram

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

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

Также публикации можно найти на других площадках: Instagram, telegram (RU, EN, DE), Medium, LiveJournal, YouTube.

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