Работа с Telegram

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

Логика взаимодействия с ботом

Бот существует для того, чтобы получить информацию от пользователя, обработать её на основании внутренней логики (провести по сценарию) и дать максимально корректный ответ.

Основной идеей при реализации такой логики является фиксация контекста (этапа/шага) диалога с пользователем.

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

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

Все входящие сообщения о пользователя сохраняются в системной структуре TMessageIn. Отправить сообщение пользователю можно с помощью кубика отправки сообщения, либо с помощью JS SDK функции $D.sendToTelegram. Обработка данных, сохранение контекста и т.д. происходит в сценариях. Подробнее в следующих статьях.