Работа с заказами на встречные звонки — различия между версиями
(Новая страница: «Наверх ===Методы для работы с заказ...») |
(нет различий)
|
Версия 07:58, 24 марта 2014
Методы для работы с заказами на встречные звонки
- string CallbackOrders_Get ( string xml ). Возвращает XML-строку с метаданными о заказах на встречные звонки, адресованных непосредственно авторизованному пользователю или на группу (отдел, групповой номер), куда он относится. В случае ошибки возвращается NULL.
В качестве входного параметра может выступать пустая строка или NULL, тогда возвращены будут все неудаленные заказы. Параметр может содержать стандартную XML структуру, содержащую информацию о фильтре. Свойство onlynew позволяет осуществлять фильтр заказов, исключая те из них, которые уже были однажды отображены как новые (по умолчанию «0» - возвращать все записи, «1» - возвращать только новые). Сразу после выполнения запроса запись перестанет считаться новой. Свойство showdone позволяет вывести все заказы, включая уже выполненные. (по умолчанию «0» - возвращать только невыполненные, «1» - возвращать все неудаленные).
Все поля в возвращаемом значении являются прямым отображением таблицы базы данных Oktell A_CallbackOrders.
Заказы на встречные звонки формируются в сценариях всех типов компонентом «Заказ на встречный звонок».
Примеры входного параметра:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set> <property_simple key="onlynew" value="0" /> <property_simple key="showdone" value="0" /> </property_set> </oktellcommapper>
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set> <property_simple key="onlynew" value="1" /> </property_set> </oktellcommapper>
Формат возвращаемого значения (на примере):
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set name="cborder" id="0"> <property_cdata key="datetimeformat"><![CDATA[dd.MM.yyyy HH:mm:ss]]></property_cdata> <property_simple key="id" value="fc6e61c0-208c-4b93-9138-28d774f08b32" /> <property_simple key="clientid" value="00000000-0000-0000-0000-000000000000" /> <property_simple key="clientname" value="" /> <property_cdata key="orderedtime"><![CDATA[20.04.2009 12:30:00]]></property_cdata> <property_simple key="orderednumber" value="5109940" /> <property_simple key="receiverspecified" value="1" /> <property_cdata key="comment"><![CDATA[ ... ]]></property_cdata> <property_simple key="isviewed" value="1" /> <property_simple key="isdone" value="0" /> </property_set> </oktellcommapper>
- Поле datetimeformat устанавливает текущий формат строкового представления значений типа дата/время. Именно указанным образом его и следует преобразовывать обратно.
- Поле id - guid-идентификатор заказа
- Поля clientid и clientname заполнены в том случае, если при размещении заказа была произведена связка определившегося номера, с которого произошел вызов и вход в сценарий IVR, с таблицами контактов A_Clients, A_ClientContacts, A_ClientContactTypes.
- Поле receiverspecified = 1 указывает на то, что при размещении заказа на встречный звонок был явно указан получатель (текущий авторизованный пользователь или группа, в которую он относится). В противном случае заказ на встречный звонок адресован всей организации.
- Поле comment отображает текущий комментарий и может быть изменено методом CallbackOrders_Set или из стандартного клиентского приложения Oktell.
- Поле isviewed = 1 указывает на новизну заказа. После первого обращения признак новизны автоматически снимается.
- Поля orderedtime и orderednumber заполняются в сценарии при размещении заказа и устанавливают время заказа и номер, на который заказ принят (в сценарии может быть выставлен как реальный callerid, так и фиксированный или заданный с помощью DTMF-команд номер).
- В случае, если заказ выполнен (isdone = 1), будут также присутствовать поля doneuserid и doneusername, отображающие соответственно guid-идентификатор и имя пользователя, выполнившего заказ.
- void CallbackOrders_Delete ( string xml ). Удаляет запись о заказе на встречный звонок из БД по указанному guid-идентификатору. Может быть указано сразу несколько идентификаторов для удаления.
Примеры входного параметра:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> </property_set> </oktellcommapper>
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> </property_set> </oktellcommapper>
- void CallbackOrders_Set ( string xml ). Сохраняет изменения для заказа на встречный звонок. Позволяет изменить текущий комментарий (поле comment возвращаемого значения методом CallbackOrders_Get). Также позволяет выставить (или перевыставить) значение полю isdone (выполнено) с автоматической привязкой к текущему авторизованному пользователю. В дальнейшем возможна фильтрация возвращаемых значений по этому полю.
Следует иметь в виду, что при необходимости выставить только новое значение свойству isdone, необходимо сохранить комментарий (свойство comment), скопировав его значение без изменений из возвращаемого значения метода CallbackOrders_Get.
Пример входного параметра:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <property_set> <property_simple key="id" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" /> <property_cdata key="comment"><![CDATA[ ... ]]></property_cdata> <property_simple key="isdone" value="0" /> </property_set> </oktellcommapper>