Встраивание Базы знаний
Описание
В интерфейсе Битрикс24 встречаются места встройки Баз знаний самим пользователем . Давайте разберем как с этим работать с позиции REST. Обратим внимание, что это не места встройки в чистом виде? которые рассмотрены здесь. Это исключительно работа с базами знаний с позиции интерфейса.
Для начала вам нужно определиться с меню, в которое вы хотите встроиться, получить его код. Сделать это можно, открыв в интерфейсе выбор привязки к меню ("Выбрать Базу знаний") и посмотрев адрес открывшегося фрейма. Там будет параметр, например, menuId=crm_switcher:deal
. Это и есть так называемый код меню. И вот с ним уже можно работать.
Встраивание в меню и удаление
Встраивание в меню
Метод landing.site.bindingToMenu привязывает Базу знаний в указанное меню. К Базе знаний должен быть доступ на чтение.
Параметры
Параметр | Описание | С версии |
---|---|---|
id | Идентификатор Базы знаний. | |
menuCode | Символьный код меню, как мы определяли выше. |
Пример
BX24.callMethod( 'landing.site.bindingToMenu', { id: 31, menuCode: 'crm_switcher:deal' }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );
Удаление из меню
Метод landing.site.unbindingFromMenu удаляет привязку Базы знаний в меню. К Базе знаний должен быть доступ на чтение.
Параметры
Параметр | Описание | С версии |
---|---|---|
id | Идентификатор Базы знаний. | |
menuCode | Символьный код меню, как мы определяли выше. |
Пример
BX24.callMethod( 'landing.site.unbindingFromMenu', { id: 31, menuCode: 'crm_switcher:deal' }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );
Привязки в меню
Получение списка привязок в меню
Метод landing.site.getMenuBindings возвращает список привязанных к меню (конкретному или всем) Баз знаний. Вернутся только привязки, к Базам знаний которых текущий пользователь имеет доступ на чтение.
Параметры
Параметр | Описание | С версии |
---|---|---|
menuCode | Символьный код меню, как мы определяли выше. Не обязательный, по умолчанию возвращаются все привязки. |
Пример
BX24.callMethod( 'landing.site.getMenuBindings', { menuCode: 'crm_switcher:deal' }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );
Привязка к группе Социальной сети
Метод landing.site.bindingToGroup привязывает конкретную Базу знаний к группе. Пользователь должен состоять в указанной группе, и у группы не должно быть привязанной Базы знаний.
Параметры
Параметр | Описание | С версии |
---|---|---|
id | Идентификатор Базы знаний. | |
groupId | Идентификатор группы. |
Пример
BX24.callMethod( 'landing.site.bindingToGroup', { id: 32, groupId: 174 }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );
Удаление привязки к группе социальной сети
Метод landing.site.unbindingFromGroup отвязывает конкретную Базу знаний от группы. Пользователь должен состоять в указанной групп.
Параметры
Параметр | Описание | С версии |
---|---|---|
id | Идентификатор Базы знаний. | |
groupId | Идентификатор группы. |
Пример
BX24.callMethod( 'landing.site.unbindingFromGroup', { id: 32, groupId: 174 }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );
Получение привязок к группам
Метод landing.site.getGroupBindings позволяет узнать, существует ли привязка к группе, или какие вообще есть привязки к группам. Вернутся только привязки, к Базам знаний которых текущий пользователь имеет доступ на чтение.
Параметры
Параметр | Описание | С версии |
---|---|---|
groupId | Идентификатор группы, для которой надо вернуть привязку. Не обязательный, по умолчанию возвращаются все привязки к любым группам. |
Пример
BX24.callMethod( 'landing.site.getGroupBindings', { groupId: 174 }, function(result) { if(result.error()) { console.error(result.error()); } else { console.info(result.data()); } } );