Перейти к основному содержимому
Версия: 4.11-refactoring

Интеграция с CRM

Описание​

iQChannels содержит ряд инструментов, которые позволяют производить тесную интеграцию с CRM и другими учетными системами. Инструменты платформы позволяют выстраивать как одностороннюю, так и двустороннюю интеграцию.

Интеграция с CRM может быть выполнена в части:

  1. Построение единого окна — встраивание виджета в CRM для общения с клиентами в режиме единого окна из CRM.

  2. Базового обмена данными — идентификация, авторизация, получение карточки и продуктов клиента, получение продуктовой витрины и получение событий клиента (открытие обращений, отправка сообщений и прочее).

  3. Полной интеграции — реализация собственного окна чата в CRM на основе внутреннего API платформы.

CRM - scheme.png

На схеме показана омниканальная работа платформы со всеми цифровыми клиентскими каналами в режиме единого окна в CRM. Кроме встраивания виджета, подключено несколько интеграционных API, отвечающих за:

  1. идентификацию клиента
  2. авторизацию и получение карточки клиента
  3. получение продуктов клиента
  4. получение продуктовой витрины
  5. отправка событий клиента (открытие обращений, отправка сообщений и прочее)

Авторизация клиентов в CRM / ДБО​

Чтобы в iQChannels операторы могли работать с авторизованными клиентами и видеть их данные, необходимо подключить авторизацию клиентов в ДБО или CRM.

Без идентификации — авторизованные каналы​

Если в качестве канала обращения используется авторизованная зона мобильного или веб-приложения, то идентификация клиентов и получение карточки из CRM, ДБО или любой другой системы реализуется с помощью специального протокола авторизации клиентов Auth API. Авторизация клиентов происходит автоматически при наличии токена, полученного из родительского приложения, в которое встроен чат (мобильное приложение или веб-приложение).

Ознакомиться с протоколом авторизации можно в разделе Протокол авторизации клиентов.

С идентификацией — неавторизованные каналы​

Если в качестве канала обращения используется неавторизованная зона приложения, сайта или социальная сеть, то перед авторизацией клиента необходимо выполнить его идентификацию. Для идентификации клиентов в платформе iQChannels реализован такой инструмент, как Search client API, который позволяет идентифицировать клиента и получить его уникальный ключ. С данным ключом выполняется авторизация клиента с получением его карточки из внешней системы.

Для выполнения процесса идентификации платформе iQChannels потребуется первичный идентификатор (номер телефона, идентификатор в социальной сети, имя аккаунта, email и прочее), который будет получен из карточки клиента iQChannels. А если первичного идентификатора не окажется в карточке, то система автоматически запросит данную информацию у клиента (либо идентификатор, либо все данные по форме запроса персональных данных). Для разных каналов предусмотрены разные идентификаторы, а для некоторых каналов есть возможность настройки типа идентификатора.

image-2024-3-20_15-4-31-1.png

Подробнее о протоколе идентификации в разделе Search client API.

Встраивание окна чата iQChannels в CRM​

Для построения режима единого окна, в iQChannels реализован готовый виджет АРМ оператора, который можно встроить в CRM в различных вариантах. При необходимости можно использовать несколько вариантов в зависимости от контекста приложения.

Вариант №1 — Приложение чата в одном из разделов CRM​

Данный вариант подразумевает минимальную связанность двух продуктов: при открытии чата CRM нет необходимости знать об открытых обращениях клиентов.

photo_2023-11-10_23-40-39.jpg

Окно чата iQChannels встраивается как мини-приложение, и при его инициализации вся работа происходит в нем. При этом из окна рабочего места оператора iQChannels остается возможность открыть карточку клиента в CRM. В этом случае CRM получит событие open_client и сможет загрузить карточку клиента.

image-2023-11-13_12-16-34.png

Пример встраивания чата iQChannels в CRM:

...
<!-- Код iFrame для встраивания на страницу -->
<iframe src="https://iqchannels.iqstore.ru/" width="100%" height="700" id="iQChannels"></iframe>
...
<!-- скрипт для работы с чатом -->
<script>
function openDialog(){
var myIframe = document.getElementById("iQChannels");
if (myIframe){
myIframe.contentWindow.postMessage({
"Type": "write_to_client",
"WriteToClient": {
"Search": "Строка для поиска клиента по имени, ИНН, ID в ДБО или CRM"
}
}, '*');
}
}
</script>
...
<button onclick="openDialog()">Открыть поиск</button>
...

Подробнее о встраивании и о возможных событиях для CRM в разделе PostMessage API

Вариант №2 — Плавающее приложение чата в приложении CRM​

Данный вариант встраивания отличается от варианта №1 тем, что iframe, в который встраивается чат, является плавающим окном и может быть свернут или не закрывается при переходах между разделами CRM.

image-2023-11-13_12-29-58.png

Реализация плавающих свойств iframe и механизма сворачивания и изменения размеров чата лежит на стороне CRM.

В данном варианте CRM подписывается на дополнительные события iQChannels, для реализации автоматического раскрытия и закрытия карточки клиента в родительском окне CRM при открытии / закрытии обращения в чате (open_client_from_ticket, close_client_from_ticket).

Подробнее о встраивании и о возможных событиях для CRM в разделе PostMessage API

Вариант №3 — Чат-диалог в карточке клиента CRM​

В данном варианте подразумевается, что чат можно будет открыть непосредственно из карточки клиента в CRM. В этом случае iQChannels должен знать идентификаторы клиентов в CRM, либо CRM система должна знать идентификаторы клиентов в iQChannels. Для этого необходимо не только встроить виджет чата, но и подключить соответствующее API (см. раздел Передача событий и других активностей). Все API для организации более тесной интеграции описаны в следующих разделах.

Диалог открывается сообщением open_iframe_ticket по одному из идентификаторов. Применяется приоритет: сначала TicketId, при его отсутствии — ClientId, при его отсутствии — CrmClientId (по последнему обращению клиента; если обращений нет, создается новое).

В данном режиме при инициализации чата iQChannels сразу будет открываться окно диалога с клиентом.

photo_2023-11-10_23-40-39-2 - 2.png или photo_2023-11-10_23-40-39-2.jpg

Пример встраивания чата iQChannels в CRM

...
<!-- Код iFrame для встраивания на страницу -->
<iframe src="https://iqchannels.iqstore.ru/" width="100%" height="700" id="iQChannels"></iframe>
...
<!-- скрипт для работы с чатом -->
<script>
// с данным режимом сразу будет открываться окно диалога с клиентом при переходе на страницу.
window.onload = function () {
openChat();
}
function openChat () { // Если требуется открыть диалог с клиентом
const clientId = 123; // id клиента в iQChannels (можно опустить, если передается TicketId или CrmClientId)
const ticketId = 456; // id обращения в iQChannels (при наличии)
const crmClientId = "00234"; // id клиента в CRM (если известен)
const myIframe = document.getElementById('iQChannels');
if (myIframe) {
myIframe.contentWindow.postMessage({
'Type': 'open_iframe_ticket',
'OpenTicket': {
'ClientId': clientId,
'TicketId': ticketId,
'CrmClientId': crmClientId
}
}, '*');
}
}

</script>
...

Подробнее в разделе PostMessage API

Передача событий и других активностей​

В платформе iQChannels реализован такой инструмент, как Webhooks API, который позволяет внешним, по отношению к iQChannels, системам подписываться на события чата iQChannels. Webhooks API позволяет CRM, ДБО и другим внешним системам получать вызовы со стороны iQChannels на события в публичном API и быть в курсе о наличии открытых обращений, истории взаимодействия с клиентом, используемых каналах связи, сегментах обслуживания, о принявшем обращение операторе и другой информации, связанной с обслуживанием клиента.

Подробнее в разделе Webhooks API.

Получение списка персональных менеджеров из CRM​

iQChannels позволяет выделить и закрепить за клиентом персонального менеджера, который будет его обслуживать. Назначение персональных менеджеров можно выполнять как в ручном режиме, так и в автоматизированном режиме, получая данные из внешней системы CRM или ДБО. В автоматизированном режиме синхронизации iQChannels периодически запрашивает список персональных менеджеров и их клиентов и обновляет соответствующие связи. Параметры синхронизации настраиваются в разделе «Внешние системы» в сегменте.

Подробнее в разделе PersMgr Sync API.

Получение данных из внешних систем в сценарии чат-бота​

В случаях когда чат-боту iQBot необходимо получить данные из внешней системы, в комплексе инструментов iQBot есть возможность конструировать интеграции с внешними системами. Такие интеграции позволят боту получать необходимую информацию из внешних источников онлайн в рамках выполняемого сценария обслуживания клиента.

Для предоставления документации по iQBot обратитесь в службу технической поддержки iQStore.

Построение сложных интеграций внешних систем с чатом​

iQChannels построена на базе открытого API, который позволяет решать самые сложные задачи интеграции нескольких информационных систем.

Подробнее в разделе Internal API