Сервисное оповещение — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
[[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]]
+
{|cellpadding="10" cellspacing="0" border="0"
 +
| [[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]]
 +
| [[Исключительные ситуации|Исключительные ситуации<<<]]
 +
| [[Сервисное оповещение]]
 +
| [[Работа с номерным планом|>>>Работа с номерным планом]]
 +
|-
 +
|}
  
 
== Канал сервисного оповещения ==
 
== Канал сервисного оповещения ==
Строка 8: Строка 14:
 
'''Типы событий:'''
 
'''Типы событий:'''
  
:ShutdownRequested&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;101&nbsp;
+
:ShutdownRequested               = 101  
:RestartRequested&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;102&nbsp;
+
:RestartRequested                 = 102  
:ConnectionLost&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;103&nbsp;
+
:ConnectionLost                   = 103  
  
  
:UserStateChanged&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;111&nbsp;
+
:UserStateChanged                 = 111  
:Notify&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;112&nbsp;
+
:Notify                           = 112  
:VoiceMail&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;113&nbsp;
+
:VoiceMail                       = 113  
:UserMessage&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;114&nbsp;
+
:UserMessage                     = 114  
:PersonalStateChanged&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;115&nbsp;
+
:PersonalStateChanged             = 115  
  
  
:HALSrvRegSuccess&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;201&nbsp;
+
:HALSrvRegSuccess                 = 201  
:HALSrvRegTimeout&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;202&nbsp;
+
:HALSrvRegTimeout                 = 202  
:HALDeviceFound&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;203&nbsp;
+
:HALDeviceFound                   = 203  
:HALDeviceLost&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;204&nbsp;
+
:HALDeviceLost                   = 204  
:HALLightenKey&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;211&nbsp;
+
:HALLightenKey                   = 211  
:HALHeadsetParams&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;212&nbsp;
+
:HALHeadsetParams                 = 212  
:HALClearNFieldNow&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;213&nbsp;
+
:HALClearNFieldNow               = 213  
:HALClearNFieldNext&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;214&nbsp;
+
:HALClearNFieldNext               = 214  
  
  
:TMInterfaceConfirm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;121&nbsp;
+
:TMInterfaceConfirm               = 121  
:TMInterfaceReserve&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;122&nbsp;
+
:TMInterfaceReserve               = 122  
:TMInterfaceClose&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;123&nbsp;
+
:TMInterfaceClose                 = 123  
  
:CommutationStarted&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;231&nbsp;
+
:CommutationStarted               = 231  
:CommutationStopped&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;232&nbsp;
+
:CommutationStopped               = 232  
:FaxStarted&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;233&nbsp;
+
:FaxStarted                       = 233  
:FaxStopped&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;234&nbsp;
+
:FaxStopped                       = 234  
:FaxFilesReceived&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;235&nbsp;
+
:FaxFilesReceived                 = 235  
:RingStarted&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;236&nbsp;
+
:RingStarted                     = 236  
:RingFinished&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;237&nbsp;
+
:RingFinished                     = 237  
:ACMStarted&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;238&nbsp;
+
:ACMStarted                       = 238  
:ACMFinished&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;239&nbsp;
+
:ACMFinished                     = 239  
:FlashHoldAction&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;240&nbsp;
+
:FlashHoldAction                 = 240  
:ChainStateChange&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;241&nbsp;
+
:ChainStateChange                 = 241  
:LineStateChange&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;242&nbsp;
+
:LineStateChange                 = 242  
:CallDetected&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;243&nbsp;
+
:CallDetected                     = 243  
  
  
:ConferenceListChanged&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;261
+
:ConferenceListChanged           = 261
:ConferenceCompositionChanged&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;262
+
:ConferenceCompositionChanged     = 262
:ConferenceCompetitorStateChanged&nbsp;=&nbsp;263
+
:ConferenceCompetitorStateChanged = 263
:ConferenceEntranceRequest&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;264
+
:ConferenceEntranceRequest       = 264
:ConferenceEntranceDenied&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;265
+
:ConferenceEntranceDenied         = 265
:ConferenceEntrancePermitted&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;266
+
:ConferenceEntrancePermitted     = 266
:ConferenceNotifyInvite&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;267
+
:ConferenceNotifyInvite           = 267
:ConferenceUserStateChanged&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;268
+
:ConferenceUserStateChanged       = 268
 +
 
  
 
Описание и примеры событий 101 - 114 приведены ниже в текущем разделе, а остальных - в соответствующих им разделах.
 
Описание и примеры событий 101 - 114 приведены ниже в текущем разделе, а остальных - в соответствующих им разделах.
Строка 65: Строка 72:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
 
   <event id="101" name="shutdownrequested" />
 
   <event id="101" name="shutdownrequested" />
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 77: Строка 84:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
 
   <event id="102" name="restartrequested" />
 
   <event id="102" name="restartrequested" />
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 89: Строка 96:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
 
   <event id="103" name="connectionlost" />
 
   <event id="103" name="connectionlost" />
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 101: Строка 108:
 
