Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Примеры запросов на Webitel API

Table of Contents

1. Дайлеры.

1.1. Загрузка абонентов в дайлер.

...

Warning
titleВажно
  • CRM должен сохранять идентификатор загруженного абонента для дальнейшего использования, например, при отмене прозвона.
  • Для отображения названия корзины оператору при входящем звонке в массиве varialblesобязательно нужно передавать название корзины(bucket_name).
  • Для открытия карточки клиента в CRM по ссылке в массиве varialbles обязательно нужно передавать полную ссылку на карточку этого клиента. Название переменной - {link}.

...

Code Block
languagejs
titleCreate Agent Skills
{
  "agent_id": "${agent_id}",	// идентификатор оператора. См. "Получение списка операторов"
  "capacity": 0,				// потенціалпотенциал (рівеньуровень володіннявладения навичкоюнавыком). МожливіВозможные значеннязначения: 0-100
  "enabled": true,				// стансостояние навичкинавыка (вонаон можеможет бутибыть увимкненавключен/вимкенавыключен)
  "skill": {
    "id": "${id}" 				// ідентифікаторидентификатор навичкинавыка зиз довідникасправочника Webitel. ДивСм. "ОтриманняПолучение спискусписка навичокнавыков Webitel"
  }
}

3.5

...

. Удаление навыка оператора.

https://swagger.webitel.com/#/AgentSkillService/AgentSkillService_DeleteAgentSkill

Обов'язкові параметриОбязательные параметры:

  • ідентифікатор идентификатор оператораідентифікатор навички в ;
  • идентификатор навыка у оператора (ДивСм. "Отримання навичок Получение навыков оператора")

3.6

...

. Редактирование навыка оператора.

https://swagger.webitel.com/#/AgentSkillService/AgentSkillService_PatchAgentSkill

Обов'язкові параметриОбязательные параметры:

  • ідентифікатор идентификатор оператораідентифікатор навички в ;
  • идентификатор навыка у оператора (ДивСм. "Отримання навичок Получение навыков оператора")


Code Block
languagejs
titleUpdate Agent Skills
{
  "agent_id": "${agent_id}",	// ідентифікаторидентификатор оператора
  "capacity": 0,   				// потенціалпотенциал (рівеньуровень володіннявладения навичкоюнавыком). МожливіВозможные значеннязначения: 0-100
  "enabled": true, 				// стансостояние навичкинавыка (вонаон можеможет бутибыть увімкненавключен/вимкненавыключен)  
  "id": "${id}",  				// ідентифікаторидентификатор навичкинавыка оператора, якакоторый редагуєтьсяредактируется
  "skill": {
    "id": "${id}",  			// ідентифікаторидентификатор навичкинавыка зиз довідникасправочника Webitel. ДивСм. "ОтриманняПолучение спискусписка навичокнавыков Webitel". ЯкщоЕсли заповненезаполнено, то поточнапоточный навичканавык буде заміненазаменен.
  }
}

4.

...

Постобработка.

4.1. Управление постобработкой.

...

 

https://swagger.webitel.com/#/MemberService/MemberService_AttemptCallback

