Сценарии АТС — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
 
(не показано 39 промежуточных версии 2 участников)
Строка 1: Строка 1:
[[Системные настройки|Наверх]]
+
<code>[[Техническая документация]] / [[Администрирование]] / [[Общие Настройки]] / [[Системные настройки]] / [[Сценарии АТС]]</code>
  
 
'''Сценарий IVR входящей маршрутизации (главный)'''
 
  
Главным называется сценарий IVR, обрабатывающий все без исключения поступающие в АТС входящие вызовы. Как правило, сценарий осуществляет маршрутизацию и перевод звонка в другие вложенные сценарии или проекты call-центра. В списке общих сценариев АТС главный сценарий выделяется цветом. Он также может быть выбран непосредственно в контекстном меню списка сценариев или нажатием соответствующей кнопки.
+
__TOC__
  
 +
==Сценарии IVR==
  
'''Сценарий IVR исходящей маршрутизации (сценарий входа в АТС)'''
 
  
В некоторых случаях особенности инфраструктуры требуют организовывать маршрутизацию исходящих звонков особым образом. Параметр позволяет задействовать режим входа в АТС через сценарий. В этом случае любой вход в АТС, при котором в обычном режиме выдается тон АТС и ожидается ввод цифр для набора внутреннего номера, будет осуществлять запуск служебного IVR-сценария, указанного в текстовом поле текущего параметра. Ожидается, что сценарий организован таким образом, что оценивает набранный номер (функция CalledId), а также осуществляет ожидание ввода при необходимости.
+
<h4>Сценарий IVR маршрутизации входящих звонков (главный)</h4>
  
Необходимо иметь в виду, что разные режимы входа в сочетании с разными возможными типами устройств создают различные окружения перед запуском сценария. Например, снятая трубка на аналоговом или USB аппарате приведет к запуску сценария с пустым значением функции CalledId. В то же время дозвон с IP телефона в качестве функции CalledId будет возвращать всю последовательность цифр, набранную на аппарате до нажатия CALL. Перевод же звонка с помощью клиентского интерфейса будет запускать сценарий и в качестве CalledId выдавать номер, на который запрошен перевод (внешний или внутренний).
+
Cценарий IVR входящей маршрутизации (или как его еще называют Главный сценарий) обрабатывает все входящие вызовы, поступающие в систему с внешних линий. Сценарий запускается исключительно на внешних линиях. Как правило, сценарий осуществляет звуковое воспроизведение, переключение на сотрудников, перевод звонка в другие вложенные сценарии или проекты call-центра. В списке сценариев (Администрирование/Сценарии) главный сценарий выделяется красным цветом. Он также может быть выбран непосредственно в контекстном меню списка сценариев "Назначить главным" или нажатием кнопки "Главный". Сценарий обязательно должен быть выбран в системе, иначе вы не сможете принять ни один вызов.  
  
По умолчанию использование такой схемы со сценарием входа отключено.
+
''Смотрите также: [[Урок 24 IVR сценарий входящей маршрутизации]]''
  