'''Возможные состояния:'''
 
'''Возможные состояния:'''
  
:usDisconnected&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0.&nbsp;Пользователь&nbsp;отключен.&nbsp;Для&nbsp;текущего&nbsp;пользователя&nbsp;-&nbsp;отсутствие&nbsp;связи&nbsp;с&nbsp;сервером&nbsp;логики.&nbsp;
+
:usDisconnected     = 0. Пользователь отключен. Для текущего пользователя - отсутствие связи с сервером логики.  
:usReady&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;1.&nbsp;Пользователь&nbsp;на&nbsp;месте&nbsp;в&nbsp;готовом&nbsp;состоянии,&nbsp;не&nbsp;занят&nbsp;в&nbsp;задачах,&nbsp;линия&nbsp;свободна.&nbsp;
+
:usReady           = 1. Пользователь на месте в готовом состоянии, не занят в задачах, линия свободна.  
:usLunch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;2.&nbsp;Оператор&nbsp;в&nbsp;перерыве.&nbsp;
+
:usLunch           = 2. Оператор в перерыве.  
:usOff&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;3.&nbsp;Пользователя&nbsp;нет&nbsp;на&nbsp;месте.&nbsp;Выставляется,&nbsp;если&nbsp;пользователь&nbsp;не&nbsp;снял&nbsp;трубку&nbsp;в&nbsp;ходе&nbsp;поступающего&nbsp;вызова&nbsp;в&nbsp;течение&nbsp;установленного&nbsp;времени.&nbsp;Фильтрует&nbsp;дальнейшее&nbsp;поступление&nbsp;звонков&nbsp;
+
:usOff             = 3. Пользователя нет на месте. Выставляется, если пользователь не снял трубку в ходе поступающего вызова в течение установленного времени. Фильтрует дальнейшее поступление звонков  
:usFullbusy&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;5.&nbsp;Пользователь&nbsp;занят&nbsp;в&nbsp;задаче&nbsp;или&nbsp;в&nbsp;разговоре&nbsp;
+
:usFullbusy         = 5. Пользователь занят в задаче или в разговоре  
:usReserved&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;6.&nbsp;Пользователь&nbsp;зарезервирован&nbsp;задачей&nbsp;(быстрое&nbsp;состояние)&nbsp;
+
:usReserved         = 6. Пользователь зарезервирован задачей (быстрое состояние)  
:usWOphone&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;7.&nbsp;Пользователь&nbsp;зарегистрирован,&nbsp;но&nbsp;линия&nbsp;отсутствует,&nbsp;отключена&nbsp;или&nbsp;в&nbsp;неопределенном&nbsp;состоянии.&nbsp;
+
:usWOphone         = 7. Пользователь зарегистрирован, но линия отсутствует, отключена или в неопределенном состоянии.  
  
 
Состояния пользователей также используются в других событиях и методах (например событие <span style="color:darkred">PersonalStateChanged</span> (115) или метод <span style="color:darkred">SetUserState</span> )
 
Состояния пользователей также используются в других событиях и методах (например событие <span style="color:darkred">PersonalStateChanged</span> (115) или метод <span style="color:darkred">SetUserState</span> )
Строка 113: Строка 120:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
Строка 121: Строка 128:
 
   </event>
 
   </event>
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 128: Строка 135:
 
Типы уведомлений - флаговые, но ходят по одному.  
 
Типы уведомлений - флаговые, но ходят по одному.  
  
:nltNone&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00000,&nbsp;
+
:nltNone               = 0x00000,  
:nltControlEvent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00002,&nbsp;Контрольное&nbsp;событие&nbsp;
+
:nltControlEvent       = 0x00002, Контрольное событие  
:nltPBXinfo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00008,&nbsp;Служебная&nbsp;информация&nbsp;АТС&nbsp;
+
:nltPBXinfo           = 0x00008, Служебная информация АТС  
:nltInformation&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00010,&nbsp;Общая&nbsp;информация&nbsp;
+
:nltInformation       = 0x00010, Общая информация  
:nltIncomingCall&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00020,&nbsp;Входящий&nbsp;вызов&nbsp;
+
:nltIncomingCall       = 0x00020, Входящий вызов  
:nltTimer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00080,&nbsp;??&nbsp;
+
:nltTimer             = 0x00080, ??  
:nltCallbackOrder&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00100,&nbsp;Заказ&nbsp;на&nbsp;встречный&nbsp;звонок&nbsp;
+
:nltCallbackOrder     = 0x00100, Заказ на встречный звонок  
:nltApplication&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00200,&nbsp;Сообщение&nbsp;клиентского&nbsp;приложения&nbsp;
+
:nltApplication       = 0x00200, Сообщение клиентского приложения  
:nltApplicationWarn&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00400,&nbsp;Предупреждение&nbsp;клиентского&nbsp;приложения&nbsp;
+
:nltApplicationWarn   = 0x00400, Предупреждение клиентского приложения  
:nltApplicationInfo&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x00800,&nbsp;Общая&nbsp;информация&nbsp;клиентского&nbsp;приложения&nbsp;
+
:nltApplicationInfo   = 0x00800, Общая информация клиентского приложения  
:nltApplicationErr&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x01000,&nbsp;Ошибка&nbsp;клиентского&nbsp;приложения&nbsp;
+
:nltApplicationErr     = 0x01000, Ошибка клиентского приложения  
:nltColor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;0x40000,&nbsp;Окошко&nbsp;изменяемого&nbsp;цвета&nbsp;из&nbsp;сценариев&nbsp;
+
:nltColor             = 0x40000, Окошко изменяемого цвета из сценариев  
  
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
Строка 157: Строка 164:
 
   </event>
 
   </event>
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 164: Строка 171:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
 
   <event id="113" name="voicemail" />
 
   <event id="113" name="voicemail" />
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
  
  
Строка 176: Строка 183:
 
'''Пример:'''
 
'''Пример:'''
  
  <?xml version="1.0" encoding="utf-16"?>
+
  <nowiki><?xml version="1.0" encoding="utf-16"?>
 
  <oktellcommapper version="80710">
 
  <oktellcommapper version="80710">
 
  <data>
 
  <data>
Строка 187: Строка 194:
 
   </event>
 
   </event>
 
  </data>
 
  </data>
  </oktellcommapper>
+
  </oktellcommapper></nowiki>
 +
 
 +
{|cellpadding="10" cellspacing="0" border="0"
 +
| [[Использование_COM_библиотеки_Oktell_из_других_приложений|Наверх]]
 +
| [[Исключительные ситуации|Исключительные ситуации<<<]]
 +
| [[Сервисное оповещение]]
 +
| [[Работа с номерным планом|>>>Работа с номерным планом]]
 +
|-
 +
|}

Текущая версия на 08:07, 26 марта 2015

Наверх Исключительные ситуации<<< Сервисное оповещение >>>Работа с номерным планом

Канал сервисного оповещения

Сервисные события системы поступают по каналу события OnCommunicate. Параметризованные строкой с XML содержимым в UTF-16. Формат поступающих xml обсуждаем. Общие принципы формирования структуры xml параметров представлены здесь, примеры конкретных реализация представлены в текущем разделе. При использовании режима XmlLogging (метод SetXmlLogging), все генерируемые xml-параметры на выходе размещаются в CommonLog с заголовком xmlevent.


Типы событий:

ShutdownRequested = 101
RestartRequested = 102
ConnectionLost = 103


UserStateChanged = 111
Notify = 112
VoiceMail = 113
UserMessage = 114
PersonalStateChanged = 115


HALSrvRegSuccess = 201
HALSrvRegTimeout = 202
HALDeviceFound = 203
HALDeviceLost = 204
HALLightenKey = 211
HALHeadsetParams = 212
HALClearNFieldNow = 213
HALClearNFieldNext = 214


TMInterfaceConfirm = 121
TMInterfaceReserve = 122
TMInterfaceClose = 123
CommutationStarted = 231
CommutationStopped = 232
FaxStarted = 233
FaxStopped = 234
FaxFilesReceived = 235
RingStarted = 236
RingFinished = 237
ACMStarted = 238
ACMFinished = 239
FlashHoldAction = 240
ChainStateChange = 241
LineStateChange = 242
CallDetected = 243


ConferenceListChanged = 261
ConferenceCompositionChanged = 262
ConferenceCompetitorStateChanged = 263
ConferenceEntranceRequest = 264
ConferenceEntranceDenied = 265
ConferenceEntrancePermitted = 266
ConferenceNotifyInvite = 267
ConferenceUserStateChanged = 268


Описание и примеры событий 101 - 114 приведены ниже в текущем разделе, а остальных - в соответствующих им разделах.


  • ShutdownRequested (101). Возникает при запросе администратором oktell выгрузки клиентских (или клиентского) приложения. Дублируется в канале события OnServiceMessage канале (13101 - Shutdown).

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="101" name="shutdownrequested" />
 </data>
 </oktellcommapper>


  • RestartRequested (102). Возникает в случае падения TCP канала связи с сервером. Дублируется в канале события OnServiceMessage канале (13102 - Restart).

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="102" name="restartrequested" />
 </data>
 </oktellcommapper>


  • ConnectionLost (103). Возникает в случае падения TCP канала связи с сервером. Дублируется в канале события OnServiceMessage канале (13103 - ConnectionLost).

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="103" name="connectionlost" />
 </data>
 </oktellcommapper>


  • UserStateChanged (111). Возникает при смене состояния текущего зарегистрированного пользователя на сервере. Изменяется только сервером. Также вместе с состоянием приходит флаг-признак переадресации. Для изменения состояния по инициативе клиентского приложения существует метод SetUserState ( string xml ), который посылает запрос серверу на проведения смены состояний. Сервер может отказать по своему усмотрению.

