Работа с номерным планом — различия между версиями
Материал из Oktell
(не показано 13 промежуточных версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | [[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]] | + | {|cellpadding="10" cellspacing="0" border="0" |
+ | | [[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]] | ||
+ | | [[Сервисное оповещение|Сервисное оповещение<<<]] | ||
+ | | [[Работа с номерным планом]] | ||
+ | | [[Работа со статусом пользователя|>>>Работа со статусом пользователя]] | ||
+ | |- | ||
+ | |} | ||
==Методы для работы с отображением номерного плана== | ==Методы для работы с отображением номерного плана== | ||
Строка 5: | Строка 11: | ||
Набор методов и событий для реализации модуля отображения объектов номерного плана и их состояний. Методы осуществления вызовов в разделе логики АТС ([[Работа с логикой АТС|здесь]]). | Набор методов и событий для реализации модуля отображения объектов номерного плана и их состояний. Методы осуществления вызовов в разделе логики АТС ([[Работа с логикой АТС|здесь]]). | ||
− | + | ||
+ | *'''<span style="color:blue">string</span> GetPersonalStates ( )'''. Возвращает состояния объектов номерного плана. Объемный XML установленного образца. Формат обсуждаем. Перечень всех номеров с кодами <span style="color:blue">GUID</span>, префиксами набора, признаком типа номера, в случае если номер индивидуальный стандартный - состояние объекта. Также для каждого стандартного номера перечислены все объекты, входящие в структуру номера. По каждому объекту - код, тип (<span style="color:darkred">user</span>, <span style="color:darkred">fxsline</span>, <span style="color:darkred">usbline</span>, <span style="color:darkred">sipline</span>) и ссылкой на отдел, на который назначен. В случае если объект входит в несколько номеров, информация по нему дублирутся в каждом номере. | ||
'''Формат возвращаемого xml (на примере):''' | '''Формат возвращаемого xml (на примере):''' | ||
− | <?xml version="1.0" encoding="utf-16"?> | + | <nowiki><?xml version="1.0" encoding="utf-16"?> |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data name="personal" count="2"> | <data name="personal" count="2"> | ||
Строка 40: | Строка 47: | ||
</property_set> | </property_set> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
Поле <span style="color:green">isgroup</span> означает не групповой номер сам по себе, а любой непростой номер, по которому не передается состояния. Возможные типы непростых номеров (поле <span style="color:green">grouptype</span>): | Поле <span style="color:green">isgroup</span> означает не групповой номер сам по себе, а любой непростой номер, по которому не передается состояния. Возможные типы непростых номеров (поле <span style="color:green">grouptype</span>): | ||
− | :standard = 0, //Стандартный групповой. | + | :standard = 0, <span style="color:darkviolet">//Стандартный групповой.</span> |
− | :fast = 1, //Быстрый набор. | + | :fast = 1, <span style="color:darkviolet">//Быстрый набор. </span> |
− | :ivr = 2 //Запуск сценария IVR. | + | :ivr = 2 <span style="color:darkviolet">//Запуск сценария IVR. </span> |
Типы элементов, участвующих в формировании стандартных номеров (поле <span style="color:green">type</span> ветки <span style="color:green">reactobject</span>): | Типы элементов, участвующих в формировании стандартных номеров (поле <span style="color:green">type</span> ветки <span style="color:green">reactobject</span>): | ||
− | :user = 0, //Пользователь | + | :user = 0, <span style="color:darkviolet">//Пользователь </span> |
− | :fxsline = 1, //Внутреннаяя аналоговая линия | + | :fxsline = 1, <span style="color:darkviolet">//Внутреннаяя аналоговая линия </span> |
− | :usbline = 2, //USB линия | + | :usbline = 2, <span style="color:darkviolet">//USB линия </span> |
− | :sipline = 3 //Внутренний SIP-канал | + | :sipline = 3 <span style="color:darkviolet">//Внутренний SIP-канал </span> |
− | + | *'''<span style="color:blue">void</span> SetListenPersonalChanges ( <span style="color:blue">bool</span> newvalue )'''. Осуществляет подписку/отписку от режима прослушивания серверных сообщений о факте смены состояния одним из объектов номерного плана. Рекомендуется в целях экономии ресурсов и трафика подключаться только при работе с интерфейсом номерного плана, и отписываться при закрытии интерфейса. На старте работы с интерфейсом - загружать весь перечень и выстраивать по нему, после чего отслеживать изменения. События поступают через канал сервисного оповещения OnCommunicate | |
− | + | *'''<span style="color:darkred">PersonalStateChanged</span>''' (115). Событие смены состояния объектом номерного плана. Возникает только в случае подписки на события этого типа методом <span style="color:darkred">SetListenPersonalChanges</span>. | |
'''Пример:''' | '''Пример:''' | ||
− | + | <nowiki><?xml version="1.0" encoding="utf-16"?> | |
− | <?xml version="1.0" encoding="utf-16"?> | + | |
<oktellcommapper version="80710"> | <oktellcommapper version="80710"> | ||
<data> | <data> | ||
Строка 75: | Строка 81: | ||
</event> | </event> | ||
</data> | </data> | ||
− | </oktellcommapper> | + | </oktellcommapper></nowiki> |
+ | |||
+ | {|cellpadding="10" cellspacing="0" border="0" | ||
+ | | [[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]] | ||
+ | | [[Сервисное оповещение|Сервисное оповещение<<<]] | ||
+ | | [[Работа с номерным планом]] | ||
+ | | [[Работа со статусом пользователя|>>>Работа со статусом пользователя]] | ||
+ | |- | ||
+ | |} |
Текущая версия на 08:05, 26 марта 2015
Наверх | Сервисное оповещение<<< | Работа с номерным планом | >>>Работа со статусом пользователя |
Методы для работы с отображением номерного плана
Набор методов и событий для реализации модуля отображения объектов номерного плана и их состояний. Методы осуществления вызовов в разделе логики АТС (здесь).
- string GetPersonalStates ( ). Возвращает состояния объектов номерного плана. Объемный XML установленного образца. Формат обсуждаем. Перечень всех номеров с кодами GUID, префиксами набора, признаком типа номера, в случае если номер индивидуальный стандартный - состояние объекта. Также для каждого стандартного номера перечислены все объекты, входящие в структуру номера. По каждому объекту - код, тип (user, fxsline, usbline, sipline) и ссылкой на отдел, на который назначен. В случае если объект входит в несколько номеров, информация по нему дублирутся в каждом номере.
Формат возвращаемого xml (на примере):
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data name="personal" count="2"> <property_set name="number" id="ea156be4-b496-4ddc-9217-fa708cb3a904"> <property_simple key="guid" value="ea156be4-b496-4ddc-9217-fa708cb3a904" /> <property_simple key="prefix" value="12" /> <property_cdata key="caption"><![CDATA[Сметчики]]></property_cdata> <property_simple key="isgroup" value="1" /> <property_simple key="grouptype" value="0" name="standard" /> <property_collection name="elements" count="2"> <property_set name="reactobject" id="cf8330f4-a0bf-4779-9539-ab8ea6c49df7"> <property_simple key="guid" value="cf8330f4-a0bf-4779-9539-ab8ea6c49df7" /> <property_cdata key="department" value="37ccb224-ff71-3836-c410-a73782ef8d19"><![CDATA[Сметный отдел]]></property_cdata> <property_simple key="type" value="0" name="user" /> </property_set> <property_set name="reactobject" id="3145962b-2141-4b63-960e-9fb7142e0c7b"> <property_simple key="guid" value="3145962b-2141-4b63-960e-9fb7142e0c7b" /> <property_cdata key="department" value="00000000-0000-0000-0000-000000000000"><![CDATA[Прочие подразделения]]></property_cdata> <property_simple key="type" value="1" name="fxsline" /> </property_set> </property_collection> </property_set> <property_set name="number" id="a4bb8d39-082a-4fde-957b-ff14ddd66f4e"> <property_simple key="guid" value="a4bb8d39-082a-4fde-957b-ff14ddd66f4e" /> <property_simple key="prefix" value="03" /> <property_cdata key="caption"><![CDATA[Портал знакомств - Главное меню]]></property_cdata> <property_simple key="isgroup" value="1" /> <property_simple key="grouptype" value="2" name="ivr" /> </property_set> </data> </oktellcommapper>
Поле isgroup означает не групповой номер сам по себе, а любой непростой номер, по которому не передается состояния. Возможные типы непростых номеров (поле grouptype):
- standard = 0, //Стандартный групповой.
- fast = 1, //Быстрый набор.
- ivr = 2 //Запуск сценария IVR.
Типы элементов, участвующих в формировании стандартных номеров (поле type ветки reactobject):
- user = 0, //Пользователь
- fxsline = 1, //Внутреннаяя аналоговая линия
- usbline = 2, //USB линия
- sipline = 3 //Внутренний SIP-канал
- void SetListenPersonalChanges ( bool newvalue ). Осуществляет подписку/отписку от режима прослушивания серверных сообщений о факте смены состояния одним из объектов номерного плана. Рекомендуется в целях экономии ресурсов и трафика подключаться только при работе с интерфейсом номерного плана, и отписываться при закрытии интерфейса. На старте работы с интерфейсом - загружать весь перечень и выстраивать по нему, после чего отслеживать изменения. События поступают через канал сервисного оповещения OnCommunicate
- PersonalStateChanged (115). Событие смены состояния объектом номерного плана. Возникает только в случае подписки на события этого типа методом SetListenPersonalChanges.
Пример:
<?xml version="1.0" encoding="utf-16"?> <oktellcommapper version="80710"> <data> <event id="115" name="personalstatechanged"> <property_simple key="guid" value="916351c3-be6a-4a29-877a-6c8c4b54f8af" /> <property_simple key="newstate" value="1" name="usReady" /> </event> </data> </oktellcommapper>
Наверх | Сервисное оповещение<<< | Работа с номерным планом | >>>Работа со статусом пользователя |