Определение графика работы офиса

Материал из Oktell
Версия от 12:55, 12 января 2015; Oktell Support (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Наверх

Введение

В общих настройках есть следующий пункт: Общие настройки->График работы офиса.


ГрафикОфиса.PNG


Часто возникает вопрос как можно проверить, например, в главном IVR сценарии, соответствует ли текущее время графику работы офиса или нет.

Сами данные по графику хранятся в таблице [oktell_settings].[dbo].[A_Settings] в виде xml-структур в строках с ключами:

  • us~~~~o_WorkTime (рабочее время),
  • usd~~~o_Holidays (праздники)


Реализация с помощью статуса объекта

Для версий Oktell старше 2.9 131126 определение рабочего времени доступно в сценариях с помощью компонента "Статус объекта".


График работы офиса -002.png


В компоненте настраиваются следующие параметры:

  • Действие - Определить
  • Тип объекта - Сервер
  • Функция - Рабочее время по графику офиса
  • Параметр - текущее время (или время, за которое проверяем график работы офиса). В примере используется функция "Текущие дата и время".
  • Значение в переменную - выберите переменную для хранения результата.

Результатом является число 1, если время в параметре соответствует графику работы офиса и 0 - если не соответствует. Функция проверяет график работы офиса и праздничные дни.


Реализация для версий Oktell ниже 2.9

Для версий ниже 2.9 131126 можно создать сценарий, возвращающий 1 - время соответствует графику офиса, 0 - не соответствует и запускать его как вложенный. Сами xml-структуры разбираются парсером Oktell. Для графика работы офиса (в сценарии-примере):

Количество записей для дня недели: '>Period[WeekDay='+[деньнедели]+']', где [деньнедели] - переменная содержащая день недели в числовой форме: Понедельник=1, Вторник=2,.. Суббота=6, Воскресенье=0.

Период работы офиса в течении дня: '>Period[WeekDay='+[деньнедели]+']:eq('+Str( [количество] )+')', где [количество] - номер по порядку периода работы офиса в течении дня (например, офис работает с 9.00 до 12.00 и с 13.00 до 18.00 - имеем 2 периода).


В нижеприведенном примере проверяется только график, праздники не проверяются):


График работы офиса -001.png


ВНИМАНИЕ: Представленный сценарий является служебным. Чтобы использовать его в главном сценарии используйте IVR-версию

Скачать служебный сценарий: ГрафикРаботыОфиса.oscr‎ (для версий Oktell старше 2.6)

Скачать IVR сценарий: ГрафикРаботыОфисаIVR.oscr‎ (для версий Oktell старше 2.9 131007)