Документация для разработчиков
Темная тема

BX.PULL.subscribe

Описание и параметры

BX.PULL.subscribe - JS метод.

Подписка на события модуля Push&Pull. Для подписки есть три формата, вы можете выбрать для себя подходящий в зависимости от ваших задач.

Параметры

Параметр Описание
type Тип подписки ( Server, Client, Online Здесь имеется ввиду константы:
BX.PullClient.SubscriptionType.Server,
BX.PullClient.SubscriptionType.Client,
BX.PullClient.SubscriptionType.Online
) - можно не указывать, по умолчанию будет тип Server.
moduleId Модуль отправивший команду.
command Команда на которую осуществляется подписка
callback Функция обработчик

Примеры использования

Подписка на все события модуля.

BX.PULL.subscribe({
	moduleId: 'exampleModule',
	callback: function (data) {
		if (command == 'exampleCommandOne')   {
			doSomething();
		}
		else if (command == 'exampleCommandTwo')
		{
			doSomething2();
		}
	}.bind(this)
});

Подписка на одну команду

BX.PULL.subscribe({
	type: BX.PullClient.SubscriptionType.Server,
	moduleId: 'im',
	command: 'messageChat',
	callback: function (params, extra, command) {
		console.warn('Receive message:', params.message.text)
	}.bind(this)
});

Подписка на множество команд с помощью функции маршрутизатора

BX.PULL.subscribe({
	type: BX.PullClient.SubscriptionType.Server,
	moduleId: 'im',
	callback: function (data) {
		if (data.command == 'messageAdd')
		{
			this.doSomething();
		}
	}.bind(this)
});

Подписка с помощью класса маршрутизации

BX.PULL.subscribe(new CommandHandler(options));


Пользовательские комментарии

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

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Вячеслав Докукин
Сообщение не промодерировано, возможны ошибки и неточности.
Опечатка в первом примере

Код
if (command == 'exampleCommandOne')

замените на
Код
if (data.command == 'exampleCommandOne')
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх