Общие компоненты сценариев — различия между версиями
Elena (обсуждение | вклад) |
Elena (обсуждение | вклад) |
||
Строка 1189: | Строка 1189: | ||
При установке значения «Нет» выполнение текущего сценария прекращается и запускается вложенный сценарий (с сохранением значений всех переменных). Такой способ наиболее часто применим на практике. | При установке значения «Нет» выполнение текущего сценария прекращается и запускается вложенный сценарий (с сохранением значений всех переменных). Такой способ наиболее часто применим на практике. | ||
− | При установке значения «Да» вложенный сценарий вызывается как функция и после его завершения происходит возврат в точку вызова. Все переменные исходного сценария доступны во вложенном и наоборот, таким образом после возврата они будут иметь соответствующие измененные значения. На процедуру возврата также влияет флаг «Возврат управления» компонента [[ | + | При установке значения «Да» вложенный сценарий вызывается как функция и после его завершения происходит возврат в точку вызова. Все переменные исходного сценария доступны во вложенном и наоборот, таким образом после возврата они будут иметь соответствующие измененные значения. На процедуру возврата также влияет флаг «Возврат управления» компонента [[#Стоп|Стоп]], - используется во вложенном сценарии после успешного переключения с необходимостью безусловно прервать обработчик сценариев. |
Версия 17:33, 17 мая 2011
В данном блоке в справочном порядке будут приведены все компоненты, являющиеся общими для всех типов сценариев, а также краткое описание действий и перечни свойств.
Содержание
- 1 Старт
- 2 Стоп
- 3 Пауза
- 4 Присвоение значения
- 5 Сравнение
- 6 Меню
- 7 Файловая операция
- 8 Голосовая почта
- 9 Уведомление
- 10 Задание на звонок
- 11 Запрос SQL в БД
- 12 Запрос к WEB-сервису, XML-запрос
- 13 Парсер текста
- 14 Заказ на встречный звонок
- 15 Статус объекта
- 16 Определить группу клиента
- 17 Счетчик
- 18 Запуск процесса
- 19 Запуск сценария
- 20 Регистрация
- 21 Плагин-компонент
- 22 Отправка SMS-сообщения
- 23 Получение статуса отправленного SMS-сообщения
- 24 Получение входящего SMS-сообщения
- 25 Баланс счета на SMS-сервере
- 26 Отправка сообщения электронной почты
- 27 Прием входящего сообщения электронной почты
- 28 Отправка IM (ICQ/jabber) сообщения
- 29 Получение IM (ICQ/jabber) сообщения
Старт
Компонент существует в любом сценарии – с него начинается действие, если трубка обрабатываемой линии положена. Старт на вход принимает параметр, который может сохранить в некоторой внутренней переменной сценария для дальнейшего использования.
Свойства:
Параметр запуска | Переменная, в которую необходимо сохранить значение, переданное из другого сценария, запустившего этот. |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Стоп
Осуществляет завершение сценария без разрыва связи. Служит для остановки выполнения сценария после появления соответствующих условий. Классические примеры успешное переключение в сценарии IVR или корректное завершение работы в сценарии диалога.
Свойства:
Возврат управления | Да/нет. По умолчанию «Да». Флаг определяет необходимо ли в текущей точке передать управление стеку (да) или прекратить выполнение всей последовательности сценариев (нет). Актуален только в сценариях, вызванных через компонент Запуск сценария с установленным флагом «Возврат управления» и в проектных сценариях IVR, вызванных через компонент Вход в проект. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Пауза
Осуществляет задержку сценария перед выполнением следующего компонента. В случае указания длительности 0 – компонент пропускается. В некоторых случаях при работе с большими сценариями удобно использовать компонент «Пауза» в качестве пустышки, для удобства и быстроты смены свойств. Например, по веткам выхода из компонента «Меню», где каждое свойство перехода задается внутри специального окна путем выбора одного объекта из списка всех объектов сценария.
Свойства:
Время задержки | Время в миллисекундах, которое необходимо простоять на компоненте в паузе. |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Присвоение значения
Задает значение указанной переменной. В качестве присваемого значения выступает аргумент. Используется механизм преобразования типов, если типы значения аргумента и переменной не совпадают.
Свойства:
Режим | Одиночный / Множественный
Множественный режим позволяет в одном компоненте производить сразу несколько операций присвоения. |
Переменная | Локальная переменная, в которую нужно записать указанное значение.
Доступно только в режиме одиночной операции. |
Значение | Аргумент (значение, переменная, функция, выражение), значение которого необходимо задать для указанной переменной.
Доступно только в режиме одиночной операции. |
Операции | Список операций (пар элементов {Переменная, Аргумент}), которые будут выполнены в порядке перечисления в окне задания значений нескольких операций присвоения.
Если в одной из операций в аргументе используется переменная, указанная в качестве приемщика значения в более ранней операции по списку, то при расчете значения аргумента будет использовано новое ее значение. Таким образом компонент с множественным присвоением является компактным аналогом последовательности одиночных присвоений. |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Сравнение
Сравнивает значения двух аргументов. Компонент осуществляет ветвление сценария. В случае соответствия выбранной логической операции и значений аргументов переход осуществляется по ветке «Правда», в противном случае – по ветке «Ложь».
Свойства:
Аргумент 1 | Аргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить. |
Аргумент 2 | Аргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить. |
Тип сравнения | Один из вариантов логической операции
|
Переход, правда | Компонент, на который передается управление, если выбранная логическая операция вернула истину. |
Переход, ложь | Компонент, на который передается управление, если выбранная логическая операция вернула ложь. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Меню
Сравнивает аргумент со списком значений. Компонент может иметь неограниченное число веток перехода. Переход осуществляется по ветке значения, с которым совпало значение аргумента. Если совпадений не найдено, переход осуществляется по ветке «Прочее».
Свойства:
Аргумент | Аргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить. |
Значения (варианты) | Окно ввода значений, позволяющее задать возможные значения и связывающее с каждым указанным значением элемент перехода. Соответственно переход осуществляется по ветке первого найденного совпадающего значения. |
Переход, прочее | Компонент, на который передается управление, если среди значений не найдено того, которое соответствует значению аргумента. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Файловая операция
Производит указанную дисковую операцию с файлом, каталогом или путем.
Свойства:
Путь | Аргумент, определяющий место размещения объекта, подвергаемого файловой операции - абсолютный путь к каталогу или файлу. |
Тип объекта | Каталог / Файл / Путь
Определяет перечень операций, возможных для проведения с объектом, указанным с помощью пути. |
Операция | В зависимости от выбранного типа объекта предоставляет перечень возможных операций.
Каталог:
Файл:
Путь:
|
Новый путь
Новое имя Путь копии |
Путь или имя, которое будет присвоено вновь созданному файлу (или каталогу).
В случае, если при переименовании указывается имя без пути, за основу будет взят путь к исходному объекту. |
Данные | Аргумент, представляющий собой строку. Строка в соответствии с выбранной кодировкой будет переведена в бинарный формат и размещена в содержимом файла при проведении операций создания и записи в файл. |
Кодировка | Определяет кодировку, посредством которой происходит преобразовании строки в бинарные данные и обратно при проведении операций записи в файл и чтения из файла.
|
Данные в переменную | Строковая переменная, куда будет сохранено содержимое файла при проведении операции чтения. Данные из файла считываются в бинарном виде и преобразуются в строку согласно выбранной кодировке.
Внимание! Если целью считывания данных из файла является их дальнейшая передача вовне без изменений (например используя веб-запрос или сохранение файла, осуществляющие преобразование строки в бинарные данные), необходимо в обоих компонентах использовать кодировки ANSI, так как только она гарантирует однозначное двустороннее преобразование без потери данных. |
Маска | Аргумент, представляющий собой маску для файлов/каталогов в формате операционной системы, например *.inf или data_??.txt. Используется при определении содержимого каталога.
Внимание! Если целью определения содержимого является обнаружение конкретного подкаталога/файла, либо обработка всего содержимого, соответствующего маске, то при взятии пути к конкретному файлу используется индекс. В этом случае необходимо также указывать ту же самую маску. |
Индекс | Аргумент, определяющий индекс файла/подкаталога при взятии его пути. Индекс - порядковый номер объекта в общем списке файлов/подкаталогов исследуемого каталога, отфильтрованного в соответствии с указанной маской. |
Добавочный путь | Аргумент, определяющий часть пути, подвергаемый склейке с основным. Например, если основной указанный путь 'C:\1', а добавочный '2.txt', то при проведении склейки результатом будет 'C:\1\2.txt'. |
Результат в переменную | Переменная, куда будет сохранен результат выполнения операции. Может быть строковой, либо числовой для проведения отдельных операций. |
Переход | Компонент, на который передается управление после успешного завершения ввода. |
Переход, не найдено | Компонент, на который передается управление в случае, если указанный каталог или файл не найден. |
Переход, ошибка | Компонент, на который передается управление в случае, если в назначенных параметрах допущена ошибка или при проведении указанной операции возникла ошибка. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Голосовая почта
Осуществляет перемещение данных об указанном звуковом файле (чаще после записи в этом же сценарии) в голосовой ящик указанных пользователей. Подробнее о сервисе голосовой почты в разделе Офис. Кабинет. Голосовая почта.
Заполняя свойство «Голосовой ящик» в окне адресата, можно явно указать существующих в системе пользователей, а также существующие отделы и внутренние номера. Также можно использовать свойство «Ключ получателя», значением которого является вычисляемый аргумент. Это удобно, когда заранее неизвестно получателя, и данные о нем формируются в момент исполнения сценария. При этом сообщение попадет ко всем пользователям, которые указаны явно, составляют указанные внутренние номера и группы. У пользователей, которым поступает голосовая почта, в их модулях появляются данные об абоненте, и возможность прослушать файл.
Сообщение отправится всем выбранным по одному из двух параметров – указателей адресатов. При этом один компонент формирует группу из всех перечисленных участников - прослушивание одним из них будет отражено на всей записи. При необходимости разослать сообщение независимо нескольким пользователям следует использовать серию из компонентов «Голосовая почта»
Свойства:
Имя файла | Аргумент, значение которого определяет абсолютный путь к файлу, который необходимо поместить в голосовой ящик. При использовании после объекта Запись файла, в котором имя файла генерируется, необходимо в соответствующем свойстве выбирать возврат полного пути в переменную, сохраняющую имя записанного файла. |
Ключ получателя | Аргумент, определяющий пользователя-получателя почты. В качестве ключа может выступать идентификатор пользователя, его имя или логин. Также ключом может являться внутренний стандартный номер, явно определяющий пользователя через правило звонка («Администрирование. Внутренние номера. Стандартные»). В случае, если номер групповой, то получателями будут являться одновременно все его участники (пользователи указанные в номере явно, или посредством внутренних линий).
В качестве значения аргумента может быть указан список ключей, разделенных запятыми. |
Голосовой ящик | Окно ввода адресата: списка получателей, среди которых могут быть пользователи системы, отделы и конкретные внутренние номера. Каждый пользователь, участвующей явно через отдел, или через номер получит соответствующее голосовое сообщение.
При одновременном указании голосового ящика и ключа производится объединение всех установленных получателей на момент исполнения компонента. |
Режим подстановки CallerId | Определяет режим подстановки CallerId.
|
CallerId | Доступно только в режиме подстановки CallerId из аргумента.
Аргумент, значение которого подставляется при размещении голосового сообщения в поле таблицы CallerId и устанавливает номер абонента, оставившего сообщение. |
Переход | Компонент, на который передается управление после успешного завершения ввода. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Уведомление
Уведомление – всплывающее окно, позволяющее донести до пользователя информацию о происходящем в сценарии действии. В качестве адресатов могут быть выбран список из пользователей, отделов и конкретных номеров. Также в качестве адреса может выступать номер, определяемый значением аргумента.
Уведомление получат все пользователи, которые указаны персонально, либо состоят в выбранных группах или внутренних номерах. В режиме Офис. Кабинет. Уведомления пользователь всегда сможет просмотреть пришедшие к нему уведомления и осуществить поиск.
Свойства:
Отладочный режим | Да / нет. По умолчанию «нет». При сохранении сценария может быть установлен общий режим отладки (на странице свойств сценария). Отладочные уведомления будут отображаться только в режиме отладки сценария. Остальные будут отображаться в любом случае. |
Ключ получателя | Аргумент, определяющий пользователя-получателя сообщения. В качестве ключа может выступать идентификатор пользователя, его имя или логин. Также ключом может являться внутренний стандартный номер, явно определяющий пользователя через правило звонка («Администрирование. Внутренние номера. Стандартные»). В случае, если номер групповой, то получателями будут являться одновременно все его участники (пользователи указанные в номере явно, или посредством внутренних линий).
В качестве значения аргумента может быть указан список ключей, разделенных запятыми. |
Адресат | Окно ввода адресата: списка получателей, среди которых могут быть пользователи системы, отделы и конкретные внутренние номера. Каждый пользователь, участвующий явно, через отдел, или через номер получит соответствующее уведомление.
При одновременном указании адресата и ключа производится объединение всех установленных получателей на момент исполнения компонента. |
Сохранять в БД | Да/нет. По умолчанию «да». При установке свойства сообщение будет сохранено в БД и будет доступно в модуле Офис. Кабинет. Уведомления. Если пользователь отсутствует, то сообщение будет доставлено сразу после его авторизации в системе. |
Текст | Аргумент, определяющий текст уведомления.
Поддерживается минимальный набор тегов HTML для форматирования. Чтобы отобразить текст в виде HTML-документа необходимо его заключить в теги <html>..</html> Ниже за пределами таблицы свойств приведен перечень поддерживаемых HTML-тегов. |
Способ оповещения | Позволяет выбрать режим, в котором данные поступают указанным адресатам.
|
Цвет фона | Определяет цвет фона всплывающего окошка. |
Скрывать автоматически | Да/нет. По умолчанию «да». При отключении уведомление будет скрыто только после щелчка пользователя на нем. Поступающие уведомления помещаются в очередь, из которой отображаются в видимых областях экрана в порядке поступления. Очередь сообщений может быть очищена из системного меню в трее.
При отправке уведомления отключенному пользователю с сохранением в БД, отображаемые после авторизации последние несколько пропущенных уведомлений будут в любом случае автоматически скрываться. |
Асинхронный режим | Да/нет. Способ рассылки уведомлений. При выборе асинхронного режима компонент не ожидает доставки уведомлений пользователям и сразу передает управление следующему объекту сценария. Имеет смысл при рассылке уведомления множеству пользователей из сценариев IVR обработки входящих вызовов во избежание незапланированных пауз. Однако при завершении сценария асинхронные рассылки всех уведомлений, не успевшие завершиться, будут прерваны. |
Разрешать несколько экземпляров на экране | Да/нет. В некоторых случаях требуется выводить уведомления об одном и том же. Чтобы однотипные отображения не заполняли экран, можно устанавливать режим фильтрации по коду сообщения. Код указывается в открывающемся при этом свойстве. |
Код сообщения | Доступно только при запрете нескольких экземпляров на экране. Аргумент, определяющий код, на основании которого будет производиться фильтрация и пропуск отображения. |
Переход | Компонент, на который передается управление после успешного завершения ввода. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Поддерживаемые HTML-теги:
- <html>..</html> - определяет, что блок текста должен быть отображен как HTML-документ
- <span>..</span> - текстовый блок, атрибуты: style - стиль
- <a>..</a> - гиперссылка, атрибуты: href - ссылка, title - заголовок, style - стиль
- <b>..</b> - полужирный, атрибуты: style - стиль
- <u>..</u> - подчеркнутый, атрибуты: style - стиль
- <i>..</i> - курсив, атрибуты: style - стиль
- <s>..</s> - перечеркнутый, атрибуты: style - стиль
- <br> - переход на следующую строчку, атрибуты: style - стиль
- <center>..</center> - выравнение по центру, атрибуты: style - стиль
- <p>..</p> - параграф, атрибуты: style - стиль >
Атрибутами стиля могут быть
1. font-weight - толщина символов
Значения:
- bold - полужирный
- normal - обычный
(Не поддерживается: bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900)
2. text-decoration - декорация текста
Значения:
- line-through - перечеркнутый
- underline - подчеркнутый
- none - отсутствует
(Не поддерживается: blink | overline )
3. font-style - стиль шрифта
Значения:
- normal - обычный
- italic - курсив
(Не поддерживается: oblique)
4. text-align - выравнение текста (только для<p>)
Значения:
- left - по левому краю
- right - по правому краю
- center - по центру
- justify - по ширине
5. color - цвет текста
Значения:
- red - красный
- green - зеленый
- blue - синий
- black - черный
- white - белый
- yellow - желтый
- gray - серый
- #XXXXXX - шестнадцатеричный код цвета где (X - шестнадцатеричное число 0..F )
Другие атрибуты игнорируются
Примеры:
- <html>Данное устройство <b style='color:red;'>не обнаружено</b></html>
- <html>У Вас новая <a style='font-style:bold;color:#127A81;' href='http://mail.ru' title='Нажмите, чтобы открыть'>почта</a></html>
Задание на звонок
Компонент инициирует задачу однократного выполнения в указанное время на указанный номер. Задача запускает указанный в соответствующем свойстве компонента сценарий IVR. Для формируемой задачи в компоненте указываются инициирующие значения, а также параметр задачи, который будет доступен через функцию «Параметр задачи» в сценарии IVR.
ВНИМАНИЕ! Для инициации звонка существует альтернатива данному компоненту. Служебный сценарий имеет компонент «Дозвон», рекомендуемый к использованию в большинстве случаев, так как имеет расширенные настройки и не производит дополнительной нагрузки на менеджер задач.
Свойства:
Номер | Аргумент, определяющий номер, по которому производить дозвон. |
Выполнить сразу | Да/Нет. Сразу выполнять задачу или дожидаться указанного времени. |
Дата/время | Дата и время, когда производить выполнение задачи.
Поле доступно только при выборе значения «Нет» в свойстве «Выполнить сразу». |
Сценарий | Текстовое поле с возможностью выбора из списка имеющихся сценариев. Определяет имя сценария, который необходимо запустить после дозвона. |
Параметр запуска | Числовой аргумент, передающий свое значение в задачу, а через нее на старт запускаемого сценария и в функцию «Параметр задачи». Может быть использован для идентификации через сопоставление по таблице в БД, или для передачи множества параметров. Доступен в сценарии автоматической задачи через встроенную функцию «Параметр задачи». |
Количество сигналов «Занято» | Сколько дозвонов с ответом «Занято» считать успешным выполнением задачи. |
Количество сигналов «Не отвечает» | Сколько дозвонов с ответом «Не отвечает» считать успешным выполнением задачи. |
Время фиксации в секундах | Сколько секунд необходимо выполнять сценарий после дозвона, чтобы считать успешным выполнение задачи. |
Время ожидания ответа | Сколько секунд ожидать ответа от линии для получения сигнала «Не отвечает». |
Пауза после сигнала «Занято» | Сколько секунд делать перерыв в выполнении задачи, если от линии получен сигнал «Занято». |
Пауза после сигнала «Не отвечает» | Сколько секунд делать перерыв в выполнении задачи, если от линии получен сигнал «Не отвечает». |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Запрос SQL в БД
Позволяет производить действия в БД, а также передавать параметры (на вход и на выход). В качестве параметров выступают переменные сценария. Обращение к БД происходит по одной из выбранных технологий: ADO, OLE, ODBC. Для запросов во внешние БД необходимо заполнить строку подключения с помощью помощника – построителя. В случае ошибки переход осуществляется по ветке «Ошибка», и в переменную «Код ошибки» возвращается соответствующий код исключения БД.
Свойства:
SQL запрос | Окно ввода запроса в формате SQL. В нем вы можете проверить запрос, а также исполнить в базе в момент создания. Параметры запроса в виде переменных SQL обозначаются маркером «@» в начале имени («:» в начале имени для OLE, Oracle, или «?» для входных параметров ODBC). Встроенный парсер разберет параметры и предложит сопоставить им переменные сценария. Входные параметры запроса получат значение из соответствующих переменных сценария перед выполнением запроса, выходные параметры занесут свои значения в переменные сценария после выполнения запроса. Также, если в возвращаемой выборке название какого-либо поля совпадает с названием внутренней переменной сценария, в нее будет занесено соответствующее значение из выборки.
На вкладке «Подключение» вы можете выбрать один из вариантов подключения к БД. Это используется в большей части для получения индивидуальных нестандартных настроек, а также при подключении к внешним БД. В случае использования общего формата ADO, OLE или ODBC (а также подключения по отдельно выделенным каналам к БД Oracle) необходимо заполнить строку подключения. В строке и определяются индивидуальные настройки. Например, таймаут ожидания ответа, или драйвер для подключения к различным СУБД при использовании технологии ODBC. В окне помощника формирования строки подключения вы можете увидеть все доступные для использования параметры и их описания. В случае необходимости плотного взаимодействия с внешней СУБД, обилия хранимых процедур, запросов и их параметров рекомендуется настроить прилинкованный сервер СУБД в MS SQL Server и работать с внешней СУБД по правилам, определяемым TSQL. Подробнее о процедуре подключения линкованных серверов можно узнать в разделе Подключение внешних БД Формат самих запросов SQL вне рамок данного описания. |
Таймаут | Устанавливает временное ограничение выполнения запроса на сервере БД. По умолчанию 30 секунд.
В случае, если используется уникальная строка подключения, таймаут может быть установлен в ней (Command Time Out). Если значением является 0, таймаут особым образом не устанавливается и применятся таймаут по умолчанию для созданного подключения (берется из строки подключения или из параметров соответствующего драйвера). Не применяется при подключении к Oracle. |
Код ошибки | Переменная, в которую сохранится код возврата. |
Переход | Компонент, на который передается управление после успешной транзакции. |
Переход, ошибка | Компонент, на который передается управление при появлении исключительной ситуации. В переменную свойства «Код ошибки» попадает код полученного исключения из сервера БД. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Запрос к WEB-сервису, XML-запрос
Позволяет выполнять запросы к web-сервисам в форматах get и post. На вход может передавать указанным образом заполненную структуру XML документа. Прием данных и их обработку осуществляет также согласно прикрепленной к компоненту структуре XML документа. В случае ошибки переход осуществляется по ветке «Ошибка», и в переменную «Код ошибки» возвращается соответствующий код исключения. Для детального разбора ответа может быть использован совместно с компонентом «Парсер»: сохранив ответ в строковой переменной, его дальнейший анализ производится совокупностью других компонентов сценария.
Компонент поддерживает работу в сессиях, сохраняя и используя COOKIE, а также HTTPS и подтверждение сертификатов.
Свойства:
Подключение | Форма, определяющая адрес сервера, а также способ подключения к нему и параметры авторизации. При необходимости устанавливаются адрес и пароль подключения к Proxy-серверу. |
Максимальное число перенаправлений | Устанавливает ограничение на количество перенаправлений при отправке запроса. По умолчанию свойство не задано, что эквивалентно ограничению в 20 перенаправлений - недостижимое в нормальных условиях значение. 0 - полностью игнорирует перенаправления.
При каждом перенаправлении cookie-файлы накапливаются и передаются дальше. |
Тип контента | Строка contenttype, подставляемая в отсылаемый запрос.
Допускается указание других строк. |
Метод | POST / GET |
Тип запроса | XML / Аргумент.
Доступно только для метода POST. Вариант определения тела POST запроса - формирование в специальной форме с подстановкой переменных, либо на базе указанного аргумента. |
Запрос | Доступно только для метода POST.
В зависимости от выбранного значения свойства «Тип запроса» это либо форма, определяющая структуру запроса и подстановку в качестве параметров аргументов (переменных) сценария, либо форма выбора строкового аргумента. |
Кодировка запроса | Определяет в какой кодировке передается тело POST-запроса. В списке возможных вариантов:
|
Кодовая страница Windows для запроса | Доступно только при выборе кодировки запроса «Указанная кодовая страница Windows».
Числовой аргумент, определяющий кодовую страницу Windows для формирования запроса. |
Режим работы | Определяет режим работы компонента. Один из четырех вариантов:
|
Таймаут, секунды | Определяет таймаут, после которого компонент завершит свою работу в соответствии с выбранным режимом работы. Доступно только для режимов обрыва и выхода по таймауту. |
Тип ответа | XML / TEXT. Определяет, в каком режиме производить сохранение полученного ответа - парсить XML или сохранять в строковую переменную для дальнейшего анализа. Недоступно для асинхронного режима. |
Ответ(XML) | Форма, определяющая структуру стандартного ответа сервера и характер распределения выходных значений по переменным сценария. Поддерживает только строгое соответствие дерева XML. Недоступно для асинхронного режима. |
Ответ(строка) | Переменная, в которую сохранится текст ответа. Недоступно для асинхронного режима. |
Кодировка ответа | Определяет в какой кодировке форматировать тело ответа. В списке возможных вариантов:
|
Кодовая страница Windows для ответа | Доступно только при выборе кодировки ответа «Указанная кодовая страница Windows».
Числовой аргумент, определяющий кодовую страницу Windows для разбора ответа. |
Код ошибки | Переменная, в которую сохранится код возврата сценария. |
Переход | Компонент, на который передается управление после успешной транзакции. |
Переход, таймаут | Компонент, на который передается управление в случае, если выход осуществляется по таймауту. |
Переход, ошибка | Компонент, на который передается управление, если web-сервис не доступен или вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора. |
Парсер текста
Осуществляет разбор любых текстовых структур. Может использоваться метод регулярных выражений или встроенный анализатор гипертекста OQuery. Согласно строке поиска формирует ответ, либо вырезает запрошенный раздел или их совокупность, либо определяет количество элементов в указанном разделе структуры. Сложные структуры могут быть разобраны последовательностью элементов «Парсер». Каждый из которых выделяет из документа некоторую структуру и возвращает ее на вход следующего элемента.
В общем случае производится разбор HTML, XML структур различного формата. На уровне сценария могут быть организованы циклы и условия. Чаще применяется для разбора ответов веб-сервисов компонентом «Web-запрос».
Документ | Аргумент, содержащий текстовую структуру, подлежащую разбору. |
Алгоритм | Метод разбора:
|
Поисковый запрос | Строка запроса для соответствующего алгоритма. Язык регулярных выражений совпадает со стандартом .NET. Синтаксис языка OQuery описан ниже. |
Функция | Тип запроса (возвращаемого значения)
В зависимости от выбранного алгоритма допускает выбор одного из возможных вариантов. Для регулярных выражений доступны:
|
Номер элемента | Аргумент, определяющий порядковый номер структуры на случай, если поисковый запрос нашел несколько результатов. Нумерация в этом случае начинается с 1. Если указывается 0, то результаты склеиваются в одно значение. |
Атрибут | Аргумент, определяющий параметры интересующего атрибута. Доступен только для алгоритма OQuery и функций, связанных с атрибутами.
Функция "Значение атрибута" ждет в качестве значения аргумента имя или порядковый номер атрибута. Функция "Имя атрибута" ждет в качестве значения аргумента порядковый номер атрибута. |
Результат в переменную | Переменная, в которую будет сохранен результат применения поискового запроса к документу (число или часть текста вырезанного или сформированного). |
Переход | Компонент, на который передается управление в случае корректного выполнения поискового запроса. |
Переход, неудача | Компонент, на который передается управление в случае неудачи при разборе. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Синтаксис OQuery:
Запрос - это набор команд.
Запрос пишется в одну строчку и выполняется в порядке перечисления (слева направо)
Уровни:
* | Все элементы |
> | Все дочерние элементы |
^ | Корневые элементы (содержатся на нулевом уровне искомой структуры) |
пробел | Все элементы кроме корневых |
Простые команды:
название тега документа | Теги, английские буквы и цифры (начинаются на букву).
Пример: ^TITLE - найдет тег TITLE в корне |
#значение | Возвращает теги, у которых атрибут id равен указанному значению.
Пример: FORM#32 - найдет все теги FORM, у которых атрибут id равен 32 ( <FORM class=a id=32> ) |
[название=значение] | Возвращает теги, в теле которых присутствует атрибут с соответствующим названием и значением.
Пример: TABLE[width=90%] |
.значение | Возвращает теги, у которых атрибут class равен указанному значению.
Пример: INPUT.b.c - найдет теги, у которых атрибут class содержит b и c ( <INPUT class="a b c" /> ) |
Примечание: Результат не зависит от порядка перечисления команд. Например TABLE#big.sample = TABLE.sample#big - найдет теги, у которых атрибут id = big и атрибут class содержит sample.
Операции сравнения:
= | Знак полного совпадения значения аттрибута. Пример: TABLE[width=90%] |
^= | Начинается со значения. Пример:IMG[src^="http://bulmas.ru/images"] |
$= | Заканчивается значением. Пример: IMG[src$=".gif"] |
*= | Значение содержится где-то в центре. Пример: IMG[src*="erotic"] |
Суффиксы:
:first | Возвращает первый элемент коллекции. Пример: TD:first |
:last | Возвращает последний элемент коллекции. Пример: UL:last |
:parent | Возвращает родительские теги элементов коллекции. Пример: TABLE>TD>A:parent:parent |
Простые функции - команды с параметрами:
:gt(позиция) | Возвращает элементы начиная с текущей позиции. Пример: TD:gt(10) |
:lt(позиция) | Возвращает элементы до текущей позиции включительно. Пример: TD:lt(15) |
:eq(позиция) | Возвращает элемент соответсвующей позиции, если число отрицательное, то с конца. Пример: TD:eq(-3) третий тег с конца. |
:eq(начало,конец) | Возвращает набор элементов от начальной до конечной позиции, если числа отрицательные, то с конца.
Пример: TD:eq (10,24) - Аналог TD:eq(10):lt(15) Пример: TD:eq(-1,-3) - возвращает последние 3 элемента eq, equal, range - синонимы |
Сложные функции - команды, которым в качестве параметра можно передавать набор команд:
:has(OQuery-запрос) | Возвращает теги, содержащие другие теги, которые удовлетворяют указанному OQuery-запросу.
Пример: TABLE:has(^TD>A) - аналог TABLE>TD>A:parent:parent |
:not(OQuery-запрос) | Возвращает теги не удовлетворяющие указанному OQuery-запросу.
Пример: A:not([href=http://bulmas.ru]) - найдет все теги A, которые не ссылаются на http://bulmas.ru. Или: A:eq(1,10):not(:eq(2)) - Все теги A по порядку от 1 до 10, кроме второго. |
Пример: Результат следующих запросов разный
A:has(:not(IMG)) - все теги A, которые содержат не IMG
A:not(:has(IMG)) - все теги A, которые не содержат IMG
Операции и знаки:
запрос1 , запрос2 | Запятая (логическое "или"), для перечисления запросов.
Примеры: *A>IMG,>TABLE - вернет все IMG, содержащиеся в A, и TABLE содержащиеся в корне. INPUT([value="Петр"],[value="Виктор"]) - все INPUT со значениями "Петр" или "Виктор". |
запрос1 + запрос2 | Плюс, найдет теги удовлетворяющие запросу1, за которым идут теги удовлетворяющие запросу2. |
запрос1 - запрос2 | Минус, найдет теги удовлетворяющие запросу1 перед которым идут теги, удовлетворяющие запросу2. |
Примечание: Операции могут объединять и более двух запросов например A + IMG + #num - вернет все теги A, за которыми идут теги IMG, за которым в свою очередь идут теги с id="num".
Скобки:
() | Скобки, для объединения команд одинакового приоритета.
Пример: (FONT,A)(:has(IMG),:has(SPAN)) - теги FONT и A содержащие IMG или SPAN, Аналог (FONT:has(IMG), FONT:has(SPAN), A:has(IMG), A:has(SPAN)) |
Наборы команд:
^FONT | все теги FONT корневого (нулевого) уровня. |
>FONT | все теги FONT первого уровня. |
*FONT | все теги FONT. |
*>FONT | все теги FONT кроме корня. |
*>>FONT или >*>FONT | все теги FONT начиная со второго уровня. |
A>>B | все теги B находящиеся на втором уровне у A. |
Рекомендации:
Время выполнения запроса в основном зависит от размера исходного текста и количетсва тегов в нем, и значительно меньше от длины самого запроса.
Если данные нужно получать в цикле, постарайтесь, сначала сократить размер исходного текста.
Например, если хотим вернуть прогноз погоды в Казани с содержимого сайта "http://weather.yandex.ru/?city=27595" (Около 50кб) за последние
10 дней, можно воспользоваться запросами
tr.data.day>td>b:eq(1)
tr.data.day>td>b:eq(2)
tr.data.day>td>b:eq(3)
и т. д.
Каждый запрос выполняется примерно ~50мс.
Итого: ~500мс
Но можно поступить следующим образом: Организуется цепочка из нескольких компонентов «Парсер», первый из которых забирает все нужные теги <B> запросом tr.data.day>td>b (~50мс) в переменную сценария. Далее в цикле сценария следующими компонентами забираются соответствующие значения
:eq(1)
:eq(2)
:eq(3)
и т. д.
Каждый запрос выполняется примерно ~0.2мс. Итого время выполнения ~50мс. Получается тот же результат, но в 10 раз быстрее.
Заказ на встречный звонок
Сохраняет информацию о заказанном звонке в БД, и отображает в клиентском приложении Oktell у пользователей-адресатов, определяющихся указанным внутренним номером. Подробнее о сервисе заказов встречных звонков в разделе Офис. Кабинет. Встречные звонки.
Свойства:
Ключ получателя | Аргумент, определяющий пользователя-получателя сообщения. В качестве ключа может выступать идентификатор пользователя, его имя или логин. Также ключом может являться внутренний стандартный номер, явно определяющий пользователя через правило звонка («Администрирование. Внутренние номера. Стандартные»). В случае, если номер групповой, то получателями будут являться одновременно все его участники (пользователи указанные в номере явно, или посредством внутренних линий).
В качестве значения аргумента может быть указан список ключей, разделенных запятыми. |
Заказ на номер | Аргумент, определяющий номер, на который заказан встречный звонок. Может быть введен пользователем с клавиатуры, определен как «CallerId», или подставлен из базы по коду. |
Заказ на время | Ориентировочное время, на которое заказан встречный звонок (сохранится в базе и будет отображено в описании заказа). Не заполнять, если время не указывается. |
Комментарий | Комментарий к компоненту (сохранится в базе и будет отображен в описании заказа). |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Статус объекта
Позволяет получить доступ к состояниям различных объектов (на чтение и запись). Например до начала переключения определить статус объекта (пользователя, задачи, номера), чтобы без попытки переключения и, соответственно, без включения сигнала ожидания, озвучить соответствующий текст меню.
Свойства:
Действие | Доступные действия:
|
Тип объекта | Один из вариантов: Задача, Пользователь, Номер, Линия, Сервер. Тип объекта, с которым производится работа: статус которого подлежит определению, изменению, или который необходимо создать/удалить.
В зависимости от выбранного действия перечень типов может меняться. |
Задача (ключ), Пользователь (ключ), Номер, Линия (ключ) | Доступны только для действий определить/установить.
В зависимости от выбранного типа поле принимает тот или иной вид:
|
Функция / действие | Доступно только для действий определить/установить.
В зависимости от выбранного действия и типа объекта поле содержит список доступных состояний. Определение состояния.
|
Значение в переменную | Доступно только для действия «Определить».
Переменная, в которую заносится результат вычисления функции. |
Значение | Доступно только для действия «Установить».
Аргумент, значение которого вычисляется для установки состояния. |
Идентификатор в переменную | Доступно только для действия «Создать».
Переменная, в которую заносится идентификатор вновь созданного объекта. |
Переход | Компонент, на который передается управление. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Определить группу клиента
Осуществляет проверку на принадлежность контакта (определившегося номера телефона, почтового адреса и любого другого переданного аргумента) указанной группе клиентов. Позволяет разделить обработку в сценарии звонков VIP клиентов, клиентов из черного списка, личных контактов и пр.
Свойства:
Контакт | Аргумент, содержащий произвольную контактную информацию. |
Группа | Аргумент, содержащий имя группы клиентов. |
Переход, принадлежит | Компонент, на который передается управление, если соответствующий контакту клиент найден, указанная группа существует, и клиент принадлежит группе. |
Переход, не принадлежит | Компонент, на который передается управление, если не найден соответствующий контакту клиент, не существует группа, или клиент не принадлежит группе. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Счетчик
Увеличивает значение выбранного счетчика на 1. Подробнее о счетчиках, их создании и анализе в модуле общего меню |Call-центр. Отчеты. Счетчики.
Свойства:
Счетчик | Список счетчиков, существующих в системе и доступных для увеличения. |
Переход | Компонент, на который передается управление в случае успешной коммутации. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Запуск процесса
Запускает на сервере внешний процесс или открывает приложение с указанным документом. В сценариях IVR используется чаще для запуска системных программ, а также учетных, сервисных, обслуживающих программ организации-клиента Oktell.
ВНИМАНИЕ! При работе сервера Oktell в режиме службы запуск процесса производится от имени того пользователя, который указан в настройках службы. По умолчанию это системная учетная запись «NETWORK SERVICE». Запускаемые таким образом процессы выполняются в фоновом режиме и не отображаются на экране пользователя.
Свойства:
Имя файла | Аргумент, определяющий имя файла, который необходимо запустить . |
Относительный путь | Да/нет. Определяет, какой путь будет подставляться впереди к имени файла. Относительный – от папки запуска серверного приложения Oktell. |
Параметры | Строковый аргумент, определяющий параметры запуска, если необходимо. |
Переход, успех | Компонент, на который передается управление, если приложение успешно стартовало. |
Переход, неудача | Компонент, на который передается управление, если файл не найден, отсутствует доступ, или по другой причине не удалось запустить приложение. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Запуск сценария
В случае организации автоматических сервисов размеры сценария могут быть достаточно велики, и компонент «Запуск сценария» предоставляет возможность разбить крупный сценарий на несколько логических блоков. Таким образом, один сценарий передает управление в начало другого сценария. При этом можно задать некоторое значение на запуск, которое примет компонент «Старт» вложенного сценария и сохранит в свою локальную переменную. Помимо этого, все переменные одного типа, которые названы одинаково в запускающем и запускаемом сценариях, перенесут свои значения из одного в другой без изменений. Такой способ запуска называется вложенным.
ВНИМАНИЕ! Обработка сценария начинается с компонента Старт и ведется последовательно согласно значениям свойств перехода, если трубка положена (в основном это входящие звонки с внешних линий). В случае, когда трубка уже поднята, после компонента Старт производится безусловный переход к компоненту "Поднять трубку", если такой имеется в сценарии. При этом обработчик пропускает все компоненты, которые находятся между ними. Запуск вложенных сценариев следует этим же правилам.
Также с помощью компонента можно запускать в параллельный процесс любой служебный сценарий, не работающий с зависимыми от основного сценария ресурсами (линией, оператором). При запуске асинхронного служебного сценария начальные значения его переменных, совпадающих по типам и именам с переменными основного сценария, будут установлены в соответствии с их значениями.
Свойства:
Тип запуска | Определяет тип и формат запуска дочернего сценария.
|
Сценарий | Текстовое поле с возможностью выбора из списка имеющихся сценариев. Определяет имя сценария, который необходимо запустить. |
Параметр запуска | Аргумент, передающий свое значение на старт запускаемого сценария. |
Возврат управления | Да/нет. По умолчанию «Нет». Определяет способ вызова вложенного сценария.
При установке значения «Нет» выполнение текущего сценария прекращается и запускается вложенный сценарий (с сохранением значений всех переменных). Такой способ наиболее часто применим на практике. При установке значения «Да» вложенный сценарий вызывается как функция и после его завершения происходит возврат в точку вызова. Все переменные исходного сценария доступны во вложенном и наоборот, таким образом после возврата они будут иметь соответствующие измененные значения. На процедуру возврата также влияет флаг «Возврат управления» компонента Стоп, - используется во вложенном сценарии после успешного переключения с необходимостью безусловно прервать обработчик сценариев.
ВНИМАНИЕ! Вызов внутри одной цепочки исполнения может происходить одновременно как с возвратом, так и без возврата. |
Переход | Компонент, на который передается управление после возврата в случае запуска вложенного сценария, а также непосредственно после запуска служебного сценария.
Поле используется (и обязательно для заполнения) только в случае асинхронного запуска служебного сценария, а также в случае вложенного, если флаг «Возврат управления» установлен. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Регистрация
Компонент используется совместно со шлюзом с динамической регистрацией потоков (подробнее в разделе Карта сети. Компоненты. Шлюз). Служит для проведения динамической регистрации под указанным аккаунтом перед осуществлением звонка по каналу потока такого шлюза. Параметры аккаунта - логин и пароль - могут быть взяты из БД, вычислены, указаны явно в сценарии. Для проведения регистрации достаточно указать в свойствах компонента шлюз, и свободный поток автоматически будет зарегистрирован и зарезервирован под совершение вызова именно в этом экземпляре сценария. Потоки и линии шлюзов с динамической регистрацией недоступны для выбора ни в задачах, ни в настройках прав пользователей, ни в списках линий при наборе номера компонентами сценариев. Осуществить дозвон через них можно только путем явного указания кода зарегистрированного потока в соответствующий аргумент компонентов «Дозвон» служебного сценария и «Переключение на внешние» сценария IVR.
ВНИМАНИЕ! В случае успешной коммутации поток будет разрегистрирован автоматически по завершению разговора и переводу одной из линий потока в состояние готовности. Однако, если коммутации не произведено, то разрегистрация производится автоматически по истечению времени неактивности (3 минуты), либо путем использования этого же компонента с действием «Отмена регистрации».
Свойства:
Действие | Выбор режима работы. Регистрация / отмена регистрации.
В случае установки режима регистрации осуществляет прямое действие по регистрации аккаунта на сервере и активации (перевода в состояние готовности) одного из потоков указанного шлюза с динамической регистрацией потоков. В режиме отмены регистрации освобождает аккаунт и переводит указанный поток в отключенное состояние. |
Шлюз | Доступно только для действия «Регистрация». В списке выбирается один из существующих в карте сети шлюзов с динамической регистрацией потоков. |
Аккаунт | Доступно только для действия «Регистрация». Аргумент, представляющий собой логин для регистрации потока. |
Пароль | Доступно только для действия «Регистрация». Аргумент, представляющий собой пароль для регистрации потока. |
Время ожидания | Доступно только для действия «Регистрация». Максимальное время ожидания регистрации, по истечению которого будет прервана регистрация и произведен выход по ветке «Таймаут». |
Автоматическая отмена регистрации | Доступно только для действия «Регистрация». Позволяет установить такой режим работы, при котором при любой последующей попытке дозвона по одной из линий зарегистрированного потока даже в случае неудачи (занято, недоступно и т.д.) будет производиться мгновенная отмена регистрации. |
Код потока в переменную | Доступно только для действия «Регистрация». В случае успешного проведения операции по регистрации в указанную переменную будет размещен Guid-идентификатор зарегистрированного потока. Эта переменная впоследствии может быть использована для осуществления вызова в компонентах Переключение на внешние и/или Дозвон или отмены регистрации. |
Код ошибки в переменную | Доступно только для действия «Регистрация». В переменную попадает код ошибки в случае возникновения проблем при регистрации. Большинство кодов совпадают с типами ответов HTTP-сервера (например, 404 - not found). |
Код потока | Доступно только для действия «Отмена регистрации». Аргумент, представляющий собой Guid-идентификатор потока в строковом представлении. Может быть указан явно, или получен в переменную в одном из предыдущих компонентов «Регистрация». |
Переход | Компонент, на который передается управление после возврата в случае успешного проведения операции. |
Переход, потоков не найдено | Доступно только для действия «Регистрация». Компонент, на который передается управление, если у выбранного шлюза нет свободных потоков. |
Переход, таймаут | Доступно только для действия «Регистрация». Компонент, на который передается управление в случае, если за установленный интервал времени не получен ответ от внешнего сервера/шлюза. |
Переход, ошибка | Компонент, на который передается управление в случае возникновения ошибок. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Плагин-компонент
Компонент позволяет выполнять произвольный сторонний код, подключенный к серверу в виде стандартного плагин-компонента (см. руководство по интеграции, раздел «Встраиваемые plugin-модули»).
Подробно об архитектуре исполнения описано в руководстве по интеграции.
При выполнении компонента осуществляется подгрузка внешней сборки и передача управления компоненту. В случае, если сборка плагина уже загружена, повторной ее загрузки не происходит. Исключением может являться только обновление сборок в модуле Администрирование. Внешние модули. Передача управления производится путем вызова метода PrepareShow управляющего объекта, описанного в plugin-программе. В качестве параметра для метода передается XML-структура, содержащая комплексную информацию о требуемом компоненте (его guid-идентификатор, описанный при вызове метода GetForms() управляющего объекта), параметрах сценария, сессии, задаче, а также других имеющихся свойств (различаются в зависимости от типа исполняемого сценария). Помимо базовых параметров передаются значения требуемых для работы компонента параметров (информация о них возвращается при вызове GetInputParams управляющего объекта plugin-программы). В качестве возвращаемого значения ожидается XML-структура с описанием всех выходных значений согласно общему списку выходных параметров (определяются при вызове GetOutputParams управляющего объекта). В качестве возможных для использования в сценариях компонентов принимаются все формы подпрограммы со свойством 'module=2'.
Назначение входных значений, а также переменных для приема выходных значений производится на отдельной вкладке. Дальнейшая реализация сценария приостанавливается вплоть до получения назад управления из внешнего компонента. Может быть назначен интервал таймаута, по истечению которого будет произведен принудительный возврат управления и переход к следующему компоненту сценария. Обрыв исполнения производится также при остановке сценария.
Свойства:
Модуль/Форма | Выбор конкретного плагина и одного из его компонентов для работы в сценарии. |
Свойства | Доступ к вкладке редактора параметров формы для настройки передаваемых и сохраняемых параметров. |
Таймаут, сек | Аргумент, устанавливающий время в секундах, по истечению которого будет произведен принудительный отъем управления из вызванной подпрограммы. В случае, если интервал нулевой (по умолчанию), таймаут считается не установленным. |
Переход | Компонент, на который передается управление после возврата в случае успешного проведения операции. |
Переход, компонент не найден | Компонент, на который передается управление, если plugin-программа не указана, не найдена или не может быть загружена. |
Переход, таймаут | Компонент, на который передается управление в случае, если за установленный интервал времени не вернулось управление от внешнего компонента. |
Переход, ошибка | Компонент, на который передается управление в случае возникновения ошибок. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Отправка SMS-сообщения
Осуществляет отправку SMS-сообщения по указанному номеру с назначенным текстом. Может быть настроен на ожидание доставки.
Свойства:
Номер | Аргумент, определяющий номер адресата. |
Текст | Аргумент, определяющий текст SMS-сообщения. |
Подставляемый номер | Номер, от которого осуществляется доставка. |
Push Id | Код отправленного сообщения (для дальнейшего запроса отчета о доставке). |
Ожидание доставки | Да/Нет. Требуется ли ожидать отчета о доставке. |
Таймаут ожидания | Время, которое компонент будет ожидать отчета о доставке.
Поле доступно только при выборе значения «Да» в свойстве «Ожидание доставки». |
Переход, доставлено | Компонент, на который передается управление после успешной отправки сообщения. В случае установки значения «Да» в свойстве "Ожидание доставки", если сообщение успешно доставлено до таймаута ожидания. |
Переход, не доставлено | Компонент, на который передается управление, если сообщение отправлено, но не было доставлено за установленное время ожидания (в случае если ожидание было назначено).
Поле доступно только при выборе значения «Да» в свойстве «Ожидание доставки». |
Переход, ошибка | Компонент, на который передается управление, если сервис недоступен или вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Получение статуса отправленного SMS-сообщения
Производит запрос к SMS-сервису на получение отчета о доставке конкретного SMS-сообщения по коду отправки (Push Id).
Свойства:
Push Id | Код отправленного сообщения. |
Переход, доставлено | Компонент, на который передается управление, если sms уже доставлено. |
Переход, не доставлено | Компонент, на который передается управление, если sms еще не доставлено. |
Переход, ошибка | Компонент, на который передается управление, если сервис недоступен или вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Получение входящего SMS-сообщения
Производит запрос к SMS-сервису на получение первого в очереди входящих сообщений. В случае успеха наполняет переменные сценария соответствующими сообщению значениями.
Свойства:
Номер отправителя | Переменная, куда запишется номер отправителя. |
Текст | Переменная, куда запишется текст сообщения. |
Номер адресата | Переменная, куда запишется номер, на который сообщение было отправлено. |
Переход, получено | Компонент, на который передается управление, если сообщение на сервере имеется и получено успешно. |
Переход, сообщений нет | Компонент, на который передается управление, если входящих сообщений на сервере нет. |
Переход, ошибка | Компонент, на который передается управление, если сервис недоступен или вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Баланс счета на SMS-сервере
Запускает на сервере внешний процесс или открывает приложение с указанным документом. В сценариях IVR используется чаще для запуска системных программ, а также учетных, сервисных, обслуживающих программ организации-клиента Oktell.
Свойства:
Количество | Переменная, куда вернется количество оставшихся оплаченных SMS-сообщений. |
Переход | Компонент, на который передается управление, если запрос отработан. |
Переход, ошибка | Компонент, на который передается управление, если сервис недоступен или вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Отправка сообщения электронной почты
Осуществляет отправку email-сообщения на указанный ящик электронной почты.
Свойства:
Способ отправки | Форма, определяющая способ отправки email-сообщения. |
Кому | Аргумент, определяющий получателей email сообщения. Если письмо предназначается нескольким адресатам, то адреса должны быть перечислены через «;». |
От кого | Аргумент, определяющий отправителя email сообщения. Ряд почтовых серверов требует явного указания поля "Отправитель" (e-mail адрес отправителя). В этом случае свойство должно быть вычислено к моменту, когда компонент получит управление.
В качестве отправителя может быть указана строка вида "username <address@mail.com>". |
Тема | Аргумент, определяющий тему email сообщения. |
Формат тела письма | Текст или HTML. Определяет формат, в котором будет сформировано тело для отправки. |
Содержание письма | Аргумент, определяющий текстовую часть e-mail сообщения. |
Кодировка | Определяет кодировку отправляемого письма. При необходимости осуществляется преобразование тела.
|
Кодовая страница Windows | Доступно только при выборе кодировки «Указанная кодовая страница Windows».
Числовой аргумент, определяющий кодовую страницу Windows для формирования тела письма. |
Вложение 1 | Аргумент, значение которого определяет абсолютный путь к файлу, который необходимо прикрепить к сообщению email. |
Вложение 2 | По аналогии со свойством «Вложение 1». |
Вложение 3 | По аналогии со свойством «Вложение 1». |
Вложение 4 | По аналогии со свойством «Вложение 1». |
Вложение 5 | По аналогии со свойством «Вложение 1». |
Уведомлять об ошибках | Форма выбора пользователей-получателей уведомлений об ошибках, возникающих в момент выполнения отправки. Необходимо в отладочных целях в первые дни работы новых проектов. |
Переход | Компонент, на который передается управление, если сообщение успешно отправлено. |
Переход, неудача | Компонент, на который передается управление, если при отправке SMTP сервер вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Форма «Способ отправки»:
Форма определяет способ отправки email сообщения. В зависимости от типа сценария email можно отправить через:
- SMTP сервер
- Встроенный почтовый клиент (доступен только для сценариев диалога)
Если для отправки выбран выбран «SMTP сервер», письмо будет отправлено немедленно на указанный SMTP сервер.
Для настройки доступны свойства:
Тип SMTP сервера | Свойство, определяющее источник настроек для SMTP сервера
|
Адрес | Адрес SMTP сервера |
Порт | Порт SMTP сервера. Значение не должно содержать более 4 цифр ( максимум: 9999 ) |
Требуется авторизация | Установлено, если SMTP сервер требует авторизацию |
Требуется SSL авторизация | Установлено, если SMTP сервер требует SSL авторизацию |
Логин | Учетная запись на почтовом сервере |
Пароль | Пароль учетной записи на почтовом сервере |
Если для отправки выбран «Встроенный почтовый клиент», письмо будет открыто на компьютере оператора в почтовом редакторе по умолчанию. Открыть письмо может любой почтовый редактор, поддерживающий MAPI интерфейс.
Прием входящего сообщения электронной почты
Осуществляет прием email-сообщения с указанного ящика электронной почты.
Свойства:
Способ получения | Форма, определяющая способ получения email-сообщения. |
MessageId | Переменная, в которую будут сохранен идентификатор email сообщения. |
Кому | Переменная, в которую будут сохранены получатели email сообщения. |
От кого | Переменная, в которую будут сохранены отправители email сообщения. |
Тема | Переменная, в которую будут сохранена тема email сообщения. |
Предпочитаемый тип контента | Для разделов multipart/alternative позволяет установить предпочитаемый тип текстового контента. При наличии указанного типа среди блоков в переменную будет сохранено именно его содержимое, а остальные дублирующие альтернативные блоки будут игнорироваться. По умолчанию text/plain, но может быть установлен text/html, text/xml, text/rtf, text/richtext. |
Текст письма | Переменная, в которую будут сохранен текст email сообщения. |
Текст письма часть2 | Переменная, в которую будут сохранен текст из второй части email сообщения. Используется для сообщений multipart. |
Текст письма часть3 | Переменная, в которую будут сохранен текст из третьей части email сообщения. Используется для сообщений multipart. |
IMAP каталог | Аргумент, значение которого определяет IMAP каталог, из которого будет получено сообщение. По умолчанию используется стандартный каталог входящей почты Inbox.
Поле доступно только при работе с IMAP-сервером (свойство «Способ получения»). |
IMAP запрос | Аргумент, значение которого определяет IMAP запрос. Запрос определяет критерии выбора сообщения из каталога, заданного свойством IMAP каталог. По умолчанию используется запрос, возвращающий все письма (значение "ALL"). Более подробно о синтаксисе IMAP запросов можно узнать из документации RFC 2060.
Поле доступно только при работе с IMAP-сервером (свойство «Способ получения»). |
Принимать только заголовки | Да/Нет. Требуется ли получать только заголовки письма (в этом случае тело сообщения и прикрепленные файлы скачиваться с почтового сервера не будут) |
Удалять с сервера | Да/Нет. Требуется ли удалить письмо с почтового сервера после получения. |
Сохранять вложения | Определяет режим сохранения вложений.
|
Папка для вложений | Доступно только при выбранном режиме сохранения вложений в указанную папку.
Представляет собой аргумент, устанавливающий абсолютный или относительный путь к папке, куда будут сохранены вложения с исходными именами. |
Путь к папке для вложений в переменную | Доступно только при выбранном режиме сохранения вложений в папку по умолчанию, заданную в общих настройках.
Представляет собой переменную, в которую будет сохранен путь к папке с вложениями, заданный в общих настройках. |
Уведомлять об ошибках | Форма выбора пользователей-получателей уведомлений об ошибках, возникающих в момент выполнения отправки. Необходимо в отладочных целях в первые дни работы новых проектов. |
Переход, получено | Компонент, на который передается управление, если сообщение успешно получено. |
Переход, не получено | Компонент, на который передается управление, если сообщение не получено, но при этом ошибок не возникло. Такая ситуация может возникнуть, если:
|
Переход, неудача | Компонент, на который передается управление, если при получении сообщения POP3 ( IMAP4 ) сервер вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Форма «Способ получения»:
Форма определяет способ получения email сообщения. Сообщение можно получить через:
- POP сервер (по протоколу POP3)
- IMAP сервер (по протоколу IMAP4)
Для настройки доступны свойства:
Тип почтового сервера | Свойство, определяющее источник настроек для сервера входящей почты
|
Адрес | Адрес сервера. |
Порт | Порт сервера. (стандартный порт POP сервера - 110, IMAP сервера - 143). |
Требуется авторизация | Установлено, если сервер требует авторизацию. |
Требуется SSL авторизация | Установлено, если сервер требует SSL авторизацию. |
Логин | Учетная запись на почтовом сервере. |
Пароль | Пароль учетной записи на почтовом сервере. |
Отправка IM (ICQ/jabber) сообщения
Осуществляет отправку IM-сообщения (ICQ или Jabber). Указываются сервер, аккаунт адресата, аккаунт отправителя, способ подключения к серверу (прокси/без прокси). Работа с аккаунтом происходит через пул подключений. Любые обращения к аккаунту (отправки/приема из разных сценариев), влекущие подключение к серверу, помещают созданное подключение в специальный пул, где оно поддерживается некоторое время (устанавливается в разделах «Общие настройки. ICQ-сервис» и «Общие настройки. Jabber-сервис»). Каждое последующее обращение к аккаунту работает с подключением из пула и продляет время его существования. В случае таймаута аккаунт отключается. Также аккаунт отключается при получении ошибки сервера или выгрузке серверного приложения. Такой механизм работы в частности гарантирует работу комплекса от ошибки сервера ICQ «Превышен лимит подключений». Для каждого аккаунта в пуле держится отдельное подключение. Для Jabber-аккаунтов держатся отдельно подключения с разными настройками, даже если они имеют одинаковый JID.
Свойства:
Протокол | ICQ / Jabber. |
Настройки прокси | Форма, определяющая настройки подключения к прокси-серверу. |
Настройки учетной записи | При отправке ICQ-сообщения - форма, определяющая настройки учетной записи (UIN) ICQ, которая будет использоваться в качестве отправителя сообщения ICQ.
При отправке Jabber-сообщения - форма настройки учетной записи (JID) сервиса Jabber, которая будет использоваться в качестве отправителя Jabber-сообщения, а также настройки сервера, к которому необходимо осуществлять подключение для работы в сети Jabber. Обратите внимание на рекомендации, приведенные в разделе Общие настройки. Jabber-сервис. |
UIN / JID | Аргумент, определяющий UIN-номера / JID-аккаунты получателей IM-сообщения. Если сообщение предназначается нескольким адресатам, то адреса должны быть перечислены через «,». |
Таймаут ожидания соединения | Аргумент, определяющий временной интервал (в миллисекундах), в течение которого система ожидает соединения с IM-сервером (ICQ / Jabber). При отправке сообщения выполнение сценария будет приостановленно до тех пор пока:
|
Таймаут отправки соединения | Аргумент, определяющий временную задержку ( в миллисекундах ) перед отправкой сообщения. |
Текст сообщения | Аргумент, определяющий текст сообщения. |
Уведомлять об ошибках | Форма выбора пользователей-получателей уведомлений об ошибках, возникающих в момент выполнения отправки. Необходимо в отладочных целях в первые дни работы новых проектов. |
Переход | Компонент, на который передается управление, если сообщение успешно отправлено. |
Переход, неудача | Компонент, на который передается управление, если при отправке сервер вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Форма «Настройки подключения»:
Форма определяет настройки подключения к ICQ / Jabber серверу. Имеется возможность подключения напрямую и через прокси-сервер. Поддерживаются следующие типы прокси-серверов:
- SOCKS5
- HTTPS
Для настройки доступны свойства:
Тип прокси сервера | Свойство, определяющее источник настроек для подключения к серверу.
|
Тип протокола | Свойство, определяющее тип протокола прокси-сервера:
|
Адрес | Адрес сервера. |
Порт | Порт сервера. (стандартный порт SOCKS5 сервера - 1080, HTTPS сервера - 8080). |
Требуется авторизация | Установлено, если сервер требует авторизацию. |
Логин | Учетная запись на прокси сервере. |
Пароль | Пароль учетной записи на прокси сервере. |
Форма «Настройки учетной записи ICQ»:
Форма определяет учетную запись ICQ, которая будет использоваться в качестве отправителя сообщения ICQ.
Для настройки доступны свойства:
Тип учетной записи | Свойство, определяющее источник настроек учетной записи
|
UIN | Номер ICQ |
Пароль UIN | Пароль ICQ |
Аналогичная форма открывается и при настройке JID-аккаунта (при работе с Jabber). В ней в дополнение к JID и паролю при осуществлении индивидуальной настройки предлагается указать адрес и порт сервера Jabber.
Получение IM (ICQ/jabber) сообщения
Осуществляет прием IM-сообщения (ICQ или Jabber). Указываются сервер, аккаунт получателя, способ подключения к серверу. Получаемые сообщения сохраняют в указанных переменных аккаунт отправителя и текст сообщения. Работа компонента происходит через пул подключений аналогично компоненту «Отправка IM-сообщения».
Свойства:
Протокол | ICQ / Jabber |
Настройки прокси | Форма, определяющая настройки подключения к прокси-серверу. |
Настройки учетной записи | При получении ICQ-сообщения - форма, определяющая настройки учетной записи (UIN) ICQ, которая будет использоваться в качестве получателя сообщения ICQ.
При получении Jabber-сообщения - форма настройки учетной записи (JID) сервиса Jabber, которая будет использоваться в качестве получателя Jabber-сообщения, а также настройки сервера, к которому необходимо осуществлять подключение для работы в сети Jabber. Обратите внимание на рекомендации, приведенные в разделе Общие настройки. Jabber-сервис. |
UIN / JID | Переменная, в которую будет сохранен UIN / JID отправителя IM-сообщения. |
Таймаут ожидания соединения | Аргумент, определяющий временной интервал (в миллисекундах), в течение которого система ожидает соединения с сервером. При получении сообщения выполнение сценария будет приостановленно до тех пор пока:
|
Таймаут получения сообщения | Аргумент, определяющий временную задержку (в миллисекундах) перед получением сообщения. Если на указанный в свойстве «Настройки учетной записи» аккаунт раньше приходили сообщения, то таймаут игнорируется, а в переменные «UIN/JID», «Текст сообщения» будет подставлены значения, сохраненные в пуле сервера состояний системы. |
Текст сообщения | Переменная, в которую будет сохранен текст полученного сообщения. |
Уведомлять об ошибках | Форма выбора пользователей-получателей уведомлений об ошибках, возникающих в момент выполнения получения. Необходимо в отладочных целях в первые дни работы новых проектов. |
Переход | Компонент, на который передается управление, если сообщение успешно получено. |
Переход, сообщений нет | Компонент, на который передается управление, если новых сообщений не обнаружено. |
Переход, неудача | Компонент, на который передается управление, если при получении сервер вернул ошибку. |
Имя | Название компонента для отображения в визуальной среде и выбора в списке. |
Другие компоненты сценариев: