Як вбудувати операторську панель у CRM/ERP
ConnectiveOne можна відкрити всередині вашої CRM/ERP у вікні (iframe): оператор веде діалоги, не виходячи з CRM. Панель вбудовується в Creatio, Zoho, Odoo та будь-яку іншу систему, яка вміє показувати iframe.
Коли використовувати
- Пункт меню в CRM, де оператор працює з усіма чатами.
- Вкладка або кнопка на картці клієнта, яка відкриває чат саме з цим клієнтом.
- Черга чатів поруч із CRM без меню ConnectiveOne.
Як це працює
- Адміністратор ConnectiveOne вмикає вбудовування, вказує домен CRM і отримує ключ входу.
- Сервер CRM збирає посилання з email оператора та ключем і ставить його в iframe.
- ConnectiveOne пускає оператора без пароля і відкриває потрібну частину панелі.
Крок 1. Увімкніть вбудовування
Налаштування → Операторська панель → Вбудовування в CRM.
- Увімкніть «Дозволити вбудовування операторської панелі в CRM».
- У полі «Домени CRM» вкажіть адресу вашої CRM, по одній на рядок:
https://crm.example.com. Для всіх піддоменів:https://*.example.com. Приймаються лише адресиhttps://. - Натисніть «Зберегти».
Поки вбудовування вимкнене або домену CRM немає в списку, браузер не покаже ConnectiveOne всередині CRM.
👉 Доступ до сторінки дає право ролі «Вбудовування в CRM» (Налаштування → Ролі → Операторська панель). «Перегляд» — побачити сторінку і стан ключа, «Редагування» — показати ключ, змінювати налаштування і перевипускати ключ.
Крок 2. Отримайте ключ входу
На тій самій сторінці, блок «Ключ входу без пароля»:
- «Згенерувати ключ» — створити ключ, якщо його ще немає.
- «Показати ключ» → «Скопіювати ключ» — забрати ключ у налаштування CRM.
- «Перевипустити ключ» — створити новий. Інтеграції зі старим ключем перестануть працювати, доки ви не заміните ключ у CRM.
🚨 Важливо: ключ один на інстанс — з ним можна увійти під будь-яким звичайним оператором без пароля. Ключ потрапляє в адресу iframe, тому його бачить кожен користувач CRM, якому відкривається вікно (див. Безпека). Вмикайте вбудовування лише для тих, кому довіряєте як операторам ConnectiveOne. Зберігайте ключ у захищених налаштуваннях сервера CRM (System Settings, Vault), не кладіть його в JavaScript сторінки і не пишіть у логи CRM.
Крок 3. Виберіть режим і скопіюйте код
У блоці «Код для вставки» виберіть, що вбудовуєте:
| Режим | Що бачить оператор | Куди ставити в CRM |
|---|---|---|
Уся панель (embed_mode=panel) |
Операторська панель повністю | Пункт меню CRM |
Лише черга чатів (embed_mode=queue) |
Чати без меню ConnectiveOne | Пункт меню або бічна панель CRM |
Чат з картки клієнта (embed_mode=chat) |
Лише чат із цим клієнтом | Вкладка, кнопка або попап на картці |
Для чату з картки виберіть канал і бота. Сторінка покаже готове посилання і код iframe з мітками {EMAIL}, {LOGIN_KEY}, {PHONE} — їх підставляє сервер CRM.
Параметри посилання
Посилання завжди веде на /autologin. Якщо відкрити /login, оператор побачить форму входу, а чат з картки не відкриється.
| Параметр | Обов'язковий | Що означає |
|---|---|---|
uk, en, … |
ні | Мова інтерфейсу. Перший параметр без значення: ?uk&user=…, а не uk= |
user |
так | Email оператора. Має збігатися з email його акаунта в ConnectiveOne. Акаунт має бути активним оператором без ролі адміністратора (див. Безпека) |
login_key |
так | Ключ входу з кроку 2 |
redirect_module |
так | Куди перейти після входу: OperatorPanelChats |
embed_mode |
ні | panel, queue або chat (див. крок 3). Без нього — уся панель |
init_dialog |
ні | Телефон клієнта, лише цифри. Відкриває чат із цим клієнтом |
init_dialog_channel |
з init_dialog |
Канал: telegram, whatsapp, viber, widget, telephony |
init_dialog_bot_id |
ні | ID бота. Без нього береться перший бот з цим каналом |
chat_room_id |
ні | Відкрити вже відому кімнату замість пошуку за телефоном |
👉 Старий параметр
hide_nav=1працює: зinit_dialogабоchat_room_id— якembed_mode=chat, без них — якembed_mode=queue.
Приклади посилань
Уся панель (пункт меню):
https://instancename.connectiveone.io/autologin?uk&user={EMAIL}&login_key={LOGIN_KEY}&redirect_module=OperatorPanelChats&embed_mode=panel
Черга чатів:
https://instancename.connectiveone.io/autologin?uk&user={EMAIL}&login_key={LOGIN_KEY}&redirect_module=OperatorPanelChats&embed_mode=queue
Чат з картки клієнта:
https://instancename.connectiveone.io/autologin?uk&user={EMAIL}&login_key={LOGIN_KEY}&redirect_module=OperatorPanelChats&embed_mode=chat&init_dialog={PHONE}&init_dialog_channel=telegram&init_dialog_bot_id=1
Код iframe:
<iframe
src="https://instancename.connectiveone.io/autologin?uk&user={EMAIL}&login_key={LOGIN_KEY}&redirect_module=OperatorPanelChats&embed_mode=panel"
title="Operator panel"
style="width:100%;height:100%;min-height:720px;border:0"
allow="microphone; camera; clipboard-read; clipboard-write"
></iframe>
Як CRM збирає посилання
Посилання збирає сервер CRM, коли відкриває сторінку або картку:
- Бере email поточного користувача CRM →
user. - Бере ключ із захищених налаштувань →
login_key. - Для картки бере телефон клієнта, лише цифри →
init_dialog. - Віддає браузеру готовий iframe.
Приклад на сервері (псевдокод):
params = {
"user": current_user.email,
"login_key": settings.get_secret("connectiveone.login_key"),
"redirect_module": "OperatorPanelChats",
"embed_mode": "chat",
"init_dialog": only_digits(contact.phone),
"init_dialog_channel": "telegram",
}
src = f"https://instancename.connectiveone.io/autologin?uk&{urlencode(params)}"
Що відбувається з чатом з картки
- Клієнт із таким телефоном є і в нього відкритий чат — оператор підключається до цього чату.
- Клієнт є, відкритого чату немає — створюється новий чат у вказаному каналі.
- Клієнта немає — створюється новий діалог, якщо на інстансі є бот із цим каналом.
Якщо вікно не відкрилося
| Що бачите | Причина |
|---|---|
| Форма входу ConnectiveOne | Відкрили /login замість /autologin, або бракує user, login_key чи redirect_module |
| Порожнє або заблоковане вікно | Вбудовування вимкнене або домену CRM немає в списку (крок 1) |
Помилка embed_disabled |
Вбудовування вимкнене |
Помилка Invalid key |
Ключ не збігся — його перевипустили або скопіювали з помилкою |
Помилка user not found |
Немає активного оператора з таким email, або під цим акаунтом ключем увійти не можна: адміністратор, роль із правом редагувати ролі, користувачів чи вбудовування, вимкнений в Active Directory |
Помилка too many requests |
Забагато спроб із неправильним ключем, зачекайте годину |
| Вхід не тримається, вікно просить увійти знову | Браузер блокує сторонні cookies (налаштування приватності, деякі браузери за замовчуванням) |
Безпека
- Ключ видно в браузері. Посилання збирає сервер CRM, але браузер отримує його разом із ключем в адресі iframe. Будь-який користувач CRM, якому відкривається вікно, може прочитати ключ в інструментах розробника браузера. Ключ також може лишитися в історії браузера і в журналах вебсерверів на шляху запиту. ConnectiveOne прибирає ключ з адреси одразу після відкриття вікна, але до цього моменту він уже побував у браузері.
- Ключем входять лише звичайні оператори. Відмова для адміністраторів (root і роль admin), для ролей, які можуть редагувати ролі, користувачів або сторінку «Вбудовування в CRM», для неактивних акаунтів і для акаунтів, яких немає або вимкнено в Active Directory.
- Вхід за ключем не питає код двофакторної автентифікації (2FA).
- Сесія, відкрита за ключем, живе стільки ж, скільки сесія після входу за паролем на цьому інстансі.
- Перевипуск ключа закриває новий вхід за старим ключем, але не вікна, які вже відкриті.
- Використовуйте тільки
https://. - Перегляд і перевипуск ключа записуються в журнал змін налаштувань.
- Якщо ключ міг потрапити до сторонніх — перевипустіть його.
Обмеження
- Email оператора в CRM має збігатися з email у ConnectiveOne.
- Для чату з картки потрібен телефон клієнта.
- Вбудовування залежить від cookies у сторонньому контексті: якщо браузер їх блокує, вхід не збережеться.
- Деякі CRM обмежують розмір або дозволи iframe.