МенеджерУведомленийКлиента.ПодключитьОбработчик

Методы · AttachHandler

Подключает обработчик уведомлений клиента, который будет вызван при получении указанных уведомлений.

Синтаксис

ПодключитьОбработчик(<Ключ>, <Обработчик>)
Полное описание, параметры и ограничения

МенеджерУведомленийКлиента.ПодключитьОбработчик (ClientNotificationManager.AttachHandler)

МенеджерУведомленийКлиента (ClientNotificationManager)

ПодключитьОбработчик (AttachHandler)

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

Синтаксис:
ПодключитьОбработчик(<Ключ>, <Обработчик>)
Параметры:

<Ключ> (обязательный)
Тип: Неопределено, Строка.
Ключ уведомлений, для которых будет вызван обработчик.
Если Неопределено, обработчик будет вызван для всех полученных уведомлений.

<Обработчик> (обязательный)
Тип: ОписаниеОповещения.
Содержит описание процедуры, которая будет вызвана при получении новых уведомлений со следующими параметрами:
<Данные> - тип Произвольный. Поддерживаются все типы, которые могут быть переданы на клиент в клиент-серверном вызове;

<ДополнительныеПараметры> - значение, которое было указано при создании объекта ОписаниеОповещения.

Описание:

Подключает обработчик уведомлений клиента, который будет вызван при получении указанных уведомлений.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент.

Использование в версии:

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

Описание изменено в версии 8.3.27.

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

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

Подключить и отключить собственный обработчик уведомлений клиента

Обработчик получает данные уведомления и собственные дополнительные параметры. Отключаем только свой ключ.

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

Клиентский модуль формы: тонкий, веб-, мобильный или толстый клиент.

Подготовка

  1. Вставьте блок в модуль собственной управляемой формы. Из клиентского обработчика кнопки вызовите первую процедуру без параметров. Если указано иное место вставки, используйте его. Экспортные обработчики оповещения вызывает платформа, не вызывайте их вручную.

  2. Тонкий, веб-, мобильный или толстый клиент с настроенным сервисом уведомлений. Создайте две кнопки: подключить и отключить; отправку реализуйте отдельной серверной командой из соседнего примера.

&НаКлиенте
Процедура ПодключитьУчебныеУведомления()
    Менеджер = УведомленияКлиента;
    Обработчик = Новый ОписаниеОповещения("УчебноеУведомлениеПолучено", ЭтотОбъект, "Учебный экран");
    Менеджер.ПодключитьОбработчик("learning.sum", Обработчик);
КонецПроцедуры
&НаКлиенте
Процедура УчебноеУведомлениеПолучено(Данные, Дополнительно) Экспорт
    Сообщить(Дополнительно + ": " + Строка(Данные));
КонецПроцедуры
&НаКлиенте
Процедура ОтключитьУчебныеУведомления()
    УведомленияКлиента.ОтключитьОбработчик("learning.sum");
КонецПроцедуры

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

  1. Подключите оповещение на свой ключ.

  2. Получите настоящее уведомление от сервера.

  3. Отключите обработчик именно этого ключа.

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

  1. Дополнительные параметры берутся из ОписаниеОповещения.

  2. Отключение с learning.sum не отключает все чужие обработчики.

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

Своя форма обрабатывает уведомления выбранного ключа до явного отключения.

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

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

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

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

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

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

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