Вызвать зарегистрированную команду интерфейса BX24.placement.call
Выберите инструмент для разработки с AI-агентом:
- используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
- используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации
Scope:
placementКто может выполнять метод: любой пользователь
Метод BX24.placement.call вызывает команду интерфейса, зарегистрированную текущей точкой встраивания.
BX24.placement.call(command, parameters[, callback]);
Параметры
Обязательные параметры отмечены *
|
Название |
Описание |
|
command* |
Имя вызываемой команды |
|
parameters |
Передаваемые параметры. Тип значения зависит от команды: объект, строка, число, массив или |
|
callback |
Функция обратного вызова. В нее приходит результат команды |
Например, команда setValue точки встраивания USERFIELD_TYPE принимает новое значение поля вторым аргументом:
BX24.placement.call('setValue', value, () => {});
Какие команды доступны
Набор команд задает точка встраивания, в которой открыт виджет. Общего списка на все точки нет: сверяйте его методом BX24.placement.getInterface.
В библиотеке b24jssdk второй аргумент необязателен: для команд без параметров его опускают.
|
Точка встраивания |
Команды |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Кроме команд точки встраивания, виджету доступны общие методы — например BX24.resizeWindow. В списке BX24.placement.getInterface они не возвращаются.
Примеры кода
Как использовать примеры в документации
BX24.ready(function () {
BX24.init(function () {
BX24.placement.call('getStatus', {}, function (result) {
console.log(result);
});
BX24.placement.call('CallCardSetCardTitle', {title: 'hello world!'}, function (result) {
console.log(result);
});
});
});
// $b24 — инициализированный экземпляр SDK, см. руководство по началу работы
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
const result = await $b24.placement.call('getStatus')
console.log(result)
<!-- Загрузка 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()
const result = await $b24.placement.call('getStatus')
console.log(result)
})
</script>
Результат
Состав результата задает сама команда — он описан на ее странице. Команды, которые ничего не возвращают, передают в функцию обратного вызова пустой массив, команды чтения — объект или массив с данными.
Ошибку команда возвращает туда же, отдельного канала ошибок у js-интерфейса нет. Например, команды карточки звонка при отсутствии карточки передают массив с объектом:
[
{
"result": "error",
"errorCode": "Call card is undefined"
}
]
Ошибки
Незнакомую команду точка встраивания игнорирует молча: функция обратного вызова не вызывается, ошибка не приходит. Так же ведет себя вызов из точки, где команды нет.
Проверьте два условия:
- виджет открыт в той точке встраивания, где команда зарегистрирована. Текущую точку показывает BX24.placement.info
- имя команды передано без опечаток и с учетом регистра. Список доступных команд возвращает BX24.placement.getInterface