Определение графика работы офиса — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
Строка 18: Строка 18:
 
<u>Период работы офиса в течении дня:</u> <span style="color:green">''''>Period[WeekDay='+[деньнедели]+']:eq('+Str( [количество] )+')''''</span>, где '''[количество]''' - номер по порядку периода работы офиса в течении дня (например, офис работает с 9.00 до 12.00 и с 13.00 до 18.00 - имеем 2 периода).
 
<u>Период работы офиса в течении дня:</u> <span style="color:green">''''>Period[WeekDay='+[деньнедели]+']:eq('+Str( [количество] )+')''''</span>, где '''[количество]''' - номер по порядку периода работы офиса в течении дня (например, офис работает с 9.00 до 12.00 и с 13.00 до 18.00 - имеем 2 периода).
  
Пример примере проверяется только график, праздники не проверяются): [http://wiki.oktell.ru/images/b/bb/%D0%93%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D1%8B%D0%9E%D1%84%D0%B8%D1%81%D0%B0.oscr ГрафикРаботыОфиса.oscr‎]
+
==Пример служебного сценария==
 +
 
 +
В нижеприведенном примере проверяется только график, праздники не проверяются):
 +
 
 +
 
 +
 
 +
'''Скачать сценарий:''' [http://wiki.oktell.ru/images/b/bb/%D0%93%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%A0%D0%B0%D0%B1%D0%BE%D1%82%D1%8B%D0%9E%D1%84%D0%B8%D1%81%D0%B0.oscr ГрафикРаботыОфиса.oscr‎] (для версий Oktell младше 2.10)

Версия 06:28, 16 апреля 2014

Наверх

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


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


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

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


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

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

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

Пример служебного сценария

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


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