Для того , чтобы настроить виджет ассистента необходим отдельный стенд с виджетом ассистента. Например, стенд находится по адресу https://test-robin-web.dev.rpa-robin.site:10000.
В файле https://test-robin-web.dev.rpa-robin.site:10000/config/environment.json находятся настройки, необходимые для работы приложения.
Пример
1 |
|
- apiAssistantServiceUrl - адрес сервиса ассистента
- wsMainUrl - адрес сервиса SignalR
- keyCloakUrl - адрес сервиса Keycloak
Для каждого стенда они могут быть свои.
Виджет ассистента работает через iframe. Для того, чтобы Keycloak открывался внутри iframe, в настройках Keycloak в Content-Security-Policy необходимо прописать адрес сайта, на который будет подключаться iframe с виджетом. Например, для сайта http://127.0.0.1:8000: Content-Security-Policy: frame-src 'self'; frame-ancestors 'selft' http://127.0.0.1:8000; object-src 'none';
На html странице сайта, на котором требуется подключить виджет ассистента, необходимо добавить следующий код
1 |
|
Подключается скрипт connect-assistant-widget.js, из которого используется функция connectAssistantWidget для подключения виджета ассистента. В объект параметров передаётся url - адрес стенда с виджетом ассистента. Для минимального подключения этого достаточно, применятся все параметры по умолчанию. Если требуется кастомизация внешнего вида виджета, то далее описаны все возможные параметры:
1 |
|
- url - адрес стенда с виджетом ассистента. По умолчанию, не установлен.
- zIndex - z-index виджета относительно других элементов на странице. По умолчанию, 1. Если другие элементы будут перекрывать собой виджет, то можно увеличить zIndex. Подробнее
- Объект openChatButton - параметры кнопки для открытия виджета.
- width - ширина кнопки. По умолчанию, 50px. Подробнее
- height - высота кнопки. По умолчанию, 50px. Подробнее
- top - положение кнопки относительно верхней границы страницы. По умолчанию, не установлен. Подробнее
- right - положение кнопки относительно правой границы страницы. По умолчанию, 30px, если не установлены ни top, ни bottom, ни left. Подробнее
- bottom - положение кнопки относительно нижней границы страницы. По умолчанию, 30px, если не установлены ни top, ни right, ни left. Подробнее
- left - положение кнопки относительно левой границы страницы. По умолчанию, не установлен. Подробнее
- backgroundColor - цвет фона кнопки. По умолчанию, #0043B5. Подробнее
- borderRadius - радиус рамки кнопки. По умолчанию, 50%. Подробнее
- Объект icon - параметры иконки внутри кнопки для открытия виджета.
- svg - иконка в формате svg. По умолчанию, как в примере кода выше. Подробнее
- theme - тема иконки. Если иконка разноцветная, то нужно установить значение 'brand'.
- color - цвет иконки. Применяется, если в иконке только один цвет. Значение theme в таком случае не должно быть 'brand'.
- size - размер иконки. По умолчанию, 24px.
- Объект chat - параметры окна чата виджета.
- width - ширина окна чата. По умолчанию, 467px. Подробнее
- height - высота окна чата. По умолчанию, 680px. Подробнее
- top - положение окна чата относительно верхней границы страницы. По умолчанию, не установлен. Подробнее
- right - положение окна чата относительно правой границы страницы. По умолчанию, 42px, если не установлены ни top, ни bottom, ни left. Подробнее
- bottom - положение окна чата относительно нижней границы страницы. По умолчанию, 42px, если не установлены ни top, ни right, ни left. Подробнее
- left - положение окна чата относительно левой границы страницы. По умолчанию, не установлен. Подробнее
Если требуется более сложная кастомизация, то есть возможность передавать глобальные стили в виджет через свойство style - это строка с css, который применится для всего приложения ассистента.
Чтобы кастомизировать кнопку открытия виджета, нужно использовать селектор .widget-icon, а чтобы иконку внутри неё, селектор .widget-icon i