Страница 1 из 1

Ограничение отбивок астериска

Добавлено: 14 янв 2016, 14:43
pipneogen
Добрый день, коллеги.
Заказчик попросил внести корректировки в астериск с такой формулировкой:
Необходимо отключить поступление отбивок о пропущенных звонках на линиях сервиса и респшена в следующих ситуациях:

В нерабочее время
Происходит разговор на первой линии, по второй линии звонит клиент и не дожидаясь своей очереди сбрасывает звонок.
С первым вопросом было всё решено довольно просто:

Код: Выделить всё

root@servername:/usr/local/etc/asterisk# diff -u extensions.ael~ extensions.ael
--- extensions.ael~    2015-08-10 12:15:29.000000000 +0300
+++ extensions.ael    2015-11-13 16:51:33.887022694 +0300
@@ -177,10 +177,12 @@

    h => {
         if ("${CDR(disposition)}" = "NO ANSWER") { 
          if ("${CDR(dst)}" = "600") {
+          ifTime (10:00-19:00|mon-fri|*|*) {
             System(/usr/local/sbin/asterisk-mail.sh "mail@mail.com" "${CDR(src)}" "reception" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
 //            System(/usr/local/sbin/asterisk-mail.sh "mail2@mail.com" "${CDR(src)}" "reception" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
       };
+     };
     };
    };

@@ -427,8 +429,10 @@

       h => {
     if ("${CDR(disposition)}" = "NO ANSWER") {
+     ifTime (10:00-19:00|mon-fri|*|*) {
         System(/usr/local/sbin/asterisk-mail.sh "mail@mail.com" "${CDR(src)}" "${CDR(userfield)}" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
 //        System(/usr/local/sbin/asterisk-mail.sh "mail2@mail.com" "${CDR(src)}" "${CDR(userfield)}" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
+     };
     };
       };
 };
@@ -440,8 +444,10 @@
       // Значение поля uniqueid
       Set(uniqueid=${CDR(uniqueid)});
       if ("${CDR(disposition)}" = "NO ANSWER") {
+    ifTime (10:00-19:00|mon-fri|*|*) {
     System(/usr/local/sbin/asterisk-mail.sh "mail@mail.com" "${CDR(src)}" "${CDR(dstchannel):4:3}" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
 //    System(/usr/local/sbin/asterisk-mail.sh "mail2@mail.com" "${CDR(src)}" "${CDR(dstchannel):4:3}" "${CDR(start)}" "${CDR(disposition)}" "${CDR(duration)}");
+       };
       };
       // Ждём ввода цифры 10 сек
       Waitexten(10);
А вот насчёт реализации второго запроса клиента - сообразить не можем, как это можно реализовать.
Подскажите пожалуйста, в каком направлении работать, чтобы это реализовать и возможно ли вообще?

Re: Ограничение отбивок астериска

Добавлено: 14 янв 2016, 15:02
Glukinho
В задачу не вникал, но у вас там ошибка:
if ("${CDR(disposition)}" = "NO ANSWER") {
Нужно NOANSWER, без пробелов.

Re: Ограничение отбивок астериска

Добавлено: 14 янв 2016, 15:04
Aven
Отбивка это отправка письма по электропочте?
Количество одновременных звонков можно посчитать через GROUP()

Re: Ограничение отбивок астериска

Добавлено: 14 янв 2016, 17:22
whoim
как всегда, ТЗ блещет сознанием.
Нужно, чтобы клиент не сбрасывал звонок? Или оповещать, если сбросил? Или НЕ оповещать, если сбросил?

Re: Ограничение отбивок астериска

Добавлено: 15 фев 2016, 15:36
pipneogen
Уточнение задачи таково, что когда абонент находится в очереди вызовы и не дожидаясь ответа, бросает трубку - чтобы отбивка о таком абоненте не поступала на почту для уведомлений.
Гугление не помогло выявить команды для диалплана и параметры.

Re: Ограничение отбивок астериска

Добавлено: 15 фев 2016, 16:37
whoim
Если в очереди/группе количество абонентов = 1, то отсылать - верно?

Re: Ограничение отбивок астериска

Добавлено: 16 фев 2016, 10:02
pipneogen
Приведу Вам ответ в виде цитирования Вашего сообщения:
... Или НЕ оповещать, если сбросил?
Нужно именно НЕ оповещать о том, что абонент находясь в очереди звонка сбросил соединение.

Re: Ограничение отбивок астериска

Добавлено: 16 фев 2016, 12:34
whoim
А когда тогда оповещать? Когда он не в очереди??

Re: Ограничение отбивок астериска

Добавлено: 16 фев 2016, 12:54
april22
не слать электрон почту , если клиент звонит в не рабочее время , и сбросил звонок .

Re: Ограничение отбивок астериска

Добавлено: 16 фев 2016, 15:41
whoim

Код: Выделить всё

ifTime (10:00-19:00|mon-fri|*|*) {
не, тут что то еще :D