Интеграция с ДБО
Описание
iQChannels содержит ряд инструментов, которые позволяют производить тесную интеграцию с системами ДБО.
Интеграция с ДБО может быть выполнена в части встраивания чата в:
1. Интернет-банкинг - встраивание виджета в неавторизованную и авторизованную зону Интернет-банкинга для взаимодействия с клиентами.
2. Мобильный банкинг - встраивание SDK в нативные мобильные приложения или виджета в гибридные мобильные приложения.
3. Рабочее место оператора - опциональное встраивание виджета рабочего места оператора в консоль управления системой ДБО.

На схеме показана омниканальная работа платформы со всеми цифровыми клиентскими каналами в режиме единого окна в CRM. Главные компоненты ДБО и интеграционные инструменты iQChannels выделены цветом.
Информация о способах интеграции с CRM описана здесь.
Встраивание в интернет банкинг
Виджет для сайта \ интернет банкинга и инструкция по установке и интеграции расположена здесь:
- SDK для Web: https://github.com/iqstore/iqchannels-widget
Встраивание в мобильный банкинг
SDK для нативных мобильных приложений и инструкция по установке и интеграции расположены здесь:
- SDK для iOS: https://github.com/iqstore/iqchannels-swift
- SDK для Android: https://github.com/iqstore/iqchannels-kotlin
Авторизация клиентов в ДБО
Для того, чтобы в iQChannels операторы могли работать с авторизованными клиентами и видеть их данные, необходимо подключить авторизацию клиентов в ДБО. Идентификация клиентов и получение карточки из ДБО (или любой другой системы) реализовывается с помощью специального протокола авторизации клиентов Auth API.
Ознакомиться с протоколом авторизации можно в разделе Протокол авторизации клиентов.
Встраивание окна чата iQChannels в консоль администратора ДБО
Для построение режима единого окна, в iQChannels реализован готовы виджет АРМ оператора, который можно встроить в консоль администратора ДБО в различных вариантах. При необходимости можно использовать несколько вариантов в зависимости от контекста приложения.
Вариант №1 - Приложение чата в одном из разделов ДБО
Данный вариант подразумевает минимальную связанность двух продуктов и при открытии чата, системе ДБО нет необходимости знать об открытых обращениях клиентов.

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

Пример встраивания чата iQChannels в консоль администратора ДБО:
...
<!-- Код 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>
...
Подробнее о встраивании и о возможных событиях для ДБО в разделе PostMessage API
Вариант №2 - Плавающее приложение чата в приложении ДБО
Данный вариант встраивания отличается от варианта № 1 тем, что iframe, в который встраивается чат, является плавающим окном и может быть свернут или не закрывается при переходах между разделами ДБО.

Реализация плавающих свойств iframe и механизма сворачивания и изменения размеров чата лежит на стороне ДБО.
В данном варианте ДБО подписывается на дополнительные события iQChannels, для реализации автоматического раскрытия и закрытия карточки клиента в родительском окне ДБО при открытии \ закрытии обращения в чате (open_client_from_ticket, close_client_from_ticket).
Подробнее о встраивании и о возможных событиях для ДБО в разделе PostMessage API
Вариант №3 - Чат-диалог в карточке клиента ДБО
В данном варианте подразумевается что чат можно будет открыть непосредственно из карточки клиента в ДБО. В этом случае iQChannels должен знать идентификаторы клиентов в ДБО, либо система ДБО должна знать идентификаторы клиентов в iQChannels. Для этого необходимо не только встроить виджет чата, но и подключить соответствующее API (см. раздел 4. Передача событий и других активностей). Все API для организации более тесной интеграции описана в следующих разделах данной статьи.
В данном режиме при инициализации чата iQChannels сразу будет открываться окно диалога с клиентом.

Пример встраивания чата iQChannels в ДБО
...
<!-- Код iFrame для встраивания на страницу -->
<iframe src="https://iqchannels.iqstore.ru/" width="100%" height="700" id="iQChannels"></iframe>
...
<!-- скрипт для работы с чатом -->
<script>
// с данным режимом сразу будет открываться окно диалога с клиентов при переходе на страницу.
window.onload = function () {
openChat();
}
function openChat () { // Если требуется открыть диалог с клиентом
const clientId = айди нужного клиента
const ticketId = либо айди тикета
const crmID = либо crmID клиента
можно всё вместе
const myIframe = document.getElementById('iQChannels');
if (myIframe) {
myIframe.contentWindow.postMessage({
'Type': 'open_iframe_ticket',
'OpenTicket': {
'ClientId': clientId,
'TicketId': ticketId,
'CRMID': crmID
}
}, '*');
}
}
</script>
...
Подробнее в разделе PostMessage API
Передача событий и других активностей
В платформе iQChannels реализован такой инструмент, как Webhooks API, который позволяет внешним, по отношению к iQChannels, системам подписываться на события чата iQChannels. Webhooks API позволяет ДБО и другим внешним системам получать вызовы со стороны iQChannels на события в публичном API и быть в курсе о наличии открытых обращений, истории взаимодействия с клиентом, используемых каналах связи, сегментах обслуживания, о принявшем обращение операторе и другой информации, связанной с обслуживанием клиента.
Подробнее в разделе Webhooks API.
Получение данных из ДБО и других внешних систем в сценарии чат-бота
В случаях когда чат-боту iQBot необходимо получить данные из внешней системы, в комплексе инструментов iQBot есть возможность конструировать интеграции с внешними системами. Такие интеграции позволят боту получать необходимую информацию из внешних источников онлайн в рамках выполняемого сценария обслуживания клиента.
Для предоставления документации по iQBot обратитесь в службу технической поддержки iQStore.