Інтеграція згідно протоколу HTTP(S)

Інтеграція згідно протоколу HTTP(S)

ATC Vega активний участник обміну даними

АТС може стати активним учасником обміну повідомленнями з використанням протоколу HTTP(S) завдяки WebHook. Налаштувати WebHook(s)можливо, перейшовши в розділ Налаштування – Інтеграція - Інші CRM ситеми. В даному розділі необхідно вказати адресу Вашого ресурсу для отримання інформації про клієнта і  передачі подій про дзвінок. Нижче наведено описи всіх можливостей WebHook.

 

 

 

Авторизація АТС Vega у Вашій CRM системі

 Ми рекомендуємо перевіряти запити, які надходять в Вашу CRM систему, звіряючи віддалену IP адресу.

 Приклад фильтру на Java: @Override

 public void doFilter(final ServletRequest request, final ServletResponse response, final FilterChain filterChain) throws IOException, ServletException

 

 {

        if (request.getRemoteAddr().equals("89.184.65.208"))

        {

            filterChain.doFilter(request, response);

        }

    }

 

Приклад на PHP:

  

if ($_SERVER['REMOTE_ADDR'] !== '89.184.65.208') {

 

   die(sprintf('Forbidden%s', PHP_EOL));

 

 }

  

 

Отримання імені контакту з CRM системи

При вхідному чи вихідному дзвінку, АТС Vega повинна отримати ім’я клієнта з CRM системи, потім встановити ім’я для відображення імені на дисплеї телефону і в спливаючій картці клієнта. Для цієї задачі необхідно реалізувати сервіс повернення даних про абонента, за номером телефону абонента у Вашій CRM. Даний запит не виконується для всіх вхідних і вихідних дзвінків і не виконується для внутрішніх дзвінків.

  

Запит

Протокол: HTTP чи HTTPS (Залежно від url який ви задали в Налаштуваннях). Тип: POST

Параметри:

request – назва запиту. Може застосовуватися у випадку, якщо один і той URL у Вас в CRM відповідає за роботу над різними запитами;

otherLegNum — номер телефону абонента,який телефонує до Вас в компанію, або абонента якому телефонує Ваш співробітник.

trunkNum – номер телефону компанії, на який телефонує клієнт ( поле встановлюється лише при вхідному виклику)

Таким чином, при вхідному чи вихідному виклику в компанію, АТС Vega може відправляти запит на сервер CRM систмеми. Дані, які АТС Vega відправляє до CRM:

  

{

  request: "call.settings", otherLegNum: "+380442246595",

 

trunkNum: "0800218500"

 

}

  

Відповідь

 

Ответ

  

Код: 200 — вразі успішного виконання;

 

Код: 200 – вразі успішного виконання;

 

Приклад даних, які повертаються з CRM, дивіться нижче.

 

Якщо контакт наявний в CRM системі.

 

{

 

otherLeg: {

 

name: "Иван Иванов",

 

url: "http://crm.com/contacts?id=1", urlText: "Иван Иванов",

 

newEntry: false, responsibleEmployeeExt: "001",

 

responsibleEmployeeEmail: "[email protected]"

 

}

 

}

  

 Якщо контакт відсутній в CRM системі.

 

a.

 

{

 

otherLeg: {

 

name: null,

 

url: "http://crm.com/contacts/new?phone=%2B380442246595", urlText: "Добавить контакт",

 

newEntry: true, responsibleEmployeeExt: null, responsibleEmployeeEmail: null

 

}

 

або

  

b.

 

{

 

}

 

де,

 

}

 

 otherLeg: null

 

 name – і’мя клієнта, якому належить переданий номер, null – у випадку якщо по даному номеру нічого не знайдено;

 

 url – посилання на відкриття картки клієнта, який був знайдений за номером телефону або на створення нового, якщо контакт не був знайдений (при цьому бажано додати параметр phone з номером телефону, так як гарним номер телефону повинен бути встановленим в картці клієнта при кліку на сповіщення).

 

urlText – текст посилання для відкриття картки клієнта. Якщо контакт існує, найкраще встановити його і’мя в даному полі. Якщо контакт не існує, можна задати значення «Додати контакт»;

 

newEntry – прапорець, який вказує що контакт новий (значення true) або існуючий (значення false). Дане поле не є обов'язковим, значення за замовчуванням false. Поле можна не встановлювати і замість цього, для контактів які не існують, повертати варіант відповіді b. Виняток: даний варіант, не підходить, якщо для роботи Ви використовуєте розширення Google Chrome від Vega, так як в даному випадку потрібно щоб були встановлені поля url (посилання) і urlText (текст посилання) для створення нового контакту.

 

responsibleEmployeeExt – внутрішній номер відповідального співробітника, що використовується для маршрутизації викликаданому співробітнику у випадку виклика посійного клієнта;

 

responsibleEmployeeEmail e-mail відповідального співробітника, використовується для маршрутизації виклика даному співробітнику в разі виклику постійного клієнта. Поле responsibleEmployeeExt вважається більш пріоритетним і маршрутизація відбудеться за нього, якщо воно встановлено.

 

 

 

Примітка

 

АТС Vega кешує результати відповіді сервера, отже даний запит може відбуватися не в результаті кожного виклика, а лише після того як останні отримані дані будуть вважатися не валідними. Проміжок часу на який зберігається інформація про контакт:

 

Для нових контактів - до 1 хвилини;

 

Для існуючих контактів - до 5 хвилин.

  

 

Примітка

Для отримання інформації про користувачів (співробітників компанії), зверніться до розділу «Користувачі» даної документації.

Завантажити повну інструкцію