Botmother
2.45K subscribers
211 photos
52 videos
240 links
🤖 Канал конструктора чат-ботов Botmother.ru — тут про новости, обновления, кейсы и интересные фишки.
💬 Присоединяйтесь к нашему чату @botmotherchat, чтобы общаться с единомышленниками и обмениваться идеями.
Download Telegram
💡 Как добавить web app в бота Telegram

Используйте Web app для того, чтобы клиент смог перейти на веб-страницу не покидая бота.

Web app можно добавить двумя способами:

1. Нативным запросом — Web app будет доступен по кнопке, которую пришлет бот в диалоге.
2. Через бота @BotFather — Web app появится слева от строки ввода.

Для использования Web app через Нативный запрос, выберите метод sendMessage, в Теле запроса пропишите URL страницы, которая откроется при нажатии на кнопку.

Также в Теле запроса указываются тексты на кнопке и перед кнопкой.

В компоненте Тело запроса будет выглядеть примерно так:

{
"platformId":"{{this_user.platform_id}}",
"chat_id":"{{this_user.platform_id}}",
"text":"Переход в веб-бота",
"reply_markup":{
"inline_keyboard":[
[
{
"text":"Перейти",
"web_app":{
"url": "https://docs.botmother.ru"
}
}
]
]
}
}

Для добавления Web app через BotFather сначала выберите нужного бота с помощью команды /mybots, затем последовательно нажимайте кнопки, которые присылает бот: Bot SettingsMenu ButtonConfigure menu button.

После этого отправьте в BotFather ссылку в таком формате: https://docs.botmother.ru/

В последнем сообщении отправьте название для кнопки с Web app.

Подробнее про Web app можно узнать в статье в базе знаний →

#ботхаки
5👍2🔥1
📌 Как делать перерывы между сообщениями

Используйте Таймаут для кратких перерывов между оповещениями.

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

Активируйте чек-бокс «Индикатор печати», чтобы бот имитировал набор текста во время паузы.

В помощью Таймаута можно делать перерыв между сообщениями до 5 минут.

Если вам нужна более долгая пауза, не стоит добавлять несколько Таймаутов подряд — в большинстве случаев это будет нарушать работу бота. Для перерыва дольше 5 минут воспользуйтесь Триггерным событием.

Подробнее про Таймаут можно узнать в статье в базе знаний →

#про_конструктор
👍7
📌 Как записывать числа в боте

Бот может ожидать ответа от пользователя в виде числа.

Например при заказе тура запрашивается количество мест для бронирования, количество дней тура. Для подбора кредита бот может уточнить у пользователя сумму займа, срок кредита и так далее.

Для записи чисел в боте используется Развилка и Ввод от пользователя с различными типами данных:

1. С типом данных Текст, бот будет пропускать всё, что напишет пользователь — числа, текстовые сообщения.

2. С типом данных Число, бот будет реагировать на любое число. Но если пользователь попробует отправить текст, то бот его не пропустит.

3. Если в Цели Развилки прописать в Значении определенное число, то бот будет пропускать только это число.

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

4. С типом данных Регулярное выражение можно пропускать диапазон чисел, например, от 1 до 10, от 10 до 1000, от 0,5 до бесконечности и так далее.

Регулярное выражение соответствующее нужному диапазону нужно добавить в настройках компонента.

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

#про_конструктор
👍5
📌 Как делать вычисления в боте

Записывайте числа в переменные и используйте их в математических операциях: складывайте, вычитайте, умножайте, делите.

Например, в боте для заказа воды пользователь указывает сколько бутылок ему нужно, после чего бот присылает общую стоимость заказа.

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

В Значении третьей переменной умножьте цену одной бутылки на их количество:

{{multiply переменная1 переменная2}}

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

Подробнее про Математику в боте можно узнать в статье в базе знаний →

#про_конструктор
👍2
💡 Как сделать бота отвечающего по-разному в зависимости от времени

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

Принцип работы такой:
Гость запускает бота в 13 часов и ему приходит информация о лекции проходящей в это время — с 12:00 до 15:00. При запуске в 16 часов, бот пришлет инфо о событии идущем с 15:00 до 19:00 и так далее.

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

С помощью Развилки переводите пользователя на тот экран, который соответствует текущему временному диапазону.

Подробнее про то, как настроить ответы бота в зависимости от времени можно узнать в статье в базе знаний →

#ботхаки
👍4
💡 Как проверить подписку на Telegram-канал

Сделайте бота доступным только для подписчиков вашего Телеграм-канала.

Для этого назначьте бота админом канала, подписку на который будете проверять.

В редакторе добавьте Нативный запрос с методом getChatMember

В настройки компонента добавьте шаблон Тела запроса:

{
"chat_id": "ID канала",
"user_id": "{{this_user.platform_id}}"
}

В этом шаблоне поменяйте ID канала на ID вашего канала или на его название в формате @botmothercom. Это название можно скопировать из настроек канала в Телеграм.

Затем добавьте Развилку с отдельными целями для разных пользователей — подписанных, не подписанных, удалённых из канала, админа и создателя канала.

В Значениях Целей пропишите возможные статусы пользователя относительно канала: member, creator, administrator, left, kicked.

Эти статусы Телеграм пришлёт в переменные после прохождения пользователем Нативного запроса.

Развилка берущая значение переменной из last_request.result.status разведет пользователей с разными статусами по экранам, указанным в переходе Цели.

Подробнее про проверку подписки в Telegram можно узнать в статье в базе знаний →

#ботхаки
👍3
📌 Как Преднастроенные компоненты ускоряют работу в редакторе ботов

Ускорьте работу над компонентами с одинаковыми или похожими настройками с помощью Преднастроенных компонентов.

Создавайте заготовки как обычные компоненты, только в разделе Преднастроенные компоненты.

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

Меняйте отдельные свойства с помощью кнопки Переопределить свойства. После выбора нужных свойств появится возможность их отредактировать.

Вернуться из компонента обратно в раздел Преднастроенные компоненты можно с помощью кнопки Настроить.

Подробнее про Преднастроенные компоненты можно узнать в статье в базе знаний →

#про_конструктор
👍3
📺 Сделали видео про удаление сообщений

В видео показываем как удалять сообщения с помощью Нативного запроса.

В одном видеоролике собрали способы для удаления четырех видов сообщений:

• последнего сообщения от бота,
• любого сообщения от бота,
• блока сообщений от бота,
• последнего сообщения от пользователя.

Посмотреть видео на YouTube →
Посмотреть видео на RuTube →
6
📌 Как самостоятельно разблокировать бота при зацикливании

Вы можете снова запустить бота, если причиной его остановки стало зацикливание.

Зацикливание происходит когда экран начинает постоянно ссылаться сам на себя или несколько экранов переводят друг на друга бесконечно воспроизводясь.

В этом случае на почту акканута приходит письмо где указан последний экран и компонент где случилось зацикливание.

Найдите в редакторе этот экран, исправьте ошибку и сохранитесь.

Подробнее про то, как избежать зацикливания можно узнать в статье в базе знаний →

#про_конструктор
1👍1
💡 Как отправить запрос в Кнопке

Отправляйте Запросы API прямо в кнопках.

Заполните тексты перед кнопкой и на кнопке. Затем нажмите на кнопку в компоненте, чтобы раскрыть ее настройки.

Отметьте чек-бокс Возможность отправлять запрос.

Для обращения к Telegram API для отправки текста заполните URL запроса по шаблону:

https://api.telegram.org/botTOKEN/sendMessage

Слово TOKEN поменяйте на токен вашего бота — его можно узнать в BotFather с помощью команды /token

Выберите метод запроса POST и добавьте Тело запроса:

{
"chat_id": "{{this_user.platform_id}}",
"text": "Привет из бота!"
}


Текст сообщения вы можете изменить в теле запроса.

Подробнее про Кнопки можно узнать в статье в базе знаний →

#ботхаки
👍3
Прилегли, разбираемся.
👍5
Поднялись
👏8