Интегрируем web-телефон в свою систему

Мы уже писали, как и зачем интегрировать телефонию со своей CRM/ERP/Helpdesk системой. Теперь опишем, как это сделать еще проще, добавив на свой сайт web-телефон.
WebRTC виджет позволит звонить и принимать звонки из вашего web приложения, не устанавливая никаких программ и не делая никаких настроек.

up0wkkyspzedcnrj5vr3oyn-u28.jpeg

Что получится?


Множество CRM/ERP и прочих SaaS систем требуют интеграции с телефонией. WebRTC виджет это самый простой для пользователя вариант такой интеграции. Просто в углу браузера появляется веб-телефон, который может звонить и принимать вызовы. Выглядит он так.

jj7qrcbyitkqyyatffu197lencc.png

Как интегрировать?


Начать логично с авторизации. Чтобы были права на звонки, нужно авторизоваться по ключам — вашим (если система для своей компании) либо ключам ваших клиентов (если система для многих клиентов).

  1. Ваши пользователи регистрируются в сервисе, включают АТС, копируют ключи API из нашей в вашу систему. (Все это планируем также очень скоро автоматизировать). Это проделывается один раз для каждого аккаунта. Если вы разрабатываете систему для себя, то вообще один раз.
  2. При включении интеграции, после копирования ключа, нужно сопоставить пользователей облачной АТС и вашей системы (то есть, задать у какого сотрудника какой номер). Для этого в API есть метод /v1/pbx/internal/ через него вы загружаете список номеров АТС вашего клиента, просите клиента указать у какого его сотрудника какой номер в АТС и сохраняете у себя эту информацию. Пример этого кода:
getPbxInternal();
//your code to save $pbxInternal->numbers
 
$balance = $api->getBalance();
 
?> 

Установка кода на сайтПеред открытием страницы внутреннего интерфейса вашей системы, нужно запросить временный ключ (действует до 72 часов) через метод /v1/webrtc/get_key/. Далее добавляем виджет с этим ключом в ваш внутренний интерфейс:

 
getWebrtcKey($login)->key;
//your code to save $webrtcKey, expiration time 72 hours.
 
?>




















(Версия на 24.11.2020 актуальную версию можете скопировать в личном кабинете).
Вместо YOUR_KEY подставьте сгенерированный через API ключ; вместо YOUR_SIP подставьте ваш SIP-номер или полный логин внутреннего номера АТС, с которого будут совершаться звонки.

Обратите Внимание: Не размещайте виджет в открытом доступе в сети, иначе через ваш аккаунт сможет позвонить любой желающий.

Все — теперь ваши клиенты/сотрудники смогут звонить и принимать звонки из вашей системы. Также подробную инструкцию по настройке виджета вы сможете найти на нашем сайте.

Другие функции


Раз уж решили добавить интеграцию с телефонией, то логично получить от неё максимум. Для этого логично как минимум дать возможность вашим клиентам видеть статистику о звонке, прослушивать уведомление, совершать действия в системе при звонке (например, создавать лид/тикет/сделку).
Перечень основных функций для интеграции:

  • Звонки из интерфейса CRM в один клик.
  • Всплывающее уведомление о входящих/исходящих звонках с информацией о звонящем, ссылкой на карточку клиента.
  • Статистика звонков, аудиозаписи звонков в карточке клиента.
  • Автоматическое создание контактов/лидов/сделок при звонке от нового клиента.
  • Автонаправление входящего звонка от существующего клиента на ответственного менеджера
  • Отображение имени клиента на вашем IP-телефоне при входящем звонке.
  • Напоминания о пропущенных звонках.
  • Использование собственного черного списка для входящих звонков.
  • Добавление интеграции в личный кабинет Zadarma.


Описание реализации всех этих функций вы можете найти в инструкции по интеграции телефонии.
Большая часть интеграции реализована на Webhook, то есть вы получаете уведомление при каждом звонке либо событии в АТС/СМС/коллтрекинге.

© Habrahabr.ru