Как заставить бота реагировать на команду /start в Telegram

В связи с некоторыми особенностями работы Битрикс24, команда /start, отправляемая пользователем боту в чат, работает специфическим образом.

При подключении Телеграмм к открытой линии Битрикс24 предлагает настроить приветственное сообщение, которое будет отправлено в чат в ответ на команду /start.

Для настройки приветственного сообщения откройте коннектор Telegram и нажмите "Подключить" или "Изменить".


После этого откроется форма, где вы можете указать токен бота из Telegram и приветственное сообщение.


 Битрикс24 будет отправлять данное сообщение в чат в ответ на команду /start.


После того, как будет отправлено данное сообщение, диалог придет чат-боту.
А вот дальнейшее поведение бота вы можете задать в зависимости от ваших задач:
  • бот может запуститься сразу после этого сообщения
  • также бот может запуститься только после следующего сообщения от пользователя.
Это зависит от значения параметра "Запускать бота по команде start", указанного в настройках приложения. Если он включен, то бот запустится сразу после приветственного сообщения, а если выключен, то бот будет ждать сообщения от пользователя и только после этого запустит сценарий.

Обратите внимание, что указание приветственного сообщения - это недавнее обновление Битрикс24, поэтому приветственное сообщение в Telegram может быть доступно не на всех порталах Битрикс24. Скорее всего это будет работать на облачных порталах, но может отсутствовать у коробочных решений, так как обновления для коробочных решений, как правило, доступны позднее и далеко не всегда сразу устанавливаются администраторами портала.

Важно отметить, что на данный момент при повторной отправке команды /start в открытый диалог с ботом, Битрикс24 ничего не присылает боту, и чат-бот на данный момент НЕ будет запущен при повторной отправке команды /start в чат, если диалог еще открыт. При этом Битрикс24 также отправит приветственное сообщение в чат, но чат-бот об этом "не узнает".


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


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