JTApi и Пропущенные звонки / Ранее завершенные звонки
Я пытаюсь найти способ использовать JTApi, чтобы получать пропущенные и завершенные звонки с телефона. Я знаю, что мог бы написать этот код сам и записать его в сервер вызовов, но я специально хочу, чтобы он пришел с АТС / телефона. Это возможно?
1 ответ
Cisco JTAPI не предоставляет доступа к историческим записям вызовов и не является программным способом прямого запроса к телефонному устройству. Для истории вызовов в режиме реального времени вам необходимо будет осуществлять наблюдение за вызовами на постоянной основе и записывать метаданные о вызовах в свою собственную базу данных.
Исторические записи о вызовах доступны через функцию "Подробные записи вызовов" CUCM: https://developer.cisco.com/site/sxml/discover/overview/cdr/
Эти CDR отправляются с поддерживающих телефонов в CUCM в конце каждого вызова и собираются / сохраняются на CUCM Publisher каждую 1 минуту (по умолчанию) в виде плоских файлов в формате CSV.
Существует два основных механизма доступа к CDR:
- Доставка по FTP/SSH-FTP: на страницах администрирования CUCM по удобству обслуживания можно настроить до трех адресатов, где CDR-файлы будут доставляться в течение заданного интервала:
- CDRonDemand SOAP API: могут быть перечислены доступные имена файлов CDR за период времени (до одного часа), а также отдельные файлы, запрошенные для доставки по FTP/SSH-FTP в указанное место (т. Е. Хост приложения). Сервис /WSDL доступен на издателе CUCM по адресу: https://:8443/realtimeservice2/services/CDRonDemandService? Wsdl
Пример запроса get_file_list:
<!--CDRonDemand API - get_file_list - Request (datetime format is in UTC time)-->
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap="http://schemas.cisco.com/ast/soap/">
<soapenv:Header/>
<soapenv:Body>
<soap:get_file_list>
<soap:in0>201409121600</soap:in0>
<soap:in1>201409121700</soap:in1>
<soap:in2>true</soap:in2>
</soap:get_file_list>
</soapenv:Body>
</soapenv:Envelope>
Пример запроса get_file:
<!--CDRonDemand API - get_file - Request-->
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:CDRonDemand">
<soapenv:Header/>
<soapenv:Body>
<urn:get_file soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<in0>sftp-server.server.com</in0>
<in1>user</in1>
<in2>password</in2>
<in3>/tmp</in3>
<in4>cdr_StandAloneCluster_01_201409121628_189</in4>
<in5>true</in5>
</urn:get_file>
</soapenv:Body>
</soapenv:Envelope>
Более подробную информацию о доступе приложений к CDR можно найти здесь: https://developer.cisco.com/site/sxml/