Наверх
Подписаться

Импорт звонков из внешней АТС

Как это работает

Если вы желаете использовать собственные телефонные номера, настроенные в Вашей АТС, для отслеживания источников звонков, Calltouch может с легкостью интегрироваться с ней.

Для настройки интеграции вам необходимо отправить заявку вашему личному аккаунт-менеджеру Calltouch либо на почту info@calltouch.net. Укажите в заявке, что вам необходимо получить логин и токен к АТС Calltouch, чтобы импортировать в нее звонки из своей АТС. Далее мы произведем необходимые настройки с нашей стороны и вышлем вам авторизационные данные (логин и токен), по которым вы сможете отправлять http-запросы в нашу АТС и создавать звонки в статистики.

Таким образом, после завершения звонка на ваш номер, ваша АТС будет должна отправлять http-запрос в наш сервис, содержащий всю информацию о поступившем звонке, а Calltouch на своей стороне будет склеивать эту информацию со своими данными о посетителе на сайте, которому был выделен в этот момент времени номер, на который поступил звонок. Таким образом Calltouch установит источник звонка.

 

Отправка запроса на импорт звонка в Calltouch

HTTP-запрос

https://ats.calltouch.ru/event-service/platform/{ATS_CODE}/inbound-call

где, {ATS_CODE} - логин АТС в Calltouch, предоставляется по заявке вашему личному аккаунт-менеджеру Calltouch либо на почту info@calltouch.net.

Поддерживаемые методы отправки: GET.

Передаваемые параметры

Параметр Описание Формат / Значение Обязательный
model Модель обработки вызова telemirfact, sessionfact Да
apikey 

API ключ, предоставляется по заявке вашему личному аккаунт-менеджеру Calltouch либо на почту info@calltouch.net.

advice_ver2.png Это не тот же самый API-ключ, который вы можете получить в настройках API личного кабинета Calltouch.

- Да
callid

Уникальный идентификатор звонка в вашей АТС.

advice_ver2.png Переданный вами ID звонка из вашей АТС можно впоследствии использовать в параметре callreferenceId API-метода выгрузки звонков.

- Да
callerid  Номер вызывающего абонента (АОН). - Да
ctSessionId ID нашей сессии Calltouch. Пользователь, отправляющий данный запрос, должен заранее получить ID нашей сессии с сайта. Целое число Да, если model=sessionfact
siteId ID сайта в Calltouch. Целое число Да, если model=sessionfact
service В этом параметре вы можете передать то, что будет отображаться в Журнале звонков в качестве номера, на который звонил клиент (или заказывал обратный звонок). Любые символы, максимум 20. Да, если model=sessionfact
phonenumber 

Отслеживаемый номер, на который позвонили (подменный номер, подключенный к Calltouch).

- Да, если model=telemirfact
destphonenumber 

Отслеживаемый номер, на который позвонили (подменный номер, подключенный к Calltouch).

advice_ver2.png Это тот же самый номер, который вы отправили в phonenumber выше. Особенности АТС - просто отправляйте его еще раз в этом параметре :)

  Да, если model=telemirfact
date  Дата/время вызова. YYYY-MM-DD HH:MI:SS Да
duration  Полная длительность вызова, в секундах. - Да
waitingtime  Время ожидания ответа оператора, в секундах. - Да
status  Статус завершения вызова. successful, unsuccessful Да
clientdtmf  Тоновые dtmf-сигналы со стороны клиента. Могут быть использованы для тегирования звонков в ЛК. - Нет
operatordtmf  Тоновые dtmf-сигналы со стороны оператора. Могут быть использованы для тегирования звонков в ЛК. - Нет
callrecordurl  Ссылка на запись разговора в формате mp3. http url Нет

 

Создание звонка по номеру телефона клиента и дате/времени звонка

Вы можете создавать звонки в Calltouch по номеру телефона клиента и дате/времени звонка. Для этого используйте параметр model=telemirfact и передавайте соответствующие значения.

Пример заполненных параметров

  • model=telemirfact
  • apikey=dL9juaKJnm4kSNzDhHIxtgeb9ZCxRoDE
  • callid=dfjhvbskdjfvlsdkfjb1233443
  • callerid=79855895281
  • phonenumber=78126007428
  • destphonenumber=78126007428
  • date=2019-02-27%2012:03:00
  • duration=30
  • waitingtime=10
  • status=successful
  • clientdtmf=567,789
  • operatordtmf=123,456
  • callrecordurl=https://test.ru/calltouch/mp3/dialup.mp3

 

Пример HTTP-запроса

