Встраивание приложений
Разработчику приложений для Маркетплейса Битрикс24 доступен простой механизм встраивания приложения в интерфейс Битрикс24. В разделе приведены справочные данные по методам и местам встраивания. Детальное описание примеров работы представлено в курсе Приложения Битрикс24.
Встраиваемые приложения, к которым пользователь доступа не имеет, не будут отображаться в списках, пунктах меню или в других местах, где могут быть видны приложения. Исключение - встройка через тип пользовательского поля. Но в фрейм не будет передаваться авторизация, и разработчик приложения должен это учитывать.
Доступны следующие места для встраивания:
- scope CRM
- scope intranet
- scope telephony
- scope landing
- scope worgroups
- task
- calendar
- contact_center
- произвольное место
scope CRM | |
---|---|
Код | Лиды |
CRM_LEAD_LIST_MENU |
Контекстное меню
![]() |
CRM_LEAD_DETAIL_TAB |
Пункт в
верхнем меню
![]() |
CRM_LEAD_DETAIL_ACTIVITY |
Пункт в
меню таймлайна
![]() |
CRM_LEAD_DETAIL_TOOLBAR |
Пункт в
списке приложений
![]() |
Код | Сделки |
CRM_DEAL_LIST_MENU |
Контекстное меню
![]() |
CRM_DEAL_DETAIL_TAB |
Пункт в
верхнем меню
![]() |
CRM_DEAL_DETAIL_ACTIVITY |
Пункт в
меню таймлайна
![]() |
CRM_DEAL_DETAIL_TOOLBAR |
Пункт в
списке приложений
![]() |
Код | Контакты |
CRM_CONTACT_LIST_MENU |
Контекстное меню
![]() |
CRM_CONTACT_DETAIL_TAB |
Пункт в
верхнем меню
![]() |
CRM_CONTACT_DETAIL_ACTIVITY |
Пункт в
меню таймлайна
![]() |
CRM_CONTACT_DETAIL_TOOLBAR |
Пункт в
списке приложений
![]() |
Код | Компании |
CRM_COMPANY_LIST_MENU |
Контекстное меню
![]() |
CRM_COMPANY_DETAIL_TAB |
Пункт в
верхнем меню
![]() |
CRM_COMPANY_DETAIL_ACTIVITY |
Пункт в
меню таймлайна
![]() |
CRM_COMPANY_DETAIL_TOOLBAR |
Пункт в
списке приложений
![]() |
Код | Счета |
CRM_INVOICE_LIST_MENU |
Контекстное меню
![]() |
Код | Предложения |
CRM_QUOTE_LIST_MENU |
Контекстное меню
![]() |
Код | Дела |
CRM_ACTIVITY_LIST_MENU |
Контекстное меню
![]() |
Код | CRM-аналитика |
CRM_ANALYTICS_MENU |
Меню
![]() |
scope intranet | |
Код | Встраивание Базы знаний |
CRM | |
CRM_FUNNELS_TOOLBAR |
Кнопка
![]() |
CRM_ANALYTICS_TOOLBAR |
Кнопка
![]() |
CRM_*_LIST_TOOLBAR |
Кнопка
![]() |
CRM_*_DETAIL_TOOLBAR |
Кнопка
![]() |
CRM_*_ACTIVITY_TIMELINE_MENU |
Кнопка
![]() |
CRM_*_DOCUMENTGENERATOR_BUTTON | Кнопка в документах. Допустимые объекты: DEAL, LEAD, CONTACT, COMPANY, INVOICE, QUOTE |
CRM_*_ROBOT_DESIGNER_TOOLBAR |
Кнопка
![]() |
Задачи | |
TASK_USER_LIST_TOOLBAR |
Кнопка
![]() |
TASK_GROUP_LIST_TOOLBAR |
Кнопка
![]() |
TASK_ROBOT_DESIGNER_TOOLBAR |
Кнопка
![]() |
Рабочие группы | |
SONET_GROUP_ROBOT_DESIGNER_TOOLBAR |
Кнопка
![]() |
SONET_GROUP_TOOLBAR |
Кнопка
![]() |
Профиль пользователя | |
USER_PROFILE_MENU |
Кнопка в главном меню
![]() |
USER_PROFILE_TOOLBAR |
Кнопка в профиле
![]() | scope telephony |
Код | Карточка звонка |
CALL_CARD |
Карточка звонка
![]() |
scope landing | |
Код | Настройки |
LANDING_SETTINGS | Меню настроек (Страницы / Сайта) |
Код | Редактирование |
LANDING_BLOCK | Пункт редактирования любого блока. |
scope worgroups | |
Код | Настройки |
SONET_GROUP_DETAIL_TAB |
Закладка
![]() |
scope task | |
Код | Настройки |
TASK_LIST_CONTEXT_MENU |
Контекстное меню
![]() |
TASK_VIEW_TAB |
Вкладка
![]() |
TASK_VIEW_SIDEBAR |
Боковая панель
![]() |
TASK_VIEW_TOP_PANEL |
Пункт в вехнем
меню
![]() |
scope calendar | |
Код | Настройки |
CALENDAR_GRIDVIEW |
Список
видов отображения
![]() |
scope contact_center | |
Код | Настройки |
CONTACT_CENTER |
"Квадратик"
![]() |
Произвольное место | |
Код | Настройки |
REST_APP_URI |
На каждом портале каждому приложению позволяется зарегистрировать только одну встройку методом placement.bind.
Эта встройка не имеет в интерфейсе кнопки, которая позволяет пользователю открыть её самостоятельно. Приложение может отправить ссылку на свою встройку. Для использования данной встройки ссылка должна быть в формате /marketplace/view/#APP_CODE#/, где Встройка может принимать любое количество параметров в get ключе params, например: /marketplace/view/#APP_CODE#/?params[test]=y. В этом случае в PLACEMENT_OPTIONS будет равен: [ 'test' = 'y' ]Пример: как с помощью BBCode вставить данную ссылку в чат: [url=/marketplace/view/'.$myApp['CODE'].'/?params[test]=y]uri[/url] <? $placement = 'REST_APP_URI'; $url = 'https://example.com/placement.php'; CRest::call( 'placement.bind', [ 'PLACEMENT' => $placement, 'HANDLER' => $url ] ); ?> Пример выше регистрирует на вашем портале встройку. Для данного PLACEMENT можно на портале зарегистрировать её только один раз, после этого она становится доступна для вызова. В вашем приложении вы можете разместить вашу встройку: <a href="/marketplace/view/<?=$myApp['CODE']?>/">uri</a> И разместить её в посте живой ленты: <? CRest::call('log.blogpost.add', [ 'POST_TITLE' => 'Post Title', 'POST_MESSAGE' => 'use this [url=/marketplace/view/'.$myApp['CODE'].'/?params[test]=y]uri[/url]', 'DEST' => [ 'UA' ] ]); ?> И отправить её с помощью бота в чат пользователю методом: <? CRest::call( 'imbot.message.add', [ 'DIALOG_ID' => 1, 'MESSAGE' => 'use this [url=/marketplace/view/'.$myApp['CODE'].'/?params[test]=y]uri[/url]', ] ); ?>
Ссылку можно вставить в любое текстовое поле, которое поддерживает BBCode или внутри ваших других встроек как обычная ссылку. А с помощью GET параметра params вы можете изменять отображаемые данные в стройке и использовать эту возможность в абсолютно разных сценариях передавая любое количество параметров в GET ключе params, например: |
![]()
Сообщение непромодерировано, возможны ошибки и неточности.
|
оставлю этот тут, пожалуй...
|
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.