﻿# Настройка интеграции конструктора ELMA Bot с ELMA365

> [HTML Version](integrate-chatbot-builder.html)

Чтобы подключать к линиям ботов, созданных в конструкторе ELMA Bot, настройте интеграцию одним из следующих способов:

1. [При помощи Х‑токена конструктора ELMA Bot](#x-token). 

Такой вариант подключения доступен для всех поставок ELMA365. Он выполняется в разделе **Администрирование > Линии > Боты**. При этом способе интеграции пользователи ELMA365 должны быть предварительно авторизованы в конструкторе ELMA Bot, чтобы переходить в него по ссылкам из настроек линии или раздела **Администрирование > Линии > Боты**.  
Для редакции ELMA365 On‑Premises Standard, установленной в Kubernetes‑in‑Docker (KinD), вы можете настроить интеграцию с конструктором ELMA Bot только через его Х-токен.

2. [Через микросервис Hydra](#hydra-oidc).

Если вы используете поставку ELMA365 On‑Premises, установленную в Kubernetes‑кластер, вы можете настроить интеграцию на уровне Helm‑чартов. Тогда пользователи ELMA365 будут автоматически авторизовываться в конструкторе ELMA Bot при переходе по ссылкам из настроек линии или раздела **Администрирование > Линии > Боты**.

## Интеграция при помощи Х-токена конструктора ELMA Bot

Если вы активировали решение [ELMA365 CRM](crm-functions.md) или [ELMA365 Omni](omni.md), во всех поставках ELMA365 можно дополнительно подключить конструктор [ELMA Bot](elma-bot.md) с помощью его Х‑токена. После этого в настройках линий станут доступны боты подключённого конструктора.

Чтобы подключить конструктор ELMA Bot, выполните шаги:

1. В ELMA365 перейдите в **Администрирование > Линии > Боты**.

2. В правом верхнем углу страницы нажмите **+ Конструктор ELMA Bot**.

3. В открывшемся окне заполните поля:

**(integrate-chatbot-builder-1.png)**

- **Название\*** — укажите название подключения конструктора ELMA Bot;

- **URL\*** — откройте ELMA Bot в браузере и скопируйте его адрес из адресной строки. Например: 

	- https://elma365.\[адрес ELMA Bot\] — для режима с поддоменами;

	- https://\[адрес ELMA Bot\]/elma365 — для режима с подпутями.  
Режимы определяются при установке конструктора ELMA Bot. Подробнее об этом читайте в статье [«Установка ELMA Bot в Kubernetes»](kubernetes-elma-bot.md#path-install); 

- **X-Token\*** — токен конструктора ELMA Bot. Он указан на вкладке [API](bot-settings.md#api) любого бота, который создан в конструкторе ELMA Bot.

4. Нажмите **Добавить**. Теперь ботов подключённого конструктора можно [выбрать в настройках линии](connect-bot.md#connect-bot).

## Интеграция при помощи микросервиса Hydra

Если ELMA365 On‑Premises и [ELMA Bot On‑Premises](kubernetes-elma-bot.md) установлены в Kubernetes‑кластер при помощи Helm‑чартов, вы можете подключить конструктор ELMA Bot, используя микросервис Hydra. Для этого выполните следующие условия:

- cо стороны ELMA365:

	- установить с TLS; 

	- настроить сервисы \[OBJECT\], \[OBJECT\], \[OBJECT\]; 

	- активировать лицензии [платформы](/ru/help/platform/activate_on_premise.html) и [ELMA365 Omni](omni.md), чтобы подключить бота к линиям;  

- cо стороны ELMA Bot:

	- включить провайдер авторизации (сервис Hydra); 

	- настроить параметры \[OBJECT\]. 

Затем задайте настройки интеграции.

Пример настройки интеграции ELMA365 и ELMA Bot

1. Настройки файла \[OBJECT\] в Helm-чарте ELMA365:

````
elmabot-proxy:  
  appconfig:  
    apiUrl: https://elma365.example.com  
    grantType: elma.assistant.auth.grants.impersonation.elma365  
    identityServerUrl: https://auth.example.com  
    oidcUri: example.com  
    scope: elma.assistant.scopes.api.gateways.elma365 elma.assistant.scopes.auth.impersonation  
hydra-adaptor:  
  appconfig:  
    client\_id: elma.assistant.clients.external.elma365.server  
    client\_secret: wvmtLu1KAvf8XjtULBFJ3DP0eB  
    hydraAdminURL: http://hydra-admin:4445  
    loginEndpoint: https://example.com/ext-api/oidc-adaptor/login  
settings:  
  appconfig:  
    onPremiseCustomEnabledFeatureFlags:  
    - allowLinesBots

2. ````
Настройки файла \[OBJECT\] в Helm-чарте ELMA Bot:

````
global:  
  elma365Integration:  
    clientSecret: wvmtLu1KAvf8XjtULBFJ3DP0eB  
    elma365Uri: example.com  
    elma365TlsSecret: example-com-tls  
  host: example.com  
  ingress:  
    existingTLSSecret: example-com-tls  
  
hydra:  
  enabled: true
````

````
После настройки интеграции ELMA Bot с ELMA365, вы можете [подключать ботов к линиям](connect-bot.md#connect-bot).

## Страница с подключённым конструктором ELMA Bot

Когда интеграция с конструктором ELMA Bot настроена, вы можете посмотреть, какие боты есть в конструкторе и к каким линиям они подключены. Для этого перейдите в ELMA365 и в разделе **Администрирование > Линии > Боты **нажмите значок **(integrate-chatbot-builder-3.png) **рядом с названием конструктора ELMA Bot, чтобы развернуть таблицу и увидеть список его ботов.

**(integrate-chatbot-builder-2.png)**

Если интеграция с ELMA Bot настроена через микросервис Hydra, на странице отобразится **Конструктор по умолчанию**. Для конструктора ELMA Bot, который подключён к ELMA365 через Х‑токен, название задаётся при настройке интеграции.

Напротив названия подключённого конструктора ELMA Bot можно использовать следующие опции:

- нажмите значок трёх точек и выберите:

	- **Редактировать** — изменить название настроенного подключения;

	- **Удалить** — разорвать связь с конструктором. Тогда боты станут недоступны в линиях.  
Эти действия доступны только для конструктора ELMA Bot, который подключён к ELMA365 через Х‑токен. 

- **+ Бот** —  перейти в конструктор ELMA Bot, чтобы [создать нового бота](create-bot.md).

Вы также можете открыть страницу любого бота. Для этого нажмите на его название. Если бот подключён к линии, доступна ссылка для перехода в её настройки.