MikoPBX
Модули
MikoPBX
Модули
Это старая версия документа!
В Askozia в разделе Маршрутизация → Нерабочее время настроены правила маршрутизации вызовов в нерабочее время. Данные правила распространяются на все вызовы, независимо от того на какой номер компании позвонил клиент. Необходимо для провайдера Zadarma настроить индивидуальное нерабочее время. Рабочее время для данного провайдера: с 9.00 до 18.00 по МСК.
1. Подключите провайдера в Askozia 6 согласно инструкции.
2. Перейдите в раздел Модули → Приложения диалпланов. Создайте новое приложение (диалплан Asterisk) по инструкции. Параметры приложения принимают вид:
Программный код созданного приложения:
1,ExecIfTime(09:00-18:00,mon-fri,*,*?Goto(internal,2003,1)) n,Goto(internal,201,1)
Команда ExecIfTime выполняет указанное приложение Asterisk, если текущее время соответствует заданной спецификации времени. Если нам позвонят с 9:00 до 18:00 в любой будний день (с понедельника по пятницу), то мы перенаправляем вызов (команда Goto) на номер 2003. 2003 - это номер IVR-меню.
Иначе вызов направится сотруднику с внутренним номером 201.
3. Настраиваем правила входящей маршрутизации для созданного провайдера. Переходим в раздел Маршрутизация → Входящие маршруты. Направляем все входящие вызовы на созданное приложение.
1. Подключите провайдера в Askozia 6 согласно инструкции.
2. Скопируйте в адресной строке ID провайдера, в нашем примере это SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49
3. Перейдите в раздел Система → Кастомизация системных файлов.
3. Откройте для редактирования конфигурационный файл extensions.conf. Установите режим «Добавлять в конец файла».
4. В черное окно добавьте следующий фрагмент кода:
[SIP-PROVIDER-B63EE3497989BF6597FF8C9DEC77EB49-incoming-custom] exten => _.!,1,NoOp(check time) same => n,ExecIfTime(00:00-09:00,mon-fri,*,*?Macro(playback-exit,/offload/asterisk/sounds/other/out_work_times)) same => n,ExecIfTime(18:00-23:59,mon-fri,*,*?Macro(playback-exit,/offload/asterisk/sounds/other/out_work_times)) same => n,return
В выше приведенном фрагменте кода Вам необходимо составить правильное наименование контекста.
Формат создаваемого контекста:
[ID-ПРОВАЙДЕРА-incoming-custom]
Рабочее время с 9.00 до 18.00. Следовательно необходимо задать два интервала для нерабочего времени: 00:00-09:00 и 18:00-23:59.
Ниже красным цветом выделен фрагмент, который Вам необходимо изменить.
Более подробно разберём команду ExecIfTime. Эта команда выполняет указанное приложение Asterisk, если текущее время соответствует заданной спецификации времени. В нашем случае команда выполняет проигрывание звукового файла, расположенного в директории /offload/asterisk/sounds/other/out_work_times в Askozia.
Синтаксис команды:
ExecIfTime(times,weekdays,mdays,months?appname[(appargs)])
В нашем примере указаны диапазон времени, диапазон дней недели. Вместо указания дней месяцев и месяцев введены *. Этот символ означает «для всех остальных случаев».
ExecIfTime(00:00-08:00,mon-fri,*,*?Macro(playback-exit,/offload/asterisk/sounds/other/out_work_times))