https://ats.calltouch.ru/event-service/platform/{ATS_CODE}/inbound-call?model=telemirfact&apikey=dL9juaKJnm4kSNzDhHIxtgeb9ZCxRoDE&callid=dfjhvbskdjfvlsdkfjb1233443&callerid=79855895281&phonenumber=78126007428&destphonenumber=78126007428&date=2019-02-27%2012:03:00&duration=30&waitingtime=10&status=successful&clientdtmf=567,789&operatordtmf=123,456&callrecordurl=https://test.ru/calltouch/mp3/dialup.mp3

 

Пример JSON-ответа на успешный HTTP-запрос:

{
"success": true,
"eventId": 61924734
}

где, значение true параметра success означает успешное выполнение HTTP-запроса, а в параметре eventId содержится идентификатор HTTP-запроса на стороне АТС Calltouch (техническая информация, вам она не пригодится).

advice_ver2.png По импортированному звонку будут доступны все возможности отправки этого звонка из ЛК во внешние сервисы по событию завершения вызова (Webhook'и, amoCRM, Google Analytics и т.д).

 

Создание звонка по id сессии

Вы можете создавать звонки в Calltouch по id сессии. Для этого используйте параметр model=sessionfact и передавайте соответствующие значения.

Пример заполненных параметров

  • model=sessionfact
  • apikey=dL9juaKJnm4kSNzDhHIdfkvj
  • callid=dfjh21234245vbskdj245fvdfvdfsv
  • callerid=79855895281
  • ctSessionID=12312424234
  • siteId=6969
  • date=2019-02-27%2012:03:00
  • duration=30
  • waitingtime=10
  • status=successful
  • clientdtmf=567,789
  • operatordtmf=7
  • callrecordurl=https://test.ru/calltouch/mp3/dialup.mp3

 

Пример HTTP-запроса

https://ats.calltouch.ru/event-service/platform/{ATS_CODE}/inbound-call?model=sessionfact&apikey=dL9juaKJnm4kSNzDhHIdfkvj&callid=dfjh21234245vbskdj245fvdfvdfsv&callerid=79855895281&ctSessionId=12312424234&siteId=6969&date=2019-02-27%2012:03:00&duration=30&waitingtime=10&status=successful&clientdtmf=567,789&operatordtmf=7&callrecordurl=https://alftest.ru/calltouch/mp3/dialup.mp3

 

Как получить ID сессии на сайте

ID сессии на сайте можно получить, обратившись к функции window.название_переменной. Название переменной можно определить по значению specific_id вашего скрипта или по его отсутствию. Если specific_id у скрипта на вашем сайте отсутствует, то переменная всегда будет называться call_value, а если specific_id есть, то переменная будет выглядеть как call_value_номер-специфика. Посмотреть наличие specific_id можно в инструментах разработчика:

specific_id есть, он равен 1. Переменная будет равна call_value_1.

______________2019-04-22___18.40.30.png

 

specific_id нет, переменная равна call_value

______________2019-04-22___18.42.32.png

 

Возможные ошибки HTTP-запроса

1. Не указан токен apikey или указан некорректно.

HTTP-код ответа: 403 Forbidden

Тело ответа HTML:

<html>
<head>
<title>Error</title>
</head>
<body>Access Denied</body>
</html>

 

2. Не найден номер телефона destphonenumber, звонок на который необходимо создать.

HTTP-код ответа: 400 Bad Request

Пример тела ответа JSON:

{
"success": false,
"errors": {
"destphonenumber": [
"Номер телефона 7XXXXXXXXXX не найден"
]
}
}

 

3. Не указан один из параметров: callid, callerid, siteId, ctSessionId, service, date, duration, waitingtime, status или указан не в верном формате.

HTTP-код ответа: 400 Bad Request

Пример тела ответа JSON:

{
"success": false,
"errors": {
"duration": [
"Wrong format"
],
"waitingtime": [
"Missing data for required field"
]
}
}

 

4. Сервер АТС не доступен.

HTTP-код ответа: 500 Internal Server Error 

{
"success": false
}
 
 
5. Не найден ID сайта или ID сессии, звонок в котором необходимо создать.

Статус: 400 Bad Request

Тело ответа JSON:

{
"success": false,
"errors": {
"ctSessionId": [
"Сессия 191834719834 не найдена"
]
}
}


{
"success": false,
"errors": {
"siteId": [
"Сайт 1223 не найден"
]
}
}

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 3 из 4
Еще есть вопросы? Отправить запрос

0 Комментарии

Войдите в службу, чтобы оставить комментарий.