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

Сценарий встройки WebRTC

Регистрация встройки

Регистрация встройки для «клиента» на каждой странице.

Имеется специальное место встройки, которое в виде невидимого фрейма формируется на каждой странице Битрикс24. Регистрация делается так:

'placement.bind',
[
	'PLACEMENT' => 'PAGE_BACKGROUND_WORKER',
	'HANDLER' => 'http://example.com/placement/?ty=1',
	'OPTIONS' => [
		'errorHandlerUrl' => 'http://example.com/logg.php?ty=1',
	],
	'LANG_ALL' => [
		'ru' => [
			'TITLE' => 'test',
		]
	]
]

Важное отличие от обычной встройки – параметр Options[errorHandlerUrl]. В этот обработчик передается сигнал, что мы отключаем встройку на конкретном портале Битрикс24, в случае, если обработчик, указанный в Handler, отвечает слишком медленно. Поскольку встройка формируется на каждой странице, важно, чтобы обработчик встройки вызывался быстро (сейчас считаем, что «не быстро» - это когда обработчик вызывался дольше 5 сек три раза). В случае отключения нужно будет заново зарегистрировать обработчик в этом Битрикс24.

Сценарий использования

Работа с телефонией остается той же, что и была. Регистрация звонка осуществляется методом telephony.externalcall.register. Этот же метод «поднимает» карточку звонка. Очевидно, что это должно происходить, если WebRTC-клиент во встройке, описанной выше, начал обработку звонка.

Далее, встройка может взаимодействовать с открытой карточкой звонка, управляя кнопками и событиями нажатия на кнопки. Для работы с карточкой звонка через плейсмент PAGE_BACKGROUND_WORKER было добавлено 9 методов для получения и изменения данных карточки и 17 событий для обработки пользовательской деятельности.

Ключевым является событие BackgroundCallCard::initialized. Оно выбрасывается при создании карточки звонка и после него становится возможным управлять данной карточкой. Поэтому настоятельно рекомендуется все вызовы методов со стороны приложения производить именно в функции-обработчике данного события.



© «Битрикс», 2001-2024, «1С-Битрикс», 2024