Встраивание мессенджеров в собственную систему разработчика
Telegram link Новости Phone +7 495 25 506 20

Встраивание мессенджеров в собственную систему разработчика

WEB чат имеет 2 варианта интеграции в интерфейс отраслевой системы:

1. Упрощенный. Интеграция через ссылку-url

Установите ссылку на диалог внутри отраслевой системы, чат с клиентом откроется в отдельном окне или вкладке.

Пример ссылки на диалог: https://chat.chatapp.online?crm[phones][0]=79585826158&api[license_id]=15006&api[messenger_type]=grayWhatsApp

параметры ссылки:

  • [phones][0]=79585826158 - номер телефона клиента;
  • &api[license_id]=15006 - номер канала (лицензии);
  • &api[messenger_type] - мессенджер.

При открытии, ChatApp WEB потребует логин и пароль, один раз при входе в систему.

Если задать в ссылку параметр &api[access_token], то ChatApp WEB откроется без требования логина и пароля.

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

ссылка на диалог ChatApp

 

2. Встраивание ChatApp WEB через iFrame (в интерфейс системы разработчика)

Любая программная система может интегрировать в свой интерфейс ChatApp WEB через iFrame.

Данный вариант интеграции отличается от интеграции через ссылку url лишь в том, что в текущем варианте ссылка вставляется в iFrame.

Для удобства можно генерировать ссылку из массива полей.

Приложение разработчика формирует массив полей:

$fields = [
    'api' => [
        'access_token' => '$2y$10$3QNdSGJJarGvzMX277775777777WaI4QRW5Fw.NCWkbNONufjlEI.m',
        'license_id' => 15006,
        'messenger_type' => 'grayWhatsApp',
    ],
    'crm' => [
        'phones' => [
            '79954545454',
            '79985554544',
            '79985554513',
        ]
    ],
];

Далее необходимо преобразовать массив полей в строку для передачи в iframe как GET параметры:
$query = http_build_query($fields);

Код подключения iframe:
<iframe
       id="webchat"
       src="https://chat.chatapp.online/?<?=$query?>"
       sandbox="allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-popups-to-escape-sandbox allow-presentation allow-same-origin allow-scripts allow-top-navigation allow-top-navigation-by-user-activation"
       allow="camera https://chat.chatapp.online/; microphone https://chat.chatapp.online/; clipboard-read https://chat.chatapp.online/; clipboard-write https://chat.chatapp.online/"
       width="100%"
       height="99%"
       style="border: 0;" >
</iframe>

Описание полей

api[access_token]Токен доступа, см. метод Авторизация.
api[license_id]Номер канала (лицензии). Используется для фильтрации списка лицензий.
api[messenger_type]Мессенджер. Используется для фильтрации списка мессенджеров.
crm[phones]Массив телефонов. Используется для фильтрации диалогов.

Все поля необязательные.

Примечание:
ChatApp WEB используя токен api (access_token), который передается из crm, получает свою новую независимую пару токенов через спец. метод api. Поэтому он никак не сломает токен api crm. И далее веб-чат сам управляет свежестью своего токена (рефрешит при необходимости).
Важно: передать в ChatApp WEB живой токен api (access_token) в момент открытия фрейма.

Пример возможной интеграции в стороннюю систему

Встройка мессенджеров в систему
 

Помощь интеграторов