Создание Telegram бота
Для работы с Telegram ботом в enKod перейдите в раздел Рассылки → Telegram боты.
Убедитесь, что бот предварительно создан в @botfather. Для нужного бота скопируйте token (подробнее об интеграции с Telegram читайте в этой статье), он потребуется для активации бота в enKod.
Задайте название (оно будет отображаться только в интерфейсе enKod) и перейдите в редактор бота. Для настройки доступно два блока: старт и сообщение.
Цепочка любого бота должна начинаться с начального блока. На данный момент из способов старта доступен только запуск по команде /start, но в будущем этот список будет расширяться.
Расположите блок “Сообщение” и соедините с ним начальный блок, протянув связь. В блоке “Сообщение” можно задать текст и настроить кнопки. Кнопки могут быть одного из трёх видов:
- кнопка-текст (клик по такой кнопке будет вызывать отправку какого-то из последующих сообщений)
- кнопка-ссылка (при клике по такой кнопке у пользователя откроется встроенный в приложении Telegram браузер и ссылка, прописанная в настройках этой кнопки)
- возврат в начало (всегда отображается в самом конце и может быть только одна на блок, клик по этой кнопке вернет пользователя на первое сообщение после запуска бота)
Всего вы можете добавить до 10 кнопок в 1 блок “Сообщение”, кнопки разного типа можно использовать параллельно друг с другом, ограничено только количество кнопок “возврат в начало”.
Каждую кнопку в блоке можно и нужно соединять с последующими блоками “Сообщение” (со своими кнопками). Кнопка-текст обязательно должна быть соединена со следующим блоком (даже если в нем будет просто какое-то сообщение, например, “спасибо”), иначе диалог бота с пользователем будет не закончен, т.к. не последует его реакции на клик. Кнопку-ссылку допустимо ни с чем не соединять, т.к. переход уже сам по себе может быть необходимым действием. Кнопка “возврат в начало” не требует соединения, т.к. выполняет всегда одно определенное действие.
Таким образом, сочетая внутри бота блоки сообщения с разными кнопками вы можете создать бесконечное число различных сценариев, зависящих от действия пользователя - переводить его на сайт, отправлять определенные уведомления по клику и т.д.
При активации бота, если все проверки будут пройдены успешно, система запросит у вас токен бота, который был получен из @botfather. Вставьте токен во всплывающее окно и запустите бота.
Работа с контактами
При запуске бота мы получим и сохраним в контактную базу юзернейм пользователя.Такие контакты, даже если не обладают никакими другими каналами, считаются полноценными и участвуют в тарификации базы. Юзернеймы контактов доступны для просмотра и редактирования в карточке контакта.
При изменении контактом своего юзернейма в Телеграм - в enKod его юзернейм тоже изменится. Это будет происходить при следующей отправке контакту сообщения ботом или при следующем взаимодействии контакта с ботом (т.е. не мгновенно).
Удаленные контакты при взаимодействии с ботом не будут восстановлены во избежание случайного превышение лимита объема базы.
Обратите внимание, что бот не может писать первым, даже если в базе есть контакт с заполненным юзернеймом! Запуск бота возможен только самим пользователем.
Особенности работы чат-бота
- В Telegram боте пользователь может повторно нажимать на кнопки сколько угодно раз в любом из полученных сообщений, таким образом пользователь будет переходить на соответствующую кнопке ветку сценария
- Система запретит вам создание ботов, в которых какая-то часть сценария зациклена и эта цикличность не зависит от кликов пользователя (вы получите соответствующее уведомление)
- Остановка бота (в интерфейсе enKod) означает, что бот перестанет работать по сценарию (отправлять сообщения, реагировать на клики в отправленных сообщениях, а при подписке на бота ничего не будет происходить), в Телеграме кнопки в боте для подписчиков станут неактивными
- при активации бота после остановки в сценарии все подписчики начнут дальше продвигаться по веткам с места остановки, кнопки в боте станут кликабельны (если они не были удалены/отредактированы)
- Чат-бот может автоматически изменить свой статус на “Неактивный”, если будет отозвано разрешение для токена в Telegram (проверка происходит раз в час)
Детали чат-бота и статистика
В деталях бота доступна к просмотру статистика, а именно:
- Всего запустили бота: N
- количество уникальных пользователей в Telegram, хотя бы раз запустивших бота по /start за все время его существования
- Взаимодействовали с ботом за текущий месяц: N
- количество взаимодействий с ботом (запуск, клик по кнопке в сообщении) за текущий месяц (с первого числа по текущее число) уникальными пользователями
Кроме указанных метрик вы можете просмотреть статистику по самим блокам в табе “Предпросмотр”:
- Блок Старт
- N отправлено - количество запусков этого бота
- Блок Сообщение (без кнопок)
- N отправлено - количество отправок сообщения
- Блок Сообщение (с кнопками)
- N отправлено - количество отправок сообщения
- N кликов - количество кликов по всем кнопкам в сообщении
- Для каждой кнопки количество кликов по ней
Особенности редактирования чат-бота
Активного бота можно редактировать (название, контент блоков (кнопки, тексты), их порядок, добавлять новые блоки, удалять блоки), но запрещено менять токен в окне авторизации. При редактировании активного бота он продолжает работать по сценарию. Изменение токена бота доступно только для неактивного статуса.
Если после редактирования:
1. Удалили блок сообщения
Если пользователь уже получал этот блок, то он у него не удалится. Если удалили вместе с последующими блоками - пользователи завершают эту ветку сценария. Если связи между последующими блоками не нарушены, пользователь пойдет дальше по отредактированному сценарию.
2. Удалили блок сообщения с кнопками
Кнопки в полученном сообщении удаленного блока станут некликабельны. Если пользователь уже нажимал на кнопки удаленного блока и прошел дальше по ветке, при этом блоки существуют, связи не нарушены, пользователь пойдет дальше по отредактированной ветке. В противном случае пользователь завершит ветку сценария бота.
3. Отредактировали текст и/или ссылки кнопок в блоке сообщения
В уже полученных сообщениях со старым текстом кнопки будут некликабельны. В остальном изменений нет.
4. Поменяли связь с блоками по кнопкам.
В уже полученном сообщении у пользователя кнопки станут некликабельны. В остальном пользователь пойдет дальше по отредактированному сценарию. Если ветка пропала - пользователь завершит сценарий.
5. Добавили в сообщение кнопку
В уже полученных сообщениях кнопка не добавится. Кнопки, которые не были изменены, будут кликабельны. В остальном пользователь пойдет дальше по отредактированному сценарию.
6. Удалили из сообщения одну из кнопок
В уже полученных сообщениях удаленная кнопка станет некликабельной. В остальном пользователь пойдет дальше по отредактированному сценарию.
Отображение статистики при редактировании бота
- Если сообщение изначально было с кнопками, а после кнопки удалили, то статистика по общим кликам (под блоком) не меняется.
- Когда кнопка редактируется - статистика в отредактированной кнопке по кликам не сбрасывается. Если кнопка удаляется - статистика удаленной кнопки удаляется вместе с ней, но статистика по кликам под блоком никак не меняется.
- При удалении стартового блока статистика под ним удаляется. Общая статистика запусков бота в табе «Общая информация» не меняется.
- Статистика в табе «Общая информация» никогда не уменьшается, даже если в самом боте удаляют блоки/меняют кнопки.