При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Виджет в инструменте смайлов IM_SMILES_SELECTOR», разберем архитектурные особенности и предоставим готовые к интеграции примеры кода.
Виджет в инструменте смайлов IM_SMILES_SELECTOR
Тут может не хватать некоторых данных — дополним в ближайшее время
- нужны правки под стандарт написания
- не указаны типы параметров
- из файла Сергея: общее описание, для каких сценариев полезно, ссылка на страницу в разделе виджетов
> Scope: im
Тут могут быть свои источники картинок или смайлов.
| Параметр | Описание |
|---|---|
contextunknown | Для какого типа чата встраивать приложение (по умолчанию ALL). Поддерживает множественный выбор через ; следующих значений: — USER – чаты всех пользователей, исключая ботов; — CHAT – все групповые чаты, кроме lines и crm; — LINES – тип чата lines (открытые линии); — CRM – только чаты, созданные в рамках CRM; — ALL – все чаты. |
roleunknown | Роль пользователя, для которой доступно это приложение (по умолчанию USER). Поддерживает значения:— USER – приложение доступно для всех пользователей; — ADMIN – приложение доступно только для администраторов портала. |
extranetunknown | Доступно ли приложение для экстранет-пользователей (по умолчанию N). Поддерживает значения:— N – приложение недоступно для экстранет-пользователей; — Y – приложение доступно для экстранет-пользователей. |
В данном встраивании доступен текущий контекст открытия, будет передан dialogId текущего чата.
const context = BX24.placement.info().options;Приложение отрисовывается в рамках всплывающего окна (pop up) с селектором смайлов и giphy (без возможности изменить размер).
Практические примеры использования в коде
- PHP
CRest::call(
'placement.bind',
[
'PLACEMENT' => 'IM_SMILES_SELECTOR',
'HANDLER' => 'https://example.com/apps/immarket/handlers/smiles_selector.php',
'LANG_ALL' => [
'ru' => [
'TITLE' => 'Приложение для расширения возможностей смайлов и giphy',
],
],
'OPTIONS' => [
'context' => 'USER;LINES',
'role' => 'USER',
'extranet' => 'Y',
]
]
);💡 Экспертное мнение и рекомендации
Практические рекомендации:
- При написании кастомных компонентов для «Виджет в инструменте смайлов IM_SMILES_SELECTOR» всегда разделяйте бизнес-логику и представление (шаблон).
- Используйте отладку SQL-запросов через конструкцию
$wpdb->last_queryили стандартный трекер Битрикса, чтобы контролировать нагрузку.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru