При сохранении комментария в карточке звонка BackgroundCallCard::addCommentButtonClick

Выберите инструмент для разработки с AI-агентом:

  • используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
  • используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации

Scope: placement — регистрация точки встраивания, telephony — регистрация звонка, поднимающего карточку

Кто может подписаться: любой пользователь

Событие BackgroundCallCard::addCommentButtonClick возникает, когда оператор сохраняет комментарий в карточке звонка.

Кнопка «Комментарий» открывает поле ввода и меняет подпись на «Сохранить». Повторное нажатие сохраняет текст. Битрикс24 сам записывает комментарий к звонку, а событие передает приложению тот же текст.

Событие приходит и без нажатия. Если карточку скрывают, например методом telephony.externalCall.hide, а поле комментария открыто, карточка остается на экране еще 65 секунд. Каждый ввод в поле перезапускает этот отсчет. Когда время выйдет, Битрикс24 сам сохранит комментарий и отправит событие.

Событие работает в контексте приложения, открытого в точке встраивания PAGE_BACKGROUND_WORKER. Это событие js-интерфейса, а не событие REST: подписаться на него запросом к /rest/ нельзя.

Что получает обработчик

Данные передаются в функцию обратного вызова метода BX24.placement.bindEvent

callback("Комментарий оператора");

Параметры обработчика события

Обязательные параметры отмечены *

Параметр
тип

Описание

eventData*
string

Все содержимое поля комментария на момент сохранения.

Может быть пустой строкой, если оператор сохранил поле без текста. После сохранения поле не очищается, поэтому при повторном сохранении приходит весь текст целиком

Параметры подписки

Обработчик регистрируют из виджета методом BX24.placement.bindEvent.

Обязательные параметры отмечены *

Название
тип

Описание

event*
string

Имя события интерфейса.

Для данного события — BackgroundCallCard::addCommentButtonClick

callback*
callable

Функция, которую Битрикс24 вызывает при наступлении события. Аргументы обработчика описаны выше

Примеры кода

Как использовать примеры в документации

BX24.ready(function () {
    BX24.init(function () {
        BX24.placement.bindEvent('BackgroundCallCard::addCommentButtonClick', function (eventData) {
            console.log(eventData);
        });
    });
});
// $b24 — инициализированный экземпляр SDK, см. руководство по началу работы
import type { B24Frame } from '@bitrix24/b24jssdk'

declare const $b24: B24Frame

await $b24.placement.bindEvent('BackgroundCallCard::addCommentButtonClick', (eventData: string) => {
  console.log(eventData)
})
<!-- Загрузка SDK в UMD-сборке, глобальный объект B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
  document.addEventListener('DOMContentLoaded', async () => {
    const $b24 = await B24Js.initializeB24Frame()

    await $b24.placement.bindEvent('BackgroundCallCard::addCommentButtonClick', (eventData) => {
      console.log(eventData)
    })
  })
</script>

Ошибки

Проверьте условия.

  • Виджет открыт в точке встраивания PAGE_BACKGROUND_WORKER. В других точках встраивания события BackgroundCallCard::* не зарегистрированы, и подписка молча не сработает
  • Имя события передано без опечаток и с учетом регистра. Список событий, доступных в текущей точке встраивания, возвращает BX24.placement.getInterface
  • Звонок поднят приложением методом telephony.externalCall.register. Для звонков самого Битрикс24 события BackgroundCallCard::* не эмитятся вовсе

Продолжите изучение