Статистика коммутаций — различия между версиями
Строка 13: | Строка 13: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 32: | Строка 32: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 48: | Строка 48: | ||
Пример выходного значения: | Пример выходного значения: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data name="commutationjournal" count="3"> | <data name="commutationjournal" count="3"> | ||
Строка 145: | Строка 145: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 152: | Строка 152: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 161: | Строка 161: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 168: | Строка 168: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 176: | Строка 176: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 183: | Строка 183: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 191: | Строка 191: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 198: | Строка 198: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 206: | Строка 206: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Пример формата возвращаемого значения, если коммутации по указанной цепочке не найдены | Пример формата возвращаемого значения, если коммутации по указанной цепочке не найдены | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data name="chainrecords" count="1"> | <data name="chainrecords" count="1"> | ||
Строка 218: | Строка 218: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Пример формата возвращаемого значения (в цепочке одна коммутация, присутствует запись) | Пример формата возвращаемого значения (в цепочке одна коммутация, присутствует запись) | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data name="chainrecords" count="1"> | <data name="chainrecords" count="1"> | ||
Строка 263: | Строка 263: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Строка 282: | Строка 282: | ||
Пример формата параметра-фильтра для поиска записей: | Пример формата параметра-фильтра для поиска записей: | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 295: | Строка 295: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Текущая версия на 08:01, 26 марта 2015
Наверх | Работа с заказами на встречные звонки<<< | Статистика коммутаций | >>>Работа с логикой АТС |
Методы для работы со статистикой коммутаций
- string CommStat_GetJournal ( string xml ). Возвращает набор данных об осуществленных системой коммутациях, удовлетворяющих передаваемому в параметре фильтру и доступных текущему авторизованному пользователю по правам контроля. В передаваемом параметре устанавливаются интересующие периоды времени и дат, направление вызовов, конкретные номера и пользователи системы. Также допускается фильтровать звонки, осуществленные колл-центром. Выборка, полученная в результате применения фильтра, возвращается в объеме 1000 первых строк. В зависимости от сложности фильтра и объема таблицы коммутаций в БД запрос может производиться некоторое значительное время (10-20 секунд). Это необходимо иметь в виду при построении визуального модуля. В критичных ко времени задачах вызов метода необходимо осуществлять в асинхронном потоке.
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="dateformat" value="dd.MM.yyyy" /> <property_simple key="timeformat" value="HH:mm" /> <property_simple key="startdate" value="02.09.2008" /> <property_simple key="stopdate" value="02.09.2008" /> <property_simple key="starttime" value="08:00" /> <property_simple key="stoptime" value="18:00" /> <property_simple key="connectiontype" value="2" /> <property_simple key="inner" value="" /> <property_simple key="outer" value="" /> <property_simple key="length" value="0:00:01" /> <property_simple key="operator" value="00000000-0000-0000-0000-000000000000" /> <property_simple key="task" value="00000000-0000-0000-0000-000000000000" /> <property_simple key="callcenter" value="1" /> </property_set> </data> </oktellcommapper>
В случае, если какие то поля фильтра не указаны, они будут замещены значениями по умолчанию. Однако в случае указания их значения должны соответствовать ожидаемым величинам.
- dateformat, timeformat - строковые представления формата передаваемых значений дат и времени.
- startdate, stopdate - границы интервала дат, внутри которого осуществляется поиск записей.
- starttime, stoptime - границы интервала времени, внутри которого осуществляется поиск записей. Одновременно с широким интервалом дат происходит вырезание интервала времени из каждого попадающего в интересующий интервал дат дня.
- connectiontype - тип коммутации. Варианты: все(-1), входящие(1), исходящие(2), внутренние(3).
- inner - внутренний номер, участвующий в коммутации.
- outer - номер или часть номера абонента.
- length - минимальная длительность коммутации в формате "H:mm:ss".
- operator - id конкретного пользователя системы.
- callcenter - признак фильтрации звонков call-центра по задачам (1 - не фильтруются, 0 - фильтруются).
Пример выходного значения:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data name="commutationjournal" count="3"> <property_set name="statrecord"> <property_simple key="id" value="88025c13-380c-4af7-86bc-ad68ba2edfa0" /> <property_simple key="idchain" value="ea8ced25-507c-4760-90ce-ed5e7b3c33e6" /> <property_simple key="idprev" value="" /> <property_simple key="idnext" value="" /> <property_simple key="timestart" value="04.09.2008 17:58:08" /> <property_simple key="timeanswer" value="04.09.2008 17:58:10" /> <property_simple key="timestop" value="04.09.2008 17:58:12" /> <property_simple key="reasonstart" value="4" /> <property_simple key="reasonstop" value="2" /> <property_simple key="stopside" value="0" /> <property_simple key="alineid" value="254aa1fc-4e18-4ad3-99ea-eb52417dd5a2" /> <property_simple key="blineid" value="cf8330f4-a0bf-4779-9539-ab8ea6c49df7" /> <property_simple key="aoutnumber" value="" /> <property_simple key="boutnumber" value="12" /> <property_simple key="alinenum" value="16016" /> <property_simple key="blinenum" value="15001" /> <property_simple key="auserid" value="da803f01-ea77-40fa-bc9d-e2efb36fd5a8" /> <property_simple key="buserid" value="67e62e9a-a400-4f26-a1ac-b535e17a44f7" /> <property_simple key="anumberdialed" value="12" /> <property_simple key="bnumberdialed" value="" /> <property_simple key="isrecorded" value="1" /> <property_simple key="connectiontype" value="3" /> <property_cdata key="astr"><![CDATA[Петр]]></property_cdata> <property_simple key="bstr" value="z01" /> <property_simple key="fromcc" value="0" /> <property_simple key="isbetweenusers" value="1" /> <property_simple key="idrecdir" value="0" /> <property_simple key="length" value="00:00:01" /> <property_simple key="answerlength" value="00:00:02" /> </property_set> <property_set name="statrecord"> <property_simple key="id" value="caf4fbd7-a75a-4755-af71-56cd0feaffea" /> <property_simple key="idchain" value="59f5066d-85f8-4b7b-bb75-278d92b82809" /> <property_simple key="idprev" value="" /> <property_simple key="idnext" value="" /> <property_simple key="timestart" value="04.09.2008 17:58:01" /> <property_simple key="timeanswer" value="04.09.2008 17:58:01" /> <property_simple key="timestop" value="04.09.2008 17:58:04" /> <property_simple key="reasonstart" value="4" /> <property_simple key="reasonstop" value="3" /> <property_simple key="stopside" value="1" /> <property_simple key="alineid" value="254aa1fc-4e18-4ad3-99ea-eb52417dd5a2" /> <property_simple key="blineid" value="00000000-0000-0000-0000-000000000000" /> <property_simple key="aoutnumber" value="" /> <property_simple key="boutnumber" value="03" /> <property_simple key="alinenum" value="16016" /> <property_simple key="blinenum" value="IVR" /> <property_simple key="auserid" value="da803f01-ea77-40fa-bc9d-e2efb36fd5a8" /> <property_simple key="buserid" value="ab000000-0000-0000-0000-000000000000" /> <property_simple key="anumberdialed" value="03" /> <property_simple key="bnumberdialed" value="" /> <property_simple key="isrecorded" value="0" /> <property_simple key="connectiontype" value="2" /> <property_cdata key="astr"><![CDATA[Петр]]></property_cdata> <property_simple key="bstr" value="IVR" /> <property_simple key="fromcc" value="0" /> <property_simple key="isbetweenusers" value="0" /> <property_simple key="idrecdir" value="0" /> <property_simple key="length" value="00:00:02" /> <property_simple key="answerlength" value="00:00:00" /> </property_set> <property_set name="statrecord"> <property_simple key="id" value="17e0f64e-b24e-4654-b937-1b27ac882acd" /> <property_simple key="idchain" value="047f4b28-9436-4806-bba4-fecc11710f6a" /> <property_simple key="idprev" value="" /> <property_simple key="idnext" value="" /> <property_simple key="timestart" value="04.09.2008 17:14:30" /> <property_simple key="timeanswer" value="04.09.2008 17:14:32" /> <property_simple key="timestop" value="04.09.2008 17:14:43" /> <property_simple key="reasonstart" value="4" /> <property_simple key="reasonstop" value="2" /> <property_simple key="stopside" value="1" /> <property_simple key="alineid" value="cf8330f4-a0bf-4779-9539-ab8ea6c49df7" /> <property_simple key="blineid" value="80af2224-2d73-4af0-8f66-d2ad92c6c035" /> <property_simple key="aoutnumber" value="" /> <property_simple key="boutnumber" value="21" /> <property_simple key="alinenum" value="15001" /> <property_simple key="blinenum" value="15002" /> <property_simple key="auserid" value="67e62e9a-a400-4f26-a1ac-b535e17a44f7" /> <property_simple key="buserid" value="48038abc-3a2f-4625-a775-4bff61ffa32a" /> <property_simple key="anumberdialed" value="21" /> <property_simple key="bnumberdialed" value="" /> <property_simple key="isrecorded" value="1" /> <property_simple key="connectiontype" value="3" /> <property_simple key="astr" value="z01" /> <property_simple key="bstr" value="z02" /> <property_simple key="fromcc" value="0" /> <property_simple key="isbetweenusers" value="1" /> <property_simple key="idrecdir" value="0" /> <property_simple key="length" value="00:00:10" /> <property_simple key="answerlength" value="00:00:02" /> </property_set> </data> </oktellcommapper>
- void CommStat_RemoveRecords ( string xml ) Позволяет обладающему на то правом пользователю удалять файлы с записями разговоров. В передаваемом параметре указываются идентификаторы коммутаций, требующих очистки признака записи (idconnection или id).
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="id" value="10000000-0000-0000-0000-000000000000" /> <property_simple key="id" value="20000000-0000-0000-0000-000000000000" /> <property_simple key="id" value="30000000-0000-0000-0000-000000000000" /> </property_set> </data> </oktellcommapper>
- bool CommStat_DownloadFile ( string xml ). Осуществляет загрузку файла с записью разговора, соответствующего коммутации, идентификатор которой передается в параметре (idconnection или id). Возвращает TRUE в случае успешной загрузки, FALSE в противном случае. В передаваемом параметре помимо идентификатора коммутации передается также путь на диске, куда следует разместить файл после закачки (path), путь должен включать также имя файла. В случае существования файла, он будет заменен.
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="id" value="10000000-0000-0000-0000-000000000000" /> <property_cdata key="path"><![CDATA[C:\Temp\1.wav]]></property_cdata> </property_set> </data> </oktellcommapper>
- bool CommStat_DownloadFilesInChainSimple ( string xml ). Осуществляет загрузку файлов с записями коммутаций по ID цепочки (параметр idchain или id). Возвращает TRUE в случае успешной загрузки (хотя бы один файл загружен), FALSE в противном случае. В передаваемом параметре помимо идентификатора коммутации передается также путь к каталогу на диске, куда следует разместить файлы после закачки (path). В случае существования файлов в каталоге с теми же именами, они будет заменены.
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="idchain" value="123456789-1234-1234-1234-1234567890AB" /> <property_cdata key="path"><![CDATA[C:\Temp\Chain\]]></property_cdata> </property_set> </data> </oktellcommapper>
- string CommStat_DownloadFilesInChain ( string xml ). Осуществляет загрузку файлов с записями коммутаций по ID цепочки (параметр idchain или id). Возвращает XML строку с информацией о всех коммутациях в цепочке (аналогичной журналу коммутаций), дополненной полным путем размещения и размерностью полученного файла в байтах (если коммутация имеет файл и он загружен). В передаваемом параметре помимо идентификатора коммутации передается также путь к каталогу на диске, куда следует разместить файлы после закачки (path). В случае существования файлов в каталоге с теми же именами, они будет заменены.
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="id" value="123456789-1234-1234-1234-1234567890AB" /> <property_cdata key="path"><![CDATA[C:\Temp\Chain]]></property_cdata> </property_set> </data> </oktellcommapper>
Пример формата возвращаемого значения, если коммутации по указанной цепочке не найдены
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data name="chainrecords" count="1"> <property_set name="result"> <property_simple key="result" value="0" name="success" /> </property_set> </data> </oktellcommapper>
Пример формата возвращаемого значения (в цепочке одна коммутация, присутствует запись)
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data name="chainrecords" count="1"> <property_set name="result"> <property_simple key="result" value="0" name="success" /> <property_collection name="files" count="1"> <property_set name="commutation"> <property_simple key="id" value="35094d61-8acc-4797-b334-8098aaaa13ee" /> <property_simple key="idchain" value="eec44cd3-f60f-494e-b457-b41a495e9640" /> <property_simple key="idprev" value="" /> <property_simple key="idnext" value="" /> <property_simple key="timestart" value="01.11.2008 13:23:32" /> <property_simple key="timeanswer" value="01.11.2008 13:23:34" /> <property_simple key="timestop" value="01.11.2008 13:25:09" /> <property_simple key="reasonstart" value="4" /> <property_simple key="reasonstop" value="2" /> <property_simple key="stopside" value="1" /> <property_simple key="alineid" value="cf8330f4-a0bf-4779-9539-ab8ea6c49df7" /> <property_simple key="blineid" value="80af2224-2d73-4af0-8f66-d2ad92c6c035" /> <property_simple key="aoutnumber" value="" /> <property_simple key="boutnumber" value="21" /> <property_simple key="alinenum" value="15001" /> <property_simple key="blinenum" value="15002" /> <property_simple key="auserid" value="67e62e9a-a400-4f26-a1ac-b535e17a44f7" /> <property_simple key="buserid" value="48038abc-3a2f-4625-a775-4bff61ffa32a" /> <property_simple key="anumberdialed" value="21" /> <property_simple key="bnumberdialed" value="" /> <property_simple key="isrecorded" value="1" /> <property_simple key="connectiontype" value="3" /> <property_simple key="astr" value="Никитин Виктор" /> <property_simple key="bstr" value="Алексеев Константин" /> <property_simple key="fromcc" value="0" /> <property_simple key="isbetweenusers" value="1" /> <property_simple key="idrecdir" value="0" /> <property_cdata key="filepath"><![CDATA[C:\Temp\Chain\mix_15001_15002__2008_11_01__13_23_32_990.wav]]></property_cdata> <property_simple key="filesize" value="153188" /> </property_set> </property_collection> </property_set> </data> </oktellcommapper>
Возможные варианты результатов выполнения запроса на закачку файлов.
public enum EDownloadChainResult { success = 0, //Успешное выполнение nullparam = 1, //Передан пустой параметр guidemptychain = 2, //Передан пустой код цепочки incorrectpath = 3, //Указанный путь некорректен, недоступен или отсутствует право записи exception = 4, //Исключение при закачке и сохранение (с описанием) }
- string CommStat_GetMyCalls ( string xml ). Возвращает набор данных об осуществленных системой коммутациях с участием текущего авторизованного пользователя, удовлетворяющих передаваемому в параметре фильтру. В передаваемом параметре устанавливаются интересующие период дат, направление вызовов, конкретный номер. Выборка, полученная в результате применения фильтра, возвращается в объеме 1000 первых строк. В зависимости от сложности фильтра и объема таблицы коммутаций в БД запрос может производиться некоторое время, но значительно меньшее чем при построении статистики АТС. Это необходимо иметь в виду при построении визуального модуля. В критичных ко времени задачах вызов метода необходимо осуществлять в асинхронном потоке.
Пример формата параметра-фильтра для поиска записей:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <property_set> <property_simple key="dateformat" value="dd.MM.yyyy" /> <property_simple key="timeformat" value="HH:mm" /> <property_simple key="startdate" value="02.09.2008" /> <property_simple key="stopdate" value="02.09.2008" /> <property_simple key="number" value="425" /> <property_simple key="media" value="1" /> <property_simple key="type" value="2" /> </property_set> </data> </oktellcommapper>
В случае, если какие то поля фильтра не указаны, они будут замещены значениями по умолчанию. Однако в случае указания их значения должны соответствовать ожидаемым величинам.
- dateformat, timeformat - строковые представления формата передаваемых значений дат и времени.
- startdate, stopdate - границы интервала дат, внутри которого осуществляется поиск записей.
- number - номер или часть номера абонента.
- media - среда оппозитного канала: все (0), внешняя (1), внутренняя (2), смешанная (3).
- type - тип вызова: все (0), входящие (1), исходящие (2).
Наверх | Работа с заказами на встречные звонки<<< | Статистика коммутаций | >>>Работа с логикой АТС |