Возможные состояния:

usDisconnected = 0. Пользователь отключен. Для текущего пользователя - отсутствие связи с сервером логики.
usReady = 1. Пользователь на месте в готовом состоянии, не занят в задачах, линия свободна.
usLunch = 2. Оператор в перерыве.
usOff = 3. Пользователя нет на месте. Выставляется, если пользователь не снял трубку в ходе поступающего вызова в течение установленного времени. Фильтрует дальнейшее поступление звонков
usFullbusy = 5. Пользователь занят в задаче или в разговоре
usReserved = 6. Пользователь зарезервирован задачей (быстрое состояние)
usWOphone = 7. Пользователь зарегистрирован, но линия отсутствует, отключена или в неопределенном состоянии.

Состояния пользователей также используются в других событиях и методах (например событие PersonalStateChanged (115) или метод SetUserState )

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="111" name="userstatechanged">
     <property_simple key="newstate" value="7" name="usWOphone" />
     <property_simple key="redirect" value="0" />
   </event>
 </data>
 </oktellcommapper>


  • Notify (112). Возникает при поступлении системного уведомления, которые генерирует сервер или нижняя прослойка клиентского приложения. Существуют различные типы(направления). По аналогии с клиентским приложением oktell уведомления содержат признаки: автоскрытие, цвет, тип, время поступления, признак сохранения в БД (в случае TRUE можно в разделе истории уведомлений увидеть), отправитель, текст. Каждый тип уведомления имеет свой установленный цвет отображения и иконку (это делается для привыкания к аналоговой информации и последующего быстрого подсознательного реагирования). Свойство "цвет" используется только типом nltColor поступающих уведомлений.

Типы уведомлений - флаговые, но ходят по одному.

nltNone = 0x00000,
nltControlEvent = 0x00002, Контрольное событие
nltPBXinfo = 0x00008, Служебная информация АТС
nltInformation = 0x00010, Общая информация
nltIncomingCall = 0x00020, Входящий вызов
nltTimer = 0x00080, ??
nltCallbackOrder = 0x00100, Заказ на встречный звонок
nltApplication = 0x00200, Сообщение клиентского приложения
nltApplicationWarn = 0x00400, Предупреждение клиентского приложения
nltApplicationInfo = 0x00800, Общая информация клиентского приложения
nltApplicationErr = 0x01000, Ошибка клиентского приложения
nltColor = 0x40000, Окошко изменяемого цвета из сценариев

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="112" name="notify">
     <property_simple key="guid" value="00000000-0000-0000-0000-000000000000" />
     <property_simple key="autohide" value="1" />
     <property_simple key="backcolor_argb" value="0" />
     <property_simple key="type" value="8" name="nltPBXinfo" />
     <property_simple key="datetime" value="12.07.2008 18:35:06" />
     <property_simple key="dbsaved" value="1" />
     <property_cdata key="sender"><![CDATA[Системная АТС]]></property_cdata>
     <property_cdata key="text"><![CDATA[Зарегистрирована линия 16016]]></property_cdata>
   </event>
 </data>
 </oktellcommapper>


  • VoiceMail (113). Возникает при поступлении нового голосового сообщения. Тело сообщения отсутствует, служит для отображения статусной пиктограмки, запрос на получение почты производится в соответствующем модуле.

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="113" name="voicemail" />
 </data>
 </oktellcommapper>


  • UserMessage (114). Поступление сообщения от другого пользователя системы через внутренний мессенджер.

Пример:

<?xml version="1.0" encoding="utf-16"?>
 <oktellcommapper version="80710">
 <data>
   <event id="112" name="usermessage">
     <property_simple key="guid" value="37ccb224-ff71-3836-c410-a73782ef8d19" />
     <property_simple key="datetime" value="12.07.2008 20:29:11" />
     <property_simple key="senderid" value="d03a522f-b399-aa37-cb2a-943cf24d113e" />
     <property_cdata key="sendername"><![CDATA[Бочкарев Евгений]]></property_cdata>
     <property_cdata key="text"><![CDATA[Зайди плиз как освободишься..]]></property_cdata>
   </event>
 </data>
 </oktellcommapper>
Наверх Исключительные ситуации<<< Сервисное оповещение >>>Работа с номерным планом