ПриСозданииОбсужденияСистемыВзаимодействия: собственный учебный бот книг

Учебные задачи

Точная сигнатура события модуля бота и прикладная реакция только в собственном учебном обсуждении.

Где и как запускать

Модуль собственного зарегистрированного бота УчебныеКнигиБот; собственное учебное обсуждение.

Подготовка

  1. Редкий API: своя отдельная учебная база с подключённой системой взаимодействия, свой бот УчебныеКнигиБот и собственное учебное обсуждение. Бота создайте в метаданных и штатно зарегистрируйте в своей системе взаимодействия. Транспорт и сервис этим кодом не устанавливаются.

  2. Весь код панели размещайте именно в модуле своего бота. РядКнопок.Добавить вне модуля бота по документации вызывает исключение, даже если код находится в обычном серверном общем модуле.

  3. Конкретный ИдентификаторОбсуждения приходит от платформы в событие создания собственного обсуждения с ботом. Он не конструируется из произвольной строки / UUID.

  4. Самостоятельные уроки не устанавливайте все одновременно в одноимённое событие. BSL, создание бота, обсуждения и отправка сообщений при сборке HTML не выполнялись.

  5. Этот отдельный урок, в отличие от примера черновика, содержит реальный Записать и отправляет одну памятку при создании обсуждения с ботом. Проверяйте только на собственном учебном обсуждении; все операции здесь лишь исходный код, не выполнявшийся при сборке.

Процедура ПриСозданииОбсужденияСистемыВзаимодействия(ИдентификаторОбсуждения, ДополнительныеПараметры)
    Памятка = ПодготовитьПанельКниг(ИдентификаторОбсуждения);
    Памятка.Записать();
    Сообщить("Свой бот отправил одну учебную памятку в новое своё обсуждение");
КонецПроцедуры
Тот же модуль бота: приветственная панель с действием ОбработатьБотом
Функция ПодготовитьПанельКниг(ИдентификаторОбсуждения)
    Черновик = СистемаВзаимодействия.СоздатьСообщение(ИдентификаторОбсуждения);
    Черновик.Текст = "Собственная учебная памятка книг";
    Панель = Черновик.ПанельКнопок;
    Панель.ВидКнопок = ВидКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ОбычнаяКнопка;
    Ряд = Панель.РядыКнопок.Добавить();
    Кнопка = Ряд.Добавить(ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ОбработатьБотом, "Книга: 3 штуки");
    Кнопка.ИмяДействия = "УчебныеКниги.Сводка";
    Кнопка.ТекстСообщения = "Учебная книга: 3 штуки";
    Кнопка.Данные = Новый Структура("КодКниги,Количество", "BOOK-001", 3);
    Возврат Черновик;
КонецФункции

Разбор по шагам

  1. Подготовьте собственного бота и точный обработчик.

  2. Выполните указанное действие только со своим учебным обсуждением / кнопкой.

  3. Различайте создание черновика, явную отправку и локальную запись журнала.

Как проверить результат

  1. СоздатьСообщение само не отправляет сообщение; отправка запрошена явным Записать.

  2. В новой памятке одна собственная кнопка УчебныеКниги.Сводка с действием ОбработатьБотом. Для ответа назначьте парный обработчик нажатия из следующего урока.

Ожидаемый результат

Показан настоящий обработчик с реальным источником идентификатора и ограниченным действием.

На что обратить внимание

  1. Текст программы с Записать — пример для ручного опыта, не выполненная здесь отправка.

  2. BSL, регистрация бота, сообщения и журнал при сборке HTML не исполнялись.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.