<span style="color:red;">ВНИМАНИЕ! Переключение работы в этот режим и обратно кардинально изменяет алгоритмы маршрутизации и требует тщательной проработки концепций и настройки всех соответствующих режимов. Также при включении режима необходимо помнить, что менеджер задач и автодозвон тоже скорее всего должны быть переведены на усложненный набор номеров через  [[Компоненты служебных сценариев#Дозвон|служебный сценарий дозвона]].</span>
 
  
При активации режима следует иметь в виду, что ряд переключений (для которых не заданых отдельные сценарии обработки) осуществляются также через этот сценарий. В случае, если переключающий пользователь не дожидается соединения с абонентом, а кладет трубку во время обработки в сценарии, перевод абонента будет осуществлен на начало текущего активного сценария. Именно так происходит при переводе на активную очередь, а также при TRANSFER-переключении с IP телефона. Сценарий лучше организовать по вложенной схеме, где в основном сценарии входа происходит анализ и определение номера, а переключение происходит во вложенном сценарии, куда управление передается с параметром, содержащим номер. Переключающий пользователь разницы не ощущает, но если он кладет трубку в момент переключения, то абонент попадет в обработку уже в финальный вложенный сценарий переключения, в который передался итоговый номер, и на который необходимо переключение осуществить.
+
<h4>Сценарий IVR маршрутизации исходящих звонков</h4>
  
При написании сценариев, в том числе вложенных, вставляйте в начало отладочные уведомления с отображением канала, значения функции callerid и входного параметра. Это поможет быстрее понять принцип переключений и достичь желаемого результата.
+
Сценарий IVR исходящей маршрутизации обрабатывает все вызовы, поступающие с внутренних линий. Запускается исключительно на внутренних линиях. Сценарий ожидает ввода номера, а затем производит маршрутизацию на внешние либо внутренние линии. Необходимо иметь в виду, что устройства по-разному набирают и передают номер в сценарий. Например, снятая трубка на аналоговом или USB аппарате приведет к запуску сценария с пустым значением функции CalledId. В то же время дозвон с IP-телефона в качестве функции CalledId будет возвращать всю последовательность цифр, набранную на аппарате до нажатия CALL. Исходя из этого, в начале сценария необходимо оценивать набранный номер через функцию "''Внешний номер (CalledId)''".  
Очевидно, чем больше используется различных устройств и возможных номеров и направлений переключения, тем масштабнее совокупность сценариев входа в АТС.
+
 
 +
В стандартном сценарии переключение на внутренние номера происходит, если длина номера 3 символа. Если вы собираетесь использовать 4х-символьный номерной план или длиннее, необходимо подкорректировать данный сценарий. Следует также учесть, что вызовы на короткие номера через внешние линии по умолчанию заблокированы.
 +
 
 +
Если сценарий не назначен, для исходящего звонка на внешний номер выбирается первая свободная внешняя линия.
 +
 
 +
''Смотрите также: [[Урок 25 Маршрутизация исходящих вызовов]]''
  
  
 
<div id="ScrFlash"></div>
 
<div id="ScrFlash"></div>
'''Сценарий IVR маршрутизации при переводе звонка (Flash)'''
+
<h4>Сценарий IVR маршрутизации при переводе звонка</h4>
 +
 
 +
IVR сценарий переключения активируется во время Flash-переключения (консультативного перевода). Сценарий может запускаться как на внешней, так и на внутренней линии. Аналогичен сценарию исходящей маршрутизации, с небольшими дополнениями. Изначально сценарий запускается на внутренней линии сотрудника, когда во flash-буфере находится абонент и потенциально готовится перевод звонка. Номер для переключения определяется через функцию "''Внешний номер (CalledId)''"
 +
 
 +
Если во время работы сценария, переключающий пользователь положит трубку и тем самым произведет переключение, то в сценарий попадет линия переключаемого. Эта линия может быть как внешней (если это клиент), или внутренней (если переключают сотрудника). Для этого случая в сценарии по умолчанию установлен режим подмены обслуживаемой линии при переключении на него (определяется служебной переменной [[Сценарии IVR#VarFlash|Режим Flash]]). Включенный режим Flash означает, что при переключении сценарий подменит внутреннюю линию на линию переключаемого абонента и начнет свою работу с того же компонента, на котором он остановился. Если выключить режим Flash, то в момент переключения сценарий начнет свою работу с компонента ''Старт''. Подробнее о режиме перевода с подменой обслуживаемой линии [[Сценарии IVR#VarFlash|в описании служебной переменной «Режим FLASH»]]. Режим Flash во вложенных сценариях автоматически не включен и его надо устанавливать вручную.
 +
 
 +
Если сценарий не выбран, используется сценарий исходящей маршрутизации (если активирован) или общий режим работы.
  
Аналогичен сценарию исходящей маршрутизации. Запускается вместо него в случае, когда во флеш-буфере находится абонент и потенциально готовится перевод звонка. В этом сценарии по умолчанию установлен режим подмены обслуживаемой линии при переключении на него (определяется служебной переменной [[Сценарии IVR#VarFlash|Режим FLASH]]). В случае неактивности применяется сценарий исходящей маршрутизации (если активирован) или общий режим работы. Подробнее о режиме перевода с подменой обслуживаемой линии [[Сценарии IVR#VarFlash|в описании служебной переменной «Режим FLASH»]].
+
''Смотрите также: [[Урок 26 IVR сценарий переключения]]''
  
  
 
<div id="ScrExchange"></div>
 
<div id="ScrExchange"></div>
'''Сценарий IVR маршрутизации межсерверных звонков'''
+
<h4>Сценарий IVR маршрутизации межсерверных звонков</h4>
  
Аналогичен сценарию входящей маршрутизации. Запускается вместо него в случае, когда звонок поступает по каналу межсерверного взаимодействия. В случае неактивности применяется главный сценарий входящей маршрутизации.
+
Сценарий активируется когда звонок поступает по каналу межсерверного взаимодействия. Сценарий запускается на внешней линии. Аналогичен сценарию входящей маршрутизации. Если не выбран, используется главный сценарий входящей маршрутизации.
  
 +
''Смотрите также: [[Настройка межсерверного взаимодействия]]''
  
'''Сценарий IVR sip-transfer-переключения'''
 
  
IP-телефоны позволяют осуществлять переключение командой XFER (Transfer). На различных моделях телефонов комбинации могут отличаться. Однако в любом случае в момент подачи команды IP-телефон передает системе номер. В обычном режиме этот номер применяется линией переключаемого абонента для прямого набора в систему. Направление вызова (внешний или внутренний номер) определяется в этом случае системой на основании присутствия/отсутствия указанного номера во внутреннем номерном плане.
+
<div id="ScrTransfer"></div>
 +
<h4>Сценарий IVR sip-transfer-переключения</h4>
  
Указанием сценария sip-transfer-переключения активируется режим набора номера через сценарий. Для обработки линии абонента запускается обработчик сценария, на вход которого (в переменную на старте) передается номер, полученный с IP-телефона.
+
Сценарий активируется во время Transfer-переключения (слепого перевода). Сценарий запускается сразу на линии переключаемого, который может быть как внутренней, так и внешней линией. Аналогичен сценарию переключения. Произвести transfer-переключение можно через команду XFER (TRAN, Transfer) на IP-телефоне или через клиентское приложение. На различных моделях телефонов комбинации могут отличаться. Номер для переключения определяется через функцию "Входной параметр 1" или как параметр запуска у компонента "Старт". Если не выбран, используется сценарий исходящей маршрутизации.
 +
 
 +
''Смотрите также: [[Урок 26 IVR сценарий переключения]]''
  
  
 
<div id="ScrInsteadBusy"></div>
 
<div id="ScrInsteadBusy"></div>
'''Сценарий IVR вместо отбоя внешней линии'''
+
<h4>Сценарий IVR вместо отбоя внешней линии</h4>
  
Позволяет активировать режим соединения внешней линии с указанным IVR-сценарием вместо отбоя при разрыве связи по инициативе сервера. В момент, когда разрывается соединение по инициативе оператора или любого пользователя системы, стандартно внешняя линия получает отбой. При активации режима в этом случае внешняя линия будет переведена на указанный IVR-сценарий, где можно проанализировать глобальные переменные, задать вопрос анкеты о качестве связи или обслуживания, или даже переключить ее снова на любого абонента.
+
Активируется в момент разрыва соединения с внешней линией по инициативе внутреннего пользователя системы (оператор первым положил трубку) или сервера (командой "Мягкий сброс"). Сценарий запускается только на внешней линии. Если сценарий не указан, то внешняя линия получает отбой и абонент слышит гудки. Сценарий вместо отбоя позволяет дополнительно проанализировать сессионные переменные, задать вопрос анкеты о качестве связи или обслуживания, или даже переключить ее снова на любого абонента.
  
+
''Смотрите также: [[Урок 27 IVR сценарий вместо отбоя внешней линии]]''
'''Сценарий IVR запроса пароля'''
+
  
При активации режима [[Мобильная статистика]] путем указания множества масок номеров, вызовы на которые необходимо фиксировать, контролировать и подсчитывать, система при наборе попадающего под установленный набор масок номера и невозможности определения инициатора звонка (пользователя) осуществляет запрос пароля и переадресацию посредством указанного сценария (по умолчанию «(Служебный) Запрос пароля»).
 
  
 +
<h4>Сценарий IVR запроса пароля</h4>
  
 
+
При активации режима [[Мобильная статистика]] путем указания множества масок номеров, вызовы на которые необходимо фиксировать, контролировать и подсчитывать, система при наборе попадающего под установленный набор масок номера и невозможности определения инициатора звонка (пользователя) осуществляет запрос пароля и переадресацию посредством указанного сценария (по умолчанию "''(Служебный) Запрос пароля''").
---------------
+
--------------
+
  
  
 +
==Служебные сценарии==
  
 
<div id="SvcCallerIdModify"></div>
 
<div id="SvcCallerIdModify"></div>
'''Служебный сценарий преобразования CallerId'''
+
<h4>Служебный сценарий преобразования CallerId</h4>
  
В некоторых случаях при организации системы на разных типах каналов для общей картины в статистике, а также для возможности осуществления обратных вызовов "одним щелчком мышью" может потребоваться приведение определившегося номера в соответствующий нормальный вид. Если при определении номеров с некоторых направлений номеру требуется преобразование, необходимо активировать параметр и выбрать соответствующий служебный сценарий преобразования. В этом сценарии в качестве неявных параметров в сценарий передаются: 1 - определившийся номер CallerId, 2 - набранный номер CalledId. Функция [[Функции|Номер линии]] возвращает соответствующий индекс канала. Результат выполнения необходимо сохранить в служебной переменной [[Служебные сценарии|Возвращаемое значение 1]]. Код инициатора запуска служебного сценария - 13.
+
Запускается в момент поступления звонка (запроса INVITE) в систему. Используется для преобразования определившихся CallerId и CalledId к соответствующему виду, установленному в компании. Как правило, все номера преобразуют в формат, который принимает основной провайдер, тем самым облегчая call-back. В качестве неявных параметров в сценарий передаются:  
 +
*Входной параметр 1 - определившийся номер абонента CallerId
 +
*Входной параметр 2 - набранный номер CalledId.  
 +
При необходимости корректировки CallerId, вам нужно переопределенное значение сохранить в служебной переменной "[[Служебные сценарии|Возвращаемое значение 1]]". Для изменения CalledId присвойте его значение служебной переменной «Возвращаемое значение 2». Код инициатора запуска служебного сценария - 13.
  
 
<span style="color:red;">ВНИМАНИЕ! Сценарий должен быть максимально простым и быстрым, поскольку вызывается синхронно в обслуживающем потоке канала. Если в течение 2 секунд ответа получено не будет, то сценарий автоматически деактивируется и больше не будет применяться до пересохранения настроек.</span>
 
<span style="color:red;">ВНИМАНИЕ! Сценарий должен быть максимально простым и быстрым, поскольку вызывается синхронно в обслуживающем потоке канала. Если в течение 2 секунд ответа получено не будет, то сценарий автоматически деактивируется и больше не будет применяться до пересохранения настроек.</span>
  
+
''Смотрите также: [[Определение CallerID и CalledID]]''
'''Служебный сценарий получения данных из справочника РосФирм'''
+
  
Активирует применение справочника РОСФИРМ, содержащего 796 тысяч предприятий Российской Федерации, для всех поступающих звонков. Фактически это означает, что при входящем звонке Oktell получает из справочника информацию о названии компании, соответствующей определившемуся номеру телефона, и отображает её на экране монитора сотрудника при переводе звонка.  
+
 
 +
<h4>Служебный сценарий получения данных из справочника РосФирм</h4>
 +
 
 +
Запускает асинхронный служебный сценарий одновременно с главным сценарием. Основная задача сценария получить информацию об абоненте и присвоить ее текущей линии (через компонент "Статус объекта", свойство - название абонента). Информацию об абоненте вы можете получить через различные справочники и веб-сервисы. Одним из таких справочников является РОСФИРМ, содержащий 796 тысяч предприятий Российской Федерации. Таким образом, при входящем звонке Oktell получает из справочника информацию о названии компании, соответствующей определившемуся номеру телефона, присваивает ее текущей линии (пользуясь функцией "''Guid-идентификатор линии''") и затем отображает во время поступления звонка сотруднику. Код инициатора запуска служебного сценария - 28.
 +
*Входной параметр 1 - номер абонента CallerId
 +
*Входной параметр 2 - набранный номер CalledId
 +
<span style="color:red">ВНИМАНИЕ: Если переключение на сотрудника в главном сценарии произойдет раньше, чем отработает статус объекта, то сотруднику информация об абоненте не отобразится. В статистике АТС эта информация также присутствовать не будет. Исходя из этого, следует обеспечить скорость выполнения сценария или воспользоваться переменными для блокировки или приостановки работы главного сценария.
  
  
 
<div id="SvcDialExt"></div>  
 
<div id="SvcDialExt"></div>  
'''Служебный сценарий набора внешних/быстрых номеров'''
+
<h4>Служебный сценарий набора внешних/быстрых номеров</h4>
  
Задействует режим набора внешних/быстрых номеров менеджером очередей через служебный сценарий. В обычном режиме набор осуществляется непосредственно в одну из внешних линий, доступных пользователю по правам. В условиях настройки сложных маршрутов может потребоваться разбор номера и, в зависимости от различных параметров, перенаправление и индивидуальное определение маршрута с указанием команды на набор.  
+
Сценарий активируется, когда набор внешнего номера происходит неявным образом. В сценарии следует обеспечить логику, аналогичную исходящей маршрутизации. Запуск этого сценария происходит в следующих случаях:
 +
# При наборе [[Внутренние номера#Быстрые номера|внутреннего быстрого номера]] (код инициатора 15)
 +
# При наборе [[Внутренние номера#Стандартные номера|внутреннего стандартного номера]], содержащего одну или несколько записей о звонках на внешние номера - запуск осуществляется для каждого (код инициатора 24)
 +
# При вызове внешнего номера [[Конференц-связь|из конференции]] (код инициатора 23).
  
Запуск этого сценария происходит при наборе [[Внутренние номера#Быстрые номера|внутреннего быстрого номера]] (код инициатора 15), при наборе [[Внутренние номера#Стандартные номера|внутреннего стандартного номера]], содержащего одну или несколько записей о звонках на внешние номера - запуск осуществляется для каждого (код инициатора 24), а также при вызове внешнего номера [[Конференц-связь|из конференции]] (код инициатора 23).
+
В качестве неявных параметров в сценарий передаются:
 +
*Входной параметр 1 - внешний номер, подлежащий набору
 +
*Входной параметр 2 - время ожидания ответа в секундах, которое было бы применено системой при работе без сценария,  
 +
*Входной параметр 3 - внутренний номер, посредством которого осуществляется вызов внешнего (внутренние быстрые, внутренние стандартные номера) или пустая строка в случае вызова напрямую (из конференции).
  
В качестве неявных параметров в служебный сценарий передаются: 1 - внешний номер, подлежащий набору, 2 - время ожидания ответа в секундах, которое было бы применено системой при работе без сценария, 3 - внутренний номер, посредством которого осуществляется вызов внешнего (внутренние быстрые, внутренние стандартные номера) или пустая строка в случае вызова напрямую (из конференции).
+
''Смотрите также: [[Урок_25_Маршрутизация_исходящих_вызовов#.D0.A1.D1.86.D0.B5.D0.BD.D0.B0.D1.80.D0.B8.D0.B9_.D0.BD.D0.B0.D0.B1.D0.BE.D1.80.D0.B0_.D0.B1.D1.8B.D1.81.D1.82.D1.80.D1.8B.D1.85.2F.D0.B2.D0.BD.D0.B5.D1.88.D0.BD.D0.B8.D1.85_.D0.BD.D0.BE.D0.BC.D0.B5.D1.80.D0.BE.D0.B2| Сценарий набора внешних/быстрых номеров]].
 +
''
  
См также [[Линии#Направления|Администрирование. Линии. Направления]], [[Компоненты служебных сценариев#Дозвон|Сценарии. Служебные. Компоненты. Дозвон]].
 
  
+
<div id="SvcContent"></div>
'''Служебный сценарий обработки контента'''
+
<h4>Служебный сценарий обработки контента</h4>
  
В ходе обработки внешнего звонка сервером производится сбор так называемого контента. Это идентификационная информация по линии, абоненту, времени, а также перечень всех коммутаций с указанием имени сценария, идентификатора и имени оператора, времени начала, времени конца, продолжительности и пр. После завершения звонка запускается указанный в этом поле служебный сценарий (если таковой найден) и в него на вход передается собранный контент в строковом виде. Дальнейшие действия производятся в служебном сценарии. Код инициатора запуска служебного сценария - 25.
+
Сценарий запускается после завершения коммутации с внешней линией и предназначен для постобработки внешнего звонка. На вход сценария поступает контент линии - XML структура с идентификационной информацией по линии, абоненту, времени, а также перечень всех коммутаций с указанием имени сценария, идентификатора и имени оператора, времени начала, времени конца, продолжительности и пр. Для разбора полученной структуры следует использовать компонент "Парсер" с алгоритмом OQuery. Код инициатора запуска служебного сценария - 25.
За подробным описанием обратитесь в раздел [[Служебные сценарии|Call-центр. Сценарии. Служебные сценарии]].
+
*Входной параметр 1 - контент линии в XML-формате
 +
 
 +
''Смотрите также: [[Служебный сценарий обработки контента]]''
  
  
 
<div id="SvcSendEmail"></div>
 
<div id="SvcSendEmail"></div>
'''Служебный сценарий отправки электронной почты'''
+
<h4>Служебный сценарий отправки электронной почты</h4>
 +
 
 +
Сценарий запускается, когда пользователь выберет в модуле "Телефон" действие "''Отправить e-mail''" и после ввода параметров нажмет ОК. Действие доступно только во время разговора, подробнее [[Передача_e-mail_и_SMS-сообщений|в технической документации]]. Предназначен для отправки электронной почты на указанный адрес. Код инициатора запуска служебного сценария - 30.
  
Сценарий применяется для отправки электронной почты на указанный адрес. Его запуск автоматически инициируется в клиентском приложении при соответствующем действии в модуле софт-телефона [[Передача_e-mail_и_SMS-сообщений|(здесь)]]. Код инициатора запуска служебного сценария - 30.
+
В качестве неявных параметров в служебный сценарий передаются:
 +
*Входной параметр 1 - адреса получателей (возможно несколько через запятую)
 +
*Входной параметр 2 - тема сообщения
 +
*Входной параметр 3 - тело сообщения
 +
*Входной параметр 4 - путь к каталогу с файлами для вложения.  
  
В качестве неявных параметров в служебный сценарий передаются: 1 - адреса получателей (возможно несколько через запятую), 2 - тема сообщения, 3 - тело сообщения, 4 - путь к каталогу с файлами для вложения. Среди явных параметров - информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.
+
Среди явных параметров (через функции) информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.
  
 
<span style="color:red;">ВНИМАНИЕ! Рекомендуется разделить адреса и отправить письмо на каждый адрес отдельно, так как в случае единой отправки и ошибки в одном из адресов, письмо не будет отправлено никуда.
 
<span style="color:red;">ВНИМАНИЕ! Рекомендуется разделить адреса и отправить письмо на каждый адрес отдельно, так как в случае единой отправки и ошибки в одном из адресов, письмо не будет отправлено никуда.
  
<span style="color:red;">ВНИМАНИЕ! Вложения, выбранные пользователем-инициатором, предварительно закачаны на сервер в указанный в параметре 4 каталог. От сценария требуется просмотр каталога, считывание имен всех файлов, и указание их в качестве вложений компонента [[Общие компоненты сценариев#EmailSend|Отправка Email]].
+
<span style="color:red;">ВНИМАНИЕ! Вложения, выбранные пользователем-инициатором, предварительно закачиваются на сервер в указанный в параметре 4 каталог. От сценария требуется просмотр каталога, считывание имен всех файлов, и указание их в качестве вложений компонента [[Общие компоненты сценариев#EmailSend|Отправка Email]].
  
  
 
<div id="SvcSendSms"></div>
 
<div id="SvcSendSms"></div>
'''Служебный сценарий отправки SMS-сообщения'''
+
<h4>Служебный сценарий отправки SMS-сообщения</h4>
  
Сценарий применяется для отправки электронной почты на указанный адрес. Его запуск автоматически инициируется в клиентском приложении при соответствующем действии в модуле софт-телефона [[Передача_e-mail_и_SMS-сообщений|(здесь)]]. Код инициатора запуска служебного сценария - 29.
+
Сценарий запускается, когда пользователь выберет в модуле "Телефон" действие "''Отправить SMS''" и после ввода параметров нажмет ОК. Действие доступно только во время разговора, подробнее [[Передача_e-mail_и_SMS-сообщений|в технической документации]]. Применяется для отправки SMS на указанный адрес. Код инициатора запуска служебного сценария - 29.
  
В качестве неявных параметров в служебный сценарий передаются: 1 - номер получателя, 2 - текст сообщения. Среди явных параметров - информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.
+
В качестве неявных параметров в служебный сценарий передаются:  
 +
*Входной параметр 1 - номер получателя
 +
*Входной параметр 2 - текст сообщения.  
 +
Среди явных параметров (через функции) — информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.
  
 
'''Служебный сценарий набора внутренних номеров при приглашении в конференцию'''
 
  
Задействует режим набора внутренних номеров через служебный сценарий. В обычном режиме набор осуществляется через встроенный менеджер очередей. При необходимости расширить географию внутренних абонентов может потребоваться разбор номера и, в зависимости от различных параметров, перенаправление как во внешнюю, так и во внутреннюю сеть. В этом случае в служебном сценарии необходимо использовать компонент [[Компоненты служебных сценариев#Дозвон|Дозвон]] с обслуживанием в [[Компоненты служебных сценариев#Дозвон|управляющем модуле с ожиданием в сценарии]].
+
<h4>Служебный сценарий набора внутренних номеров при приглашении в конференцию</h4>
  
Также этим путем может быть организована внешняя очередь, реализованная как некий сервис. В обычных условиях если сценарий так и не получил ответа и вернул управление безрезультатно, конференция отбивает участника, выставляя ему состояние «не ответил». Однако при установке значения «1» служебной переменной «Возвращаемое значение 1» и безрезультатном возврате управления из сценария конференция тем не менее оставляет участника в состоянии «Ожидание ответа».
+
Активируется при добавлении внутреннего номера в конференцию. Если сценарий выключен, набор осуществляется через встроенный менеджер очередей. При необходимости расширить географию внутренних абонентов может потребоваться разбор номера и, в зависимости от различных параметров, перенаправление как во внешнюю, так и во внутреннюю сеть. В этом случае в служебном сценарии необходимо использовать компонент [[Компоненты служебных сценариев#Дозвон|Дозвон]] с обслуживанием ''"Управляющий модуль с ожиданием в сценарии"''.  
  
Сценарий на вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае производится). В качестве неявного стартового параметра передается вызываемый номер. Код инициатора запуска служебного сценария - 17.
+
Также этим путем может быть организована внешняя очередь, реализованная как некий сервис. В обычных условиях если сценарий так и не получил ответа и вернул управление безрезультатно, конференция отбивает участника, выставляя ему состояние «не ответил». Однако при установке значения «1» служебной переменной «Возвращаемое значение 1» и безрезультатном возврате управления из сценария конференция тем не менее оставляет участника в состоянии «Ожидание ответа». На основе идентификационных параметров в асинхронном служебном сценарии может быть произведен последующий вход в конференцию произвольного канала с привязкой именно к этому участнику (посредством IVR сценария и компонента [[Компоненты сценариев IVR#Вход в конференцию|Конференция]]). В качестве кода участника и кода конференции могут быть использованы как строковые представления идентификаторов, так и коды идентификаторов - уникальные целые числа, являющиеся функциями от соответствующих guid-идентификаторов. См также [[Функции|Сценарии. Функции]].
  
На основе идентификационных параметров может быть произведен последующий вход в конференцию произвольного канала с привязкой именно к этому участнику (посредством IVR сценария и компонента [[Компоненты сценариев IVR#Вход в конференцию|Конференция]]). В качестве кода участника и кода конференции могут быть использованы как строковые представления идентификаторов, так и коды идентификаторов - довольно уникальные целые числа, являющиеся функциями от соответствующих guid-идентификаторов. См также [[Функции|Сценарии. Функции]].
+
Сценарий на вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае производится). В качестве неявных параметров передаются:
 +
*Входной параметр 1 - вызываемый внутренний номер
 +
*Входной параметр 2 - время ожидания ответа в секундах, которое было бы применено системой при работе без сценария
 +
Код инициатора запуска служебного сценария - 17.
  
 
'''Служебный сценарий прерывания набора внутренних номеров в конференции'''
 
  
При использовании сценария набора внутреннего номера при приглашении в конференцию (описание выше) возможно использование внешней очереди, реализованной как некий сервис. При этом, если в ходе ожидания ответа производится обрыв приглашения, во внешней очереди рискует остаться информация. Использование этого сценария - единственный вариант по зачистке.
+
<h4>Служебный сценарий прерывания набора внутренних номеров в конференции</h4>
  
На вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае прерывается). В качестве неявного стартового параметра передается вызываемый номер. Код инициатора запуска служебного сценария - 19.
+
Активируется в момент исключения вызываемого внутреннего номера из конференции. Может быть использован для зачистки информации из внешней очереди (кейс описан выше), когда в ходе ожидания ответа был произведен обрыв приглашения.
 +
 
 +
На вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае прерывается). В качестве неявных параметров передается:
 +
*Входной параметр 1 - внутренний номер, вызов к которому был отклонен
 +
Код инициатора запуска служебного сценария - 19.
  
 
   
 
   
'''Служебный сценарий обработки завершения конференции'''
+
<h4>Служебный сценарий обработки завершения конференции</h4>
  
Служебный сценарий, выполняемый сразу после завершения конференции.  
+
Активируется сразу после завершения любой конференции. На вход через стандартные функции служебных сценариев принимает идентификатор, код идентификатора конференции, номер комнаты. В качестве неявных стартовых параметров передаются:
 
+
*Входной параметр 1 - путь к файлу с записью
На вход через стандартные функции служебных сценариев принимает идентификатор, код идентификатора конференции, номер комнаты. В качестве неявных стартовых параметров передаются: 1 - путь к файлу с записью, 2 -название конференции, 3 - описание конференции. Код инициатора запуска служебного сценария - 20.
+
*Входной параметр 2 - название конференции
 +
*Входной параметр 3 - описание конференции
 +
Код инициатора запуска служебного сценария - 20.
  
 
В момент запуска сценария файл еще упаковывается и, в зависимости от продолжительности конференции, может иметь разный размер и соответственно время упаковки. Поэтому следует проверять наличие файла, а также выжидать некоторое время, прежде чем копировать или использовать любым другим образом файл записи.
 
В момент запуска сценария файл еще упаковывается и, в зависимости от продолжительности конференции, может иметь разный размер и соответственно время упаковки. Поэтому следует проверять наличие файла, а также выжидать некоторое время, прежде чем копировать или использовать любым другим образом файл записи.
  
  
[[Системные настройки|Наверх]]
+
<h4>Служебный сценарий обработки текстового SIP-сообщения</h4>
 +
 
 +
Запускается при получении sip-сервером сообщения MESSAGE. Сценарий обрабатывает сообщение и, в случае надобности, отправляет ответ, пользуясь компонентом "Уведомление" со способом оповещения "''SIP-сообщение''". В качестве неявных параметров в служебный сценарий передаются:
 +
*Входной параметр 1 - текст сообщения
 +
*Входной параметр 2 - CallerId отправителя
 +
*Входной параметр 3 - CallerName отправителя
 +
*Входной параметр 4 - идентификатор внутренней линии
 +
*Входной параметр 5 - полный текст SIP-сообщения
 +
Код инициатора запуска служебного сценария - 37
 +
 
 +
 
 +
<div id="SvcUserStateChanged"></div>
 +
<h4>Служебный сценарий уведомления об смене основных состояний пользователя</h4>
 +
 
 +
Запускается при изменении состояния пользователя в системе. На вход через стандартные функции служебных сценариев принимает идентификатор пользователя. В качестве неявных стартовых параметров передаются:
 +
*Входной параметр 1 - идентификатор пользователя
 +
*Входной параметр 2 - код операции, где
 +
::1 - вход/выход из системы
 +
::2 - вход/выход из Call-центра
 +
::3 - вход/выход из статуса "Перерыв"
 +
::4 - вход/выход из ручного режима Call-центра
 +
::5 - вход/выход из статуса "Переадресация"
 +
*Входной параметр 3 - код действия, где 1 - вход в состояние, 0 - выход из состояния
 +
Код инициатора запуска служебного сценария - 34
 +
 
 +
 
 +
<div id="SvcUserChanged"></div>
 +
<h4>Служебный сценарий уведомления об изменении учетной записи пользователя</h4>
 +
 
 +
Выполняется при изменении учетной записи пользователя в разделе [[Пользователи]]. На вход через стандартные функции служебных сценариев принимает идентификатор администратора. В качестве неявных стартовых параметров передаются:
 +
*Входной параметр 1 - идентификатор изменяемого пользователя
 +
*Входной параметр 2 - код операции (1-создание, 2-изменение, 3-удаление)
 +
*Входной параметр 3 - логин
 +
*Входной параметр 4 - пароль (непустой только в случае создания или изменения, в ходе которого изменен в том числе пароль)
 +
*Входной параметр 5 - имя
 +
Код инициатора запуска служебного сценария - 33.
 +
 
 +
 
 +
<div id="SvcUserLogin"></div>
 +
<h4>Служебный сценарий внешней авторизации пользователя</h4>
 +
 
 +
Выполняется в момент авторизации пользователя в систему. Работает только для авторизации в толстом (windows) клиентском приложении. Сценарий предназначен для анализа введенных значений логина и пароля, которые могут не совпадать с существующими учетными записями. Для проверки значений сценарий использует внешнюю систему (CRM, внешнюю БД) через веб-запрос или путем обращения к БД. Если данные верны, следует присвоить '''логин''' существующего пользователя Oktell, под которым будет произведен вход в систему, в служебную переменную "Возвращаемое значение 1" .
 +
 
 +
На вход через стандартные функции служебных сценариев принимает идентификатор пользователя. В качестве неявных стартовых параметров передаются:
 +
*Входной параметр 1 - введенный логин
 +
*Входной параметр 2 - введенный пароль
 +
*Входной параметр 3 - имя хоста клиентской станции
 +
Код инициатора запуска служебного сценария - 36.
 +
 
 +
 
 +
<h4>Служебный сценарий обработки ошибки авторизации</h4>
 +
 
 +
Сценарий используется только для неверных авторизаций через WebSocket или Http. Для неверных авторизаций с толстого клиента работать не будет. Запускается если с определенной станции число неверных запросов на авторизацию превысило 20 раз в 10 минут. Сценарий предназначен для предупреждения администратора о возможной DDOS-атаке или переборе пароля. Если число запросов превышает 20 раз за 20 секунд, IP-адрес попадает в бан.
 +
 
 +
В качестве неявных стартовых параметров передаются:
 +
* Входной параметр 1 - IP-адрес отправки запросов.
 +
* Входной параметр 2 - введенный логин
 +
* Входной параметр 3 - введенный пароль в md5
 +
* Входной параметр 4 - сессия, если клиент авторизуется под активной сессией
 +
* Входной параметр 5 - код причины неверной авторизации. Код возвращается в виде 1xx - для WebSocket подключения и 2xx - для http-запросов. Возможны следующие коды (последние два знака):
 +
:*01 - Учетная запись не найдена
 +
:*02 - Неверная сессия
 +
:*03 - Сессия не найдена
 +
:*04 - Сценарий внешней авторизации запретил вход
 +
:*05 - Сценарий внешней авторизации вернул неверный логин
 +
:*06 - Сценарий внешней авторизации превысил время таймаута 10 секунд
 +
:*07 - Неверный пароль
 +
:*08 - Доступ запрещен для роли
 +
Инициатор запуска — 38
 +
 
 +
 
 +
<h4>Служебный сценарий поиска записи разговора</h4>
 +
 
 +
Сначала файл записи ищется по стандартному пути. Если не найден - запускается сценарий "Служебный сценарий поиска записи разговора".
 +
 
 +
На вход в качестве неявных стартовых параметров передаются:
 +
* Входной параметр 1 - id коммутации или конференции.
 +
* Входной параметр 2 - тип звонка (0 - коммутация, 1-конференция)
 +
* Входной параметр 3 - тип операции с файлом (1 - скачать, 0 - удалить)
 +
 
 +
В служебную переменную "Возвращаемое значение 1" должен быть сохранен путь к скачанному файлу на сервере или строка "double".
 +
 
 +
При запросе из толстого клиента - ожидание сценария 200 мс синхронно и потом ответ "файл занят, попробуйте позже".
 +
При запросе из веб приложения - ожидание синхронно не более минуты.
 +
 
 +
Борьба с дубликатами запросов, поступившими пока файл еще качается в другой сессии сценария - на самом сценарии.
 +
Если сценарий отказывает на очередной запрос в запуске по причине дубликата (еще не завершившегося сценария) - нужно вернуть строку "double", тогда пользователь увидит "файл занят, попробуйте позже" вместо "файл не найден".
 +
Рекомендуется скачивать во временное хранилище, а затем переносить по исходному месторасположению.

Текущая версия на 13:29, 24 июля 2015

Техническая документация / Администрирование / Общие Настройки / Системные настройки / Сценарии АТС


Содержание

Сценарии IVR

Сценарий IVR маршрутизации входящих звонков (главный)

Cценарий IVR входящей маршрутизации (или как его еще называют Главный сценарий) обрабатывает все входящие вызовы, поступающие в систему с внешних линий. Сценарий запускается исключительно на внешних линиях. Как правило, сценарий осуществляет звуковое воспроизведение, переключение на сотрудников, перевод звонка в другие вложенные сценарии или проекты call-центра. В списке сценариев (Администрирование/Сценарии) главный сценарий выделяется красным цветом. Он также может быть выбран непосредственно в контекстном меню списка сценариев "Назначить главным" или нажатием кнопки "Главный". Сценарий обязательно должен быть выбран в системе, иначе вы не сможете принять ни один вызов.

Смотрите также: Урок 24 IVR сценарий входящей маршрутизации


Сценарий IVR маршрутизации исходящих звонков

Сценарий IVR исходящей маршрутизации обрабатывает все вызовы, поступающие с внутренних линий. Запускается исключительно на внутренних линиях. Сценарий ожидает ввода номера, а затем производит маршрутизацию на внешние либо внутренние линии. Необходимо иметь в виду, что устройства по-разному набирают и передают номер в сценарий. Например, снятая трубка на аналоговом или USB аппарате приведет к запуску сценария с пустым значением функции CalledId. В то же время дозвон с IP-телефона в качестве функции CalledId будет возвращать всю последовательность цифр, набранную на аппарате до нажатия CALL. Исходя из этого, в начале сценария необходимо оценивать набранный номер через функцию "Внешний номер (CalledId)".

В стандартном сценарии переключение на внутренние номера происходит, если длина номера 3 символа. Если вы собираетесь использовать 4х-символьный номерной план или длиннее, необходимо подкорректировать данный сценарий. Следует также учесть, что вызовы на короткие номера через внешние линии по умолчанию заблокированы.

Если сценарий не назначен, для исходящего звонка на внешний номер выбирается первая свободная внешняя линия.

Смотрите также: Урок 25 Маршрутизация исходящих вызовов


Сценарий IVR маршрутизации при переводе звонка

IVR сценарий переключения активируется во время Flash-переключения (консультативного перевода). Сценарий может запускаться как на внешней, так и на внутренней линии. Аналогичен сценарию исходящей маршрутизации, с небольшими дополнениями. Изначально сценарий запускается на внутренней линии сотрудника, когда во flash-буфере находится абонент и потенциально готовится перевод звонка. Номер для переключения определяется через функцию "Внешний номер (CalledId)"

Если во время работы сценария, переключающий пользователь положит трубку и тем самым произведет переключение, то в сценарий попадет линия переключаемого. Эта линия может быть как внешней (если это клиент), или внутренней (если переключают сотрудника). Для этого случая в сценарии по умолчанию установлен режим подмены обслуживаемой линии при переключении на него (определяется служебной переменной Режим Flash). Включенный режим Flash означает, что при переключении сценарий подменит внутреннюю линию на линию переключаемого абонента и начнет свою работу с того же компонента, на котором он остановился. Если выключить режим Flash, то в момент переключения сценарий начнет свою работу с компонента Старт. Подробнее о режиме перевода с подменой обслуживаемой линии в описании служебной переменной «Режим FLASH». Режим Flash во вложенных сценариях автоматически не включен и его надо устанавливать вручную.

Если сценарий не выбран, используется сценарий исходящей маршрутизации (если активирован) или общий режим работы.

Смотрите также: Урок 26 IVR сценарий переключения


Сценарий IVR маршрутизации межсерверных звонков

Сценарий активируется когда звонок поступает по каналу межсерверного взаимодействия. Сценарий запускается на внешней линии. Аналогичен сценарию входящей маршрутизации. Если не выбран, используется главный сценарий входящей маршрутизации.

Смотрите также: Настройка межсерверного взаимодействия


Сценарий IVR sip-transfer-переключения

Сценарий активируется во время Transfer-переключения (слепого перевода). Сценарий запускается сразу на линии переключаемого, который может быть как внутренней, так и внешней линией. Аналогичен сценарию переключения. Произвести transfer-переключение можно через команду XFER (TRAN, Transfer) на IP-телефоне или через клиентское приложение. На различных моделях телефонов комбинации могут отличаться. Номер для переключения определяется через функцию "Входной параметр 1" или как параметр запуска у компонента "Старт". Если не выбран, используется сценарий исходящей маршрутизации.

Смотрите также: Урок 26 IVR сценарий переключения


Сценарий IVR вместо отбоя внешней линии

Активируется в момент разрыва соединения с внешней линией по инициативе внутреннего пользователя системы (оператор первым положил трубку) или сервера (командой "Мягкий сброс"). Сценарий запускается только на внешней линии. Если сценарий не указан, то внешняя линия получает отбой и абонент слышит гудки. Сценарий вместо отбоя позволяет дополнительно проанализировать сессионные переменные, задать вопрос анкеты о качестве связи или обслуживания, или даже переключить ее снова на любого абонента.

Смотрите также: Урок 27 IVR сценарий вместо отбоя внешней линии


Сценарий IVR запроса пароля

При активации режима Мобильная статистика путем указания множества масок номеров, вызовы на которые необходимо фиксировать, контролировать и подсчитывать, система при наборе попадающего под установленный набор масок номера и невозможности определения инициатора звонка (пользователя) осуществляет запрос пароля и переадресацию посредством указанного сценария (по умолчанию "(Служебный) Запрос пароля").


Служебные сценарии

Служебный сценарий преобразования CallerId

Запускается в момент поступления звонка (запроса INVITE) в систему. Используется для преобразования определившихся CallerId и CalledId к соответствующему виду, установленному в компании. Как правило, все номера преобразуют в формат, который принимает основной провайдер, тем самым облегчая call-back. В качестве неявных параметров в сценарий передаются:

  • Входной параметр 1 - определившийся номер абонента CallerId
  • Входной параметр 2 - набранный номер CalledId.

При необходимости корректировки CallerId, вам нужно переопределенное значение сохранить в служебной переменной "Возвращаемое значение 1". Для изменения CalledId присвойте его значение служебной переменной «Возвращаемое значение 2». Код инициатора запуска служебного сценария - 13.

ВНИМАНИЕ! Сценарий должен быть максимально простым и быстрым, поскольку вызывается синхронно в обслуживающем потоке канала. Если в течение 2 секунд ответа получено не будет, то сценарий автоматически деактивируется и больше не будет применяться до пересохранения настроек.

Смотрите также: Определение CallerID и CalledID


Служебный сценарий получения данных из справочника РосФирм

Запускает асинхронный служебный сценарий одновременно с главным сценарием. Основная задача сценария получить информацию об абоненте и присвоить ее текущей линии (через компонент "Статус объекта", свойство - название абонента). Информацию об абоненте вы можете получить через различные справочники и веб-сервисы. Одним из таких справочников является РОСФИРМ, содержащий 796 тысяч предприятий Российской Федерации. Таким образом, при входящем звонке Oktell получает из справочника информацию о названии компании, соответствующей определившемуся номеру телефона, присваивает ее текущей линии (пользуясь функцией "Guid-идентификатор линии") и затем отображает во время поступления звонка сотруднику. Код инициатора запуска служебного сценария - 28.

  • Входной параметр 1 - номер абонента CallerId
  • Входной параметр 2 - набранный номер CalledId

ВНИМАНИЕ: Если переключение на сотрудника в главном сценарии произойдет раньше, чем отработает статус объекта, то сотруднику информация об абоненте не отобразится. В статистике АТС эта информация также присутствовать не будет. Исходя из этого, следует обеспечить скорость выполнения сценария или воспользоваться переменными для блокировки или приостановки работы главного сценария.


Служебный сценарий набора внешних/быстрых номеров

Сценарий активируется, когда набор внешнего номера происходит неявным образом. В сценарии следует обеспечить логику, аналогичную исходящей маршрутизации. Запуск этого сценария происходит в следующих случаях:

  1. При наборе внутреннего быстрого номера (код инициатора 15)
  2. При наборе внутреннего стандартного номера, содержащего одну или несколько записей о звонках на внешние номера - запуск осуществляется для каждого (код инициатора 24)
  3. При вызове внешнего номера из конференции (код инициатора 23).

В качестве неявных параметров в сценарий передаются:

  • Входной параметр 1 - внешний номер, подлежащий набору
  • Входной параметр 2 - время ожидания ответа в секундах, которое было бы применено системой при работе без сценария,
  • Входной параметр 3 - внутренний номер, посредством которого осуществляется вызов внешнего (внутренние быстрые, внутренние стандартные номера) или пустая строка в случае вызова напрямую (из конференции).

Смотрите также: Сценарий набора внешних/быстрых номеров.


Служебный сценарий обработки контента

Сценарий запускается после завершения коммутации с внешней линией и предназначен для постобработки внешнего звонка. На вход сценария поступает контент линии - XML структура с идентификационной информацией по линии, абоненту, времени, а также перечень всех коммутаций с указанием имени сценария, идентификатора и имени оператора, времени начала, времени конца, продолжительности и пр. Для разбора полученной структуры следует использовать компонент "Парсер" с алгоритмом OQuery. Код инициатора запуска служебного сценария - 25.

  • Входной параметр 1 - контент линии в XML-формате

Смотрите также: Служебный сценарий обработки контента


Служебный сценарий отправки электронной почты

Сценарий запускается, когда пользователь выберет в модуле "Телефон" действие "Отправить e-mail" и после ввода параметров нажмет ОК. Действие доступно только во время разговора, подробнее в технической документации. Предназначен для отправки электронной почты на указанный адрес. Код инициатора запуска служебного сценария - 30.

В качестве неявных параметров в служебный сценарий передаются:

  • Входной параметр 1 - адреса получателей (возможно несколько через запятую)
  • Входной параметр 2 - тема сообщения
  • Входной параметр 3 - тело сообщения
  • Входной параметр 4 - путь к каталогу с файлами для вложения.

Среди явных параметров (через функции) — информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.

ВНИМАНИЕ! Рекомендуется разделить адреса и отправить письмо на каждый адрес отдельно, так как в случае единой отправки и ошибки в одном из адресов, письмо не будет отправлено никуда.

ВНИМАНИЕ! Вложения, выбранные пользователем-инициатором, предварительно закачиваются на сервер в указанный в параметре 4 каталог. От сценария требуется просмотр каталога, считывание имен всех файлов, и указание их в качестве вложений компонента Отправка Email.


Служебный сценарий отправки SMS-сообщения

Сценарий запускается, когда пользователь выберет в модуле "Телефон" действие "Отправить SMS" и после ввода параметров нажмет ОК. Действие доступно только во время разговора, подробнее в технической документации. Применяется для отправки SMS на указанный адрес. Код инициатора запуска служебного сценария - 29.

В качестве неявных параметров в служебный сценарий передаются:

  • Входной параметр 1 - номер получателя
  • Входной параметр 2 - текст сообщения.

Среди явных параметров (через функции) — информация о пользователе-инициаторе запуска и его линии, а также идентификатор сессии/цепочки коммутаций.


Служебный сценарий набора внутренних номеров при приглашении в конференцию

Активируется при добавлении внутреннего номера в конференцию. Если сценарий выключен, набор осуществляется через встроенный менеджер очередей. При необходимости расширить географию внутренних абонентов может потребоваться разбор номера и, в зависимости от различных параметров, перенаправление как во внешнюю, так и во внутреннюю сеть. В этом случае в служебном сценарии необходимо использовать компонент Дозвон с обслуживанием "Управляющий модуль с ожиданием в сценарии".

Также этим путем может быть организована внешняя очередь, реализованная как некий сервис. В обычных условиях если сценарий так и не получил ответа и вернул управление безрезультатно, конференция отбивает участника, выставляя ему состояние «не ответил». Однако при установке значения «1» служебной переменной «Возвращаемое значение 1» и безрезультатном возврате управления из сценария конференция тем не менее оставляет участника в состоянии «Ожидание ответа». На основе идентификационных параметров в асинхронном служебном сценарии может быть произведен последующий вход в конференцию произвольного канала с привязкой именно к этому участнику (посредством IVR сценария и компонента Конференция). В качестве кода участника и кода конференции могут быть использованы как строковые представления идентификаторов, так и коды идентификаторов - уникальные целые числа, являющиеся функциями от соответствующих guid-идентификаторов. См также Сценарии. Функции.

Сценарий на вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае производится). В качестве неявных параметров передаются:

  • Входной параметр 1 - вызываемый внутренний номер
  • Входной параметр 2 - время ожидания ответа в секундах, которое было бы применено системой при работе без сценария

Код инициатора запуска служебного сценария - 17.


Служебный сценарий прерывания набора внутренних номеров в конференции

Активируется в момент исключения вызываемого внутреннего номера из конференции. Может быть использован для зачистки информации из внешней очереди (кейс описан выше), когда в ходе ожидания ответа был произведен обрыв приглашения.

На вход через стандартные функции служебных сценариев принимает идентификатор и код идентификатора конференции, номер комнаты, идентификатор и код идентификатора вызываемого участника (вызов которого в данном случае прерывается). В качестве неявных параметров передается:

  • Входной параметр 1 - внутренний номер, вызов к которому был отклонен

Код инициатора запуска служебного сценария - 19.


Служебный сценарий обработки завершения конференции

Активируется сразу после завершения любой конференции. На вход через стандартные функции служебных сценариев принимает идентификатор, код идентификатора конференции, номер комнаты. В качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - путь к файлу с записью
  • Входной параметр 2 - название конференции
  • Входной параметр 3 - описание конференции

Код инициатора запуска служебного сценария - 20.

В момент запуска сценария файл еще упаковывается и, в зависимости от продолжительности конференции, может иметь разный размер и соответственно время упаковки. Поэтому следует проверять наличие файла, а также выжидать некоторое время, прежде чем копировать или использовать любым другим образом файл записи.


Служебный сценарий обработки текстового SIP-сообщения

Запускается при получении sip-сервером сообщения MESSAGE. Сценарий обрабатывает сообщение и, в случае надобности, отправляет ответ, пользуясь компонентом "Уведомление" со способом оповещения "SIP-сообщение". В качестве неявных параметров в служебный сценарий передаются:

  • Входной параметр 1 - текст сообщения
  • Входной параметр 2 - CallerId отправителя
  • Входной параметр 3 - CallerName отправителя
  • Входной параметр 4 - идентификатор внутренней линии
  • Входной параметр 5 - полный текст SIP-сообщения

Код инициатора запуска служебного сценария - 37


Служебный сценарий уведомления об смене основных состояний пользователя

Запускается при изменении состояния пользователя в системе. На вход через стандартные функции служебных сценариев принимает идентификатор пользователя. В качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - идентификатор пользователя
  • Входной параметр 2 - код операции, где
1 - вход/выход из системы
2 - вход/выход из Call-центра
3 - вход/выход из статуса "Перерыв"
4 - вход/выход из ручного режима Call-центра
5 - вход/выход из статуса "Переадресация"
  • Входной параметр 3 - код действия, где 1 - вход в состояние, 0 - выход из состояния

Код инициатора запуска служебного сценария - 34


Служебный сценарий уведомления об изменении учетной записи пользователя

Выполняется при изменении учетной записи пользователя в разделе Пользователи. На вход через стандартные функции служебных сценариев принимает идентификатор администратора. В качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - идентификатор изменяемого пользователя
  • Входной параметр 2 - код операции (1-создание, 2-изменение, 3-удаление)
  • Входной параметр 3 - логин
  • Входной параметр 4 - пароль (непустой только в случае создания или изменения, в ходе которого изменен в том числе пароль)
  • Входной параметр 5 - имя

Код инициатора запуска служебного сценария - 33.


Служебный сценарий внешней авторизации пользователя

Выполняется в момент авторизации пользователя в систему. Работает только для авторизации в толстом (windows) клиентском приложении. Сценарий предназначен для анализа введенных значений логина и пароля, которые могут не совпадать с существующими учетными записями. Для проверки значений сценарий использует внешнюю систему (CRM, внешнюю БД) через веб-запрос или путем обращения к БД. Если данные верны, следует присвоить логин существующего пользователя Oktell, под которым будет произведен вход в систему, в служебную переменную "Возвращаемое значение 1" .

На вход через стандартные функции служебных сценариев принимает идентификатор пользователя. В качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - введенный логин
  • Входной параметр 2 - введенный пароль
  • Входной параметр 3 - имя хоста клиентской станции

Код инициатора запуска служебного сценария - 36.


Служебный сценарий обработки ошибки авторизации

Сценарий используется только для неверных авторизаций через WebSocket или Http. Для неверных авторизаций с толстого клиента работать не будет. Запускается если с определенной станции число неверных запросов на авторизацию превысило 20 раз в 10 минут. Сценарий предназначен для предупреждения администратора о возможной DDOS-атаке или переборе пароля. Если число запросов превышает 20 раз за 20 секунд, IP-адрес попадает в бан.

В качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - IP-адрес отправки запросов.
  • Входной параметр 2 - введенный логин
  • Входной параметр 3 - введенный пароль в md5
  • Входной параметр 4 - сессия, если клиент авторизуется под активной сессией
  • Входной параметр 5 - код причины неверной авторизации. Код возвращается в виде 1xx - для WebSocket подключения и 2xx - для http-запросов. Возможны следующие коды (последние два знака):
  • 01 - Учетная запись не найдена
  • 02 - Неверная сессия
  • 03 - Сессия не найдена
  • 04 - Сценарий внешней авторизации запретил вход
  • 05 - Сценарий внешней авторизации вернул неверный логин
  • 06 - Сценарий внешней авторизации превысил время таймаута 10 секунд
  • 07 - Неверный пароль
  • 08 - Доступ запрещен для роли

Инициатор запуска — 38


Служебный сценарий поиска записи разговора

Сначала файл записи ищется по стандартному пути. Если не найден - запускается сценарий "Служебный сценарий поиска записи разговора".

На вход в качестве неявных стартовых параметров передаются:

  • Входной параметр 1 - id коммутации или конференции.
  • Входной параметр 2 - тип звонка (0 - коммутация, 1-конференция)
  • Входной параметр 3 - тип операции с файлом (1 - скачать, 0 - удалить)

В служебную переменную "Возвращаемое значение 1" должен быть сохранен путь к скачанному файлу на сервере или строка "double".

При запросе из толстого клиента - ожидание сценария 200 мс синхронно и потом ответ "файл занят, попробуйте позже". При запросе из веб приложения - ожидание синхронно не более минуты.

Борьба с дубликатами запросов, поступившими пока файл еще качается в другой сессии сценария - на самом сценарии. Если сценарий отказывает на очередной запрос в запуске по причине дубликата (еще не завершившегося сценария) - нужно вернуть строку "double", тогда пользователь увидит "файл занят, попробуйте позже" вместо "файл не найден". Рекомендуется скачивать во временное хранилище, а затем переносить по исходному месторасположению.