ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ПерейтиПоНавигационнойСсылке

Свойства · GotoURL

Действие кнопки выполняет переход по навигационной ссылке, указанной в свойстве НавигационнаяСсылка кнопки.

Полное описание, параметры и ограничения

ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ПерейтиПоНавигационнойСсылке (CollaborationSystemMessageButtonPanelButtonAction.GotoURL)

ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия (CollaborationSystemMessageButtonPanelButtonAction)

ПерейтиПоНавигационнойСсылке (GotoURL)

Доступен, начиная с версии 8.3.25.

Описание:
Действие кнопки выполняет переход по навигационной ссылке, указанной в свойстве НавигационнаяСсылка кнопки.
Использование в версии:

Доступен, начиная с версии 8.3.25.

См. также:
КнопкаПанелиКнопокСообщенияСистемыВзаимодействия, свойство Действие

Методическая информация

Практические примеры

Панель своего бота: ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ПерейтиПоНавигационнойСсылке

Точная цепочка производства: идентификатор события → черновик сообщения → readonly-панель → ряд → настоящая кнопка.

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

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

Подготовка

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

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

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

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

  5. Основная функция возвращает настоящий черновик сообщения с заполненной панелью. Дополнительный обработчик создания обсуждения вызывает её с настоящим идентификатором и проверяет число рядов. Записать здесь намеренно не вызывается — кнопка никому не отправлена.

  6. ОбработатьБотом вызывает событие нажатия в модуле бота. ОбработатьНаКлиенте вызывает ПриНажатииКнопкиПанелиКнопокСообщенияСистемыВзаимодействия клиентского приложения и не работает в интеграциях с мессенджерами.

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

  8. ОтправитьСообщениеСДанными не доступно в интеграциях с мессенджерами; в свойство Данные нового сообщения копируются собственные сериализуемые данные кнопки. Не вкладывайте секреты.

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

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

  1. Подготовьте своего зарегистрированного учебного бота.

  2. Разместите функцию и дополнительное событие в его модуле.

  3. Создайте своё обсуждение с ботом и проверьте подготовленный черновик, не объявляя его отправленным сообщением.

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

  1. Сообщение.ПанельКнопок readonly: панель берётся у настоящего черновика, не создаётся несуществующим конструктором.

  2. Ряд.Добавить принимает действие первым параметром, текст вторым. ИмяДействия — собственный идентификатор кнопки, не имя исполняемой процедуры.

  3. ВидКнопок меняет представление кнопок, а не разрешения на телефон / геопозицию и не способ отправки.

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

Показан реальный короткий синтаксис редкого API с точным модулем и ограничениями клиента.

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

  1. Подготовка черновика не нажимает кнопку и не подтверждает поддержку действия выбранной внешней интеграцией.

  2. Для фактической отправки нужен отдельный осознанный Записать только в своё учебное обсуждение; этого вызова здесь нет.

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

Интеграция: возможности, участники и изменение подписи

Находим реально настроенную учебную интеграцию, читаем ее возможности и сохраняем только новое представление.

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

Серверный общий модуль или серверная процедура управляемой формы; своя настроенная система взаимодействия.

Подготовка

  1. В отдельной учебной базе подключите собственную систему взаимодействия и заранее настройте свою интеграцию.

  2. В форме создайте строковые реквизиты КлючИнтеграции и НоваяПодпись. Укажите действительный ключ своей интеграции. Для записи требуется право Администрирование данных; получайте объект с этим правом.

&НаСервере
Процедура ПоказатьИОбновитьИнтеграцию()
    Интеграция = Неопределено;
    Для Каждого Кандидат Из СистемаВзаимодействия.ПолучитьИнтеграции() Цикл
        Если Кандидат.Ключ = КлючИнтеграции Тогда
            Интеграция = СистемаВзаимодействия.ПолучитьИнтеграцию(Кандидат.Идентификатор);
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если Интеграция = Неопределено Тогда
        Сообщить("Учебная интеграция не найдена");
        Возврат;
    КонецЕсли;
    Сообщить("Идентификатор: " + Строка(Интеграция.Идентификатор));
    Сообщить("Подпись: " + Интеграция.Представление);
    Сообщить("Редактирование: " + Строка(Интеграция.ДоступноРедактированиеСообщения));
    Сообщить("Видеозвонки: " + Строка(Интеграция.ДоступныВидеоконференции));
    Сообщить("Точка подключения: " + Интеграция.НавигационнаяСсылкаТочкиПодключения);
    Сообщить("Участников по умолчанию: " + Строка(Интеграция.Участники.Количество()));
    Действие = ДействиеКнопкиПанелиКнопокСообщенияСистемыВзаимодействия.ПерейтиПоНавигационнойСсылке;
    Сообщить("Кнопка перехода: " + Строка(Интеграция.ПоддерживаетсяДействиеКнопкиПанелиКнопокСообщения(Действие)));
    Интеграция.Представление = НоваяПодпись;
    Интеграция.Записать();
    Прочитано = СистемаВзаимодействия.ПолучитьИнтеграцию(Интеграция.Идентификатор);
    Сообщить("Сохраненная подпись: " + Прочитано.Представление);
КонецПроцедуры

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

  1. Список интеграций дает настоящий идентификатор выбранной записи.

  2. Возможности и участники читаются без изменения.

  3. Новое представление записывается и проверяется повторным получением.

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

  1. Сопоставьте возможности с типом интеграции: для WhatsApp редактирование недоступно.

  2. Проверьте новую подпись в настройках именно своей интеграции.

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

Сведения реальной интеграции и сохраненное представление; сообщения не отправляются.

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

  1. Записать меняет настройку на сервере взаимодействия. Адрес точки подключения бывает заполнен только для Webhook; пустая строка нормальна. Не выполняйте этот опыт для рабочей интеграции.

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

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

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

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

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