Перейти к основному содержимому

Общая схема работы Telegram-бота

общая схема

Пример сценария: Сценарий: Вывод списка документов со статусом «ожидается», с возможностью выбора нужного документа.

  1. Сообщение пользователя – «Ожидается», было отправлено нажатием кнопки Ожидается.

Сообщение пользователя

  1. В команде «Список транспорта» выполнилось условие. Поэтому начнет выполняться действие «Список транспорт».

Команды телеграмм

Команды, условия ИЛИ

  1. Полный код действия «Список транспорт» в Приложении №1

Здесь описаны некоторые блоки:

Бот = НакопленныеДанные.НастройкиБота.Ссылка; 

Ссылка на бота

  • Из сообщения полученного ботом берем ссылку на бота.
    УстановитьПараметрДействия(Бот, НакопленныеДанные.ИндентификаторЧата,
ПараметрДействия("Статус"), НРег(НакопленныеДанные.ТекстСообщения));

Статус

  • Записываем значение «ожидается» для параметра действия с именем «Статус».

Проверка статуса

Код 1с

СтатусВыбораИмя = Нрег(НакопленныеДанные.ТекстСообщения);

// Из прислано сообщения берем текст. Т.е. переменная СтатусВыбора Имя получит значение "ожидается".

СтрокаNJSON = TelegramСервер.ЗаписьТаблицыЗначенийВJSONСтроку(СписокДокументов);
УстановитьПроизвольныйПараметр(НакопленныеДанные.НастройкиБота.Ссылка,
НакопленныеДанные.ИдентификаторЧата, "Временная таблица документов", СтрокаJSON);
  • Собранные данные о списке документов помещаем в регистр для хранения данных в формате JSON, чтобы при последующих действиях по новой не собирать информацию с базы, а использовать уже подготовленную.

Произвольные значения настроек

Текст = СтрШаблон (НСтр("ги = '<b>Результат поиска ""%1"" (%2):<b>'"), ВидОбработки, СтатусВыбораИмя);
Сообщение = Новый Структура;
Сообщение.Вставить("Текст", Текст);
Сообщение.Вставить("ПрефиксСсылки", "/SetDocс");
Сообщение.Вставить("Клавиатура", "Список транспорт");
Сообщение.Вставить("СписокДокументов", СписокДокументов);
Сообщение.Вставить("РежимАнализаТекста", "HTML");
ОтправитьСообщение(Сообщение, НакопленныеДанные);

Програмное формирование теста

  • Формируем данные для отправки сообщения и переходи к созданию клавиатур «Список транспорт», а также «Вид обработки».
  1. Создадим клавиатуру «Список транспорт»
    Из переданного в действии Сообщения.СписокДокументов, берем данные (текс, префикс и ключ для команды) и формируем кнопки. Эта клавиатура будет под сообщением.

Программная настройка клавиатуры

  1. Создадим клавиатуру «Вид обработки».
    Эта клавиатура будет расположена под полем вводы ответа.

Программная настройка клавиатуры Проверка клавиатуры в телеграмм