WebRTC
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Битрикс24 позволяет встраивать внешний WebRTC-клиент в веб-версию продукта. Собственного кода встраивания у этого сценария нет: клиент загружается в точку PAGE_BACKGROUND_WORKER, а телефония подключается методами раздела Телефония: обзор методов и событий.
Видимого элемента в интерфейсе у сценария тоже нет. Пользователь работает со стандартной карточкой звонка, а WebRTC-клиент приложения выполняется в фоне.
Чтобы встроить свой WebRTC-клиент:
- Загрузите свой WebRTC-клиент в специальную точку встраивания
PAGE_BACKGROUND_WORKER. - При поступлении входящего звонка регистрируйте его обычным методом интеграции телефонии Зарегистрировать звонок в Битрикс24 telephony.externalCall.register, который также покажет пользователю стандартную карточку звонка.
- Управляйте состоянием и кнопками карточки звонка с помощью специальных js-методов, доступных для обработчика виджета
PAGE_BACKGROUND_WORKER. - По завершении звонка сообщайте об этом в Битрикс24 с помощью метода Завершить звонок и зафиксировать его в статистике telephony.externalCall.finish.
При регистрации обработчика PAGE_BACKGROUND_WORKER обязателен параметр OPTIONS[errorHandlerUrl]: если обработчик больше десяти раз за сутки грузился дольше пяти секунд, Битрикс24 удаляет регистрацию и сообщает об этом запросом на указанный адрес.
Как использовать примеры в документации
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"PLACEMENT": "PAGE_BACKGROUND_WORKER",
"HANDLER": "https://your-domain.com/widgets/webrtc-worker.php",
"TITLE": "WebRTC-клиент",
"OPTIONS": {
"errorHandlerUrl": "https://your-domain.com/widgets/webrtc-error.php"
},
"auth": "**put_access_token_here**"
}' \
https://**put_your_bitrix24_address**/rest/placement.bind
Порядок работы с карточкой звонка описан в статье Сценарий встраивания WebRTC, а полный состав данных обработчика — на странице точки Фоновый обработчик на всех страницах PAGE_BACKGROUND_WORKER.
Типовые ошибки
|
Ошибка |
Как решить |
|
|
Точка |
|
|
Обработчик для этой точки уже зарегистрирован: она регистрируется в единственном экземпляре. Снимите старую регистрацию методом placement.unbind |
|
|
Регистрируйте точку от имени приложения. Вебхуком точку не привязать |
|
Фоновый обработчик перестал вызываться |
Регистрация снята из-за медленных ответов. Битрикс24 сообщает об этом на адрес из |
Другие коды ошибок регистрации перечислены в разделе «Возможные коды ошибок» страницы placement.bind.
Остальное — например, загрузку записей разговоров в Битрикс24 — реализуют методами интеграции телефонии, уже без обращения к WebRTC-клиенту.
Если приложению нужна собственная вкладка в карточке звонка, используйте точку встраивания Вкладка в карточке звонка CALL_CARD.
Продолжите изучение
- Виджеты в телефонии: обзор точек встраивания
- Вкладка в карточке звонка CALL_CARD
- Фоновый обработчик на всех страницах PAGE_BACKGROUND_WORKER
- Управление карточкой звонка WebRTC-клиента: обзор команд и событий
- Сценарий встраивания WebRTC
- Зарегистрировать обработчик виджета placement.bind
- Телефония: обзор методов и событий