В статье выше мы научились подключать telegram-бота к платформе, в этом разделе опишем принципы взаимодействия и некоторые паттерны проектирования, которые позволят лучше понять механизмы и возможности разработки.
Бот существует для того, чтобы получить информацию от пользователя, обработать её на основании внутренней логики (провести по сценарию) и дать максимально корректный ответ.
Основной идеей при реализации такой логики является фиксация контекста (этапа/шага) диалога с пользователем.
С точки зрения разработки, контекст это всего лишь поле-флаг на объекте чата. Сценарии ориентируются на это поле и понимают, обрабатывать сообщение или нет. Таким образом выстраивается "дерево" диалога.
Все входящие сообщения о пользователя сохраняются в системной структуре TMessageIn. Отправить сообщение пользователю можно с помощью кубика отправки сообщения, либо с помощью JS SDK функции $D.sendToTelegram. Обработка данных, сохранение контекста и т.д. происходит в сценариях. Подробнее в следующих статьях.