Після завершення дзвінка оператор повинен відправити статус обробки дзвінка (постобробкаПосле завершения звонка оператор должен отправить статус обработки звонка (постобработка) з CRM в Webitel.

Можливі значення параметру Возможные значения параметра status:

  • success - успішний додзвін. Повторної спроби успешный дозвон. Повторной попытки дозвона не будебудет.
  • cancel - відмненийотмененный. Повторної спроби Повторной попытки дозвона не будебудет.
  • будь-яке інше передане значення (якщо таке потрібно для статистики) буде вважатися системою як статус abandoned.Буде повторна спроба дозвону згідно налаштувань любое другое переданное значение (если оно необходимо для статистики) будет считаться системой как статус abandoned.Будет повторная попытка дозвона согласно настройкам дайлера. 


Code Block
languagejs
titleAttempt Callback
{
  "agent_id": "${agent_id}",  					// ідентифікаторидентификатор оператора
  "attempt_id": "${attempt_id}", 				// ідентифікаторидентификатор спробипопытки дозвонудозвона дайлера, по якійкоторой передаєтьсяпередается результат постобробкипостобработки. ОтримуєтьсяПолучается зиз RabbitMQ
  "description": "${description}",  			// коментаркомментарий, залишенийоставленный оператором підпри час постобробкипостобработке дзвінказвонка
  "display": true, 								// відповідаєотвечает за прикріпленняприкрепление номеруномера відображенняотображения док цьогоэтому абонентаабоненту
  "exclude_current_communication": true,  		// при значеннізначении true на поточнийтекущий засібспособ зв'язкусвязи більшебольше не будебудет дзвінківзвонков
  "expire_at": "${expire_at}", 					// вказуєуказывает часвремя, коликогда видалитиудалить абонента зс продзвонупрозвона (Unix time)
  "min_offering_at": "${min_offering_at}",		// timestamp значеннязначение конкретного часувремени перезвона дайлером в таймзонітаймзоне UTC. КалендарКалендарь дайлера маєимеет более вищийвысокий пріоритетприоритет. ЯкщоЕсли вказанийуказанное тутздесь часвремя не входитьвходит в робочийрабочее часвремя дайлера, то повторнаповторная 		попытка спробабудет будесделана зробленав врабочее робочийвремя часс знаиболее найвищимвысоким пріоритетомприоритетом.
  "status": "${status}", 						// статус спробипопытки
  "variables": {
    "additionalProp1": "${additionalProp1}",
    "additionalProp2": "${additionalProp2}",
    "additionalProp3": "${additionalProp3}"
  }
}

5. Другое.

...

5.1

...

. Получение списка очередей.

https://swagger.webitel.com/#/QueueService/QueueService_SearchQueue

6. История звонков.

...

6

...

.1. Подключение к базе данных Webitel. 

В случае разворачивания Webitel On-Site, отримання даних по дзвінках та операторах можливе через підключення до получение данных по звонкам и операторам возможно через подключение к БД Webitel (PostgreSQL 14).

Посилання Ссылка на опис структури описание структуры БД: Database SDK

6.2.

...

Получение истории звонков. 

https://swagger.webitel.com/#/CallService/CallService_SearchHistoryCall


В базі даних базе данных в таблиці таблице storage.files зберігається посилання на запис розмови сохраняется ссылка на запись разговора

id  |                        name                        |  size   | mime_type  |           properties            |              instance              |                 uuid                 | profile_id |  created_at   | removed | not_exists | domain_id
-----+----------------------------------------------------+---------+------------+---------------------------------+------------------------------------+--------------------------------------+------------+---------------+---------+------------+-----------
   1 | 8183fb7a-65d9-4d4c-bea2-3990f7e742d8_recordFile    |   17136 | audio/mpeg | {"directory""1/2021/5/17/18"} | storage-bsfob4a9rtdoue3mwanooxikpc | 8183fb7a-65d9-4d4c-bea2-3990f7e742d8 |            | 1621264377892 |         |

В полі uuid знаходиться унікальний ідентифікатор дзвінка.За допомогою HTTP REST API є можливість по UUID звонка отримати список всіх зв'язаних файлів (це не тільки записи розмов (масив поле uuid находится уникальный идентификатор звонка.

при помощи HTTP REST API существует возможность по UUID звонка получить список всех связанных файлов (не только записи разговоров (массив files)). 

Далі Далее по ідентифікатору файла можна отримати конкретний идентификатору файла можно получить конкретный файл.

6.3.

...

Получение записей по id файлов.

GET https://:WEBITEL_SERVER/api/storage/recordings/:FileID/stream?access_token=:TOKEN

:WEBITEL_SERVER - сервер Webitel.

Обов'язкові параметриОбязательные параметры:

  • :FileID - ідентифікатор файлу, отриманий з идентификатор файла, полученный с CallService_SearchHistoryCall;
  • :TOKEN - токен.

6.4.

...

Поиск звонков по значению переменной.

GET https://:WEBITEL_SERVER/api/calls/history?page=1&size=10&number=110&variables[Company]=eb0b368c39305630464fa34c2af0e45f

:WEBITEL_SERVER - сервер Webitel.

Обов'язкові параметриОбязательные параметры:

  • number - номер телефонутелефона. Пошук здійснюється Поиск осуществляется по from_number, to_number, destination.;
  • Company - назва змінної название переменной (метаданіметаданные);
  • page - сторінка, якщо багато записівстраница, если много записей;
  • size - максимальна кількість записівмаксимальное количество записей.