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

Cоздать сценарий бота в два клика — это вполне реально. Достаточно выбрать готовый шаблон, который подходит под вашу задачу. 

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

Визитная карточка — бот с простыми кнопками и развилками.

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

Квиз — бот с вопросами и начислением баллов за правильные ответы.

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

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

Автоворонка — бот с формой оплаты, он будет напоминать пользователям про возможность оплатить курс со скидкой.

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

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

Интеграция с ChatGPT и Интеграция с DALL-E — боты будут присылать текст или картинки, сгенерированные искусственным интеллектом. Вам нужно будет только вставить свой токен из личного кабинета OpenAI.

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

#ботхаки
👍4
💡 Как обратиться к пользователю по имени

Бот может обращаться к человеку по имени. Для этого нужно спросить его имя, записать ответ в переменную (например, UsName) с помощью компонента «Ввод от пользователя» или «Развилка», а затем вывести эту переменную в сообщении в фигурных скобках:
Привет, {{UsName}}!

Но можно поступить проще 🙂

Мессенджеры передают переменные по умолчанию, и в этих переменных, среди прочего, есть имя, которое человек указал при регистрации. Например, в Telegram полное имя пользователя находится в переменной this_user.full_name. Это значит, что обратиться по имени можно сразу в первом сообщении, ничего дополнительно не спрашивая:
Привет, {{this_user.full_name}}!

#ботхаки
👍13
🤖 Бот для киберфестиваля

В конце мая в Парке Горького прошел киберфестиваль Позитив Хак Дейс.

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

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

📌 Почитать и поставить лайк можно тут: https://vc.ru/life/887369-bitva-hakerov-v-centre-moskvy
👍5🔥2👏1
Испытываем трудности. Работаем над восстановлением стабильной работы.
👍3👏2
Все починили. Извините.
🗓 График работы поддержки на новогодних праздниках

31 декабря, 1, 6 и 7 января — выходные дни.

2, 3, 4, 5 и 8 января — поддержка работает с 10:00 до 19:00 по Москве.
👌1
🤖 Нейросеть YandexGPT в боте

Добавили возможность общаться с нейросетью Яндекса прямо в боте. Для этого сделали новый компонент — Запрос к YandexGPT.

Для того, чтобы сообщения от нейросети приходили в бота, нужно в настройках компонента заполнить API-ключ и Идентификатор каталога. Получить их можно в сервисах Яндекса. Остальные параметры заполняются также, как в компонентах для других нейросетей: нужно выбрать роли, заполнить поле Content, задать переменную для ответа нейросети и вывести её в текст.

В примере на скриншоте мы попросили YandexGPT рассказать стих.

Подробную настройку компонента Запрос к YandexGPT описали в нашей новой статье.
🔥7👍2
💡 Как установить лимит на длину сообщений от пользователей боту

Делимся способом для продвинутых пользователей Ботмамы.

По умолчанию Телеграм пропускает до 4096 символов. Увеличить это число нельзя, но можно уменьшить.

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

Сравнить можно с помощью хелпера gt — «больше, чем».

Придумайте новое имя переменной, в её значении должна быть такая конструкция:
{{#gt message.length 10}}Нет{{else}}Да{{/gt}}, где message — переменная с проверяемым текстом, а 10 — это лимит на количество пропускаемых символов. Лимит и название переменной можно поменять на свои.

Затем проверьте эту переменную в Развилке. В Развилке может быть одна цель со значением «Да», и эта цель будет переводить на экран тех пользователей, которые не превысили лимит на количество символов. Они смогут идти дальше по боту. 

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

#ботхаки
👍3🔥3
💡Как вызывать определенный сценарий бота по ключевому слову

Это можно сделать с помощью Шаблона — События, которое присылает текст или экран в ответ на определенное слово или ряд слов.

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

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

Шаблон можно использовать во многих случаях, все зависит от функционала бота и вашей фантазии.

Создать Шаблон очень просто — делается это в Настройках, в разделе События. Добавляем Событие, указываем его тип — Шаблон, в свойствах выбираем Текст для срабатывания Шаблона по одному слову или Регулярное выражение, чтобы Шаблон реагировал на несколько слов. В конце выбираем, что пришлет бот при активации события — экран или текст.

Шаблон готов. Подробнее о его настройке можно узнать в статье в базе знаний.

#ботхаки
👍9🔥42🥰1
💡 Как узнать, кто из пользователей заблокировал бота

Это можно сделать в разделе Пользователи.

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

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

Такого пользователя можно удалить. Разблокировать бота он сможет только самостоятельно перезапустив бота.

Про эти и другие опции раздела Пользователи можно узнать в базе знаний.

#ботхаки
🔥3👍2👏1
💡 Как поделиться доступом в конструктор

Приглашения к просмотру и редактированию бота отправляются из раздела «Настройки» владельцем бота.

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

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

Укажите email аккаунта в Ботмаме и отправьте приглашение. После отправки у приглашенного пользователя на аккаунте появится бот, в которого его пригласили, также ему на почту придет уведомление о приглашении.

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

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

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

#ботхаки
👍8
💡 Как прятать под спойлер изображения и видео

Картинки и видео можно присылать в бот под спойлером, чтобы пользователь самостоятельно смог их открыть после получения. Для этого в компонентах Изображение, Галерея и Видео есть настройка «Спрятать под спойлер».

Для отправки нескольких изображений сразу подойдет компонент Нативный запрос и метод Telegram Bot API SendMediaGroup.

Добавьте в Тело запроса параметр "has_spoiler": true для изображения, которое нужно скрыть. В итоге, Тело запроса, где все изображения скрыты спойлером, будет таким:

{
"chat_id": "{{this_user.platform_id}}",
"media": [
{
"type": "photo",
"media": "https://t.me/test_test987/20",
"has_spoiler": true
},
{
"type": "photo",
"media": "https://t.me/test_test987/22",
"has_spoiler": true
},
{
"type": "photo",
"media": "https://t.me/test_test987/23",
"has_spoiler": true
}
]
}

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

#ботхаки
👍8
📺 Сделали видео, где простыми словами рассказываем про Триггерное событие.

Видео поможет разобраться в принципах работы и основных моментах настройки.

Посмотреть видео →
🔥41👍1
💡 Как банить и разбанивать участников группы Телеграм через бота

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

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

Перейдите в редактор бота и добавьте на экран компонент Нативный запрос. Для бана пользователя выберите метод banChatMember.

В настройки компонента скопируйте это Тело запроса:

{
"chat_id": "-1002123456789",
"user_id": "{{this_user.platform_id}}",
"revoke_messages": true
}


В поле chat_id находится ID группы. Поменяйте ID группы из примера -1002123456789 на ID нужной группы, которое вы ранее скопировали из раздела Пользователи. Сохраните изменения.

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

Для разбана в Нативном запросе выберите метод unbanChatMember и добавьте такое Тело запроса поменяв ID из примера на ID вашей группы:

{
"chat_id": "-1002123456789",
"user_id": "{{this_user.platform_id}}",
"only_if_banned": true
}


Сохраните изменения.

Теперь забаненному пользователю, попавшему на экран для разбана, снова откроется доступ в группу.

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

#ботхаки
🔥41
💡 Как создать в боте обратный отсчет до определенной даты

Делимся способом для продвинутых пользователей Ботмамы.

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

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

1. Получите сегодняшнюю дату в миллисекундах используя хелпер {{now}}

2. Запишите число до которого будет идти отсчет в переменные, затем переведите его в миллисекунды хелпером
{{formatDate futureDate 'x'}}

3. Создайте сообщение с таким шаблоном:

{{#vars}}
{{var "ms" (subtract futureDate today) ~}}
{{var "sec" (divide @vars.ms 1000) ~}}
{{var "min" (divide @vars.sec 60) ~}}
{{var "h" (divide @vars.min 60) ~}}
{{var "d" (divide @vars.h 24) ~}}
{{var "diff" (floor @vars.d) ~}}
До конца акции осталось:
{{@vars.diff}} дней
{{/vars}}


Готово.

Оставшиеся дни считаются не включительно. Например, если отсчитывать дни с 31 января до 9 февраля, то бот сообщит, что осталось 8 дней, не учитывая первый и последний день диапазона.

По умолчанию даты в бот принимаются в формате MM-DD-YYYY, поэтому бот определит 02.09.2024 как 9 февраля.

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

Общая информация о работе со временем и датами в боте находится здесь →

#ботхаки
👍9🔥74
📺 Сделали видео про настройку События Шаблон.

В видео пошагово создаем Шаблоны с разными параметрами и объясняем ключевые моменты каждого этапа настройки.

Посмотреть видео →
👍4
💡 Как поделиться с ботом своим местоположением

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

Единоразово отправить свое местоположение боту можно с помощью Кнопок с подсказками, Развилки или Ввода от пользователя. После отправки геолокации у пользователя появятся переменные для широты lastUpdate.parsed.location.lat и долготы lastUpdate.parsed.location.long

Для того чтобы координаты приходили в бот с периодичностью два раза в минуту, настройте событие Трансляция геопозиции. Выберите тип события — Трансляция геопозиции (Telegram), придумайте имя переменной, куда будут записываться координаты и выберите экран, который будет срабатывать каждый раз, когда в бот будет приходить геопозиция.

Чтобы оператору бота было известно местоположение пользователя в режиме реального времени, добавьте на экран выбранный в событии Алерт. В его тексте будут выводиться текущие координаты пользователя:

{{lastUpdate.parsed.location.lat}} и
{{lastUpdate.parsed.location.long}}


Событие сработает, как только подписчик бота начнет транслировать свою геопозицию со смартфона. Ее включение находится рядом с полем для сообщений под значком скрепки. Пользователь должен включить геопозицию и выбрать пункт Транслировать мою геопозицию. После этого нужно выбрать время в течении которого местоположение будет передаваться в бота. Выбранное время трансляции в запишется в переменную livePeriod в секундах.

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

Подробнее про событие Трансляция геопозиции (Telegram) можно узнать в статье в базе знаний.

#ботхаки
👍3👏32🔥2