Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Распределение звонков

Распределение звонков

Распределение звонуков
Сообщений: 21

Распределение звонков

Добрый день эксперты, помогите пожалуйста:

имеется 5 операторов c номерами от (21 до 25) которые должны обрабатывать входящие звонки
есть макрос для входящего звонка который обязательно должен обрабатываться,
так как в макросе осуществляются забросы к базе и обработка статусов звонков.

[macro-mydial]
...

Пока экстеншн для вызова:

[call-center]
exten => 111,1,Macro(mydial,21)

Почитал документацию по очередям, но там вроде просто указываются агенты напрямую,
но мне необходимо прогонять через макрос, причем с самого начала,
сам вызов оператора происходил в макросе.

Подскажите пожалуйста как можно сделать динамическое распределением звонков?
2009-10-13 15:41

Откуда: Санкт-Петербург
Сообщений: 541

Re: Распределение звонков

Пусть распределением занимается то, что для этого предназначено:
Asterisk 1.6.0:
Queue(queuename[,options[,URL[,announceoverride[,timeout[,AGI[,macro[,gosub[,rule]]]]]]]])
как видно - в 1.6 можно вызвать Macro

Asterisk 1.4:
Queue(queuename[|options][|URL][|announceoverride][|timeout][|AGI])
в 1.4 - AGI, но тут придется переносить функционал из Macro в AGI-скрипт
2009-10-14 16:15

Сообщений: 21

Re: Распределение звонков

Большое спасибо за ответ.

Дело в том, что мне нужно записывать состояние звонка в базу, для самописного Call-центра.
Все это делал через макрос, всю оболочку сделал, теперь проблема с распределением звонков.

Что по уму делать через Qunue я понимаю, оно и проще.
Но мне надо сделать так:
1. Поступил звонок, запись в базу
2. Закончился звонок, запись в базу статуса звонка, имени файла записи
2009-10-14 18:12

Откуда: Зеленоград
Сообщений: 446

Re: Распределение звонков

А что мешает п.1 делать до вызова Queue, а п.2 - после?
2009-10-14 18:38

Сообщений: 1573

Re: Распределение звонков

exten => _X.,1, <Пишете в базу (как у вас там)>
exten => _X.,n,Queue ...

exten => h,1, <Опять пишете в базу (как у вас там)>
2009-10-16 15:53

Сообщений: 21

Re: Распределение звонков

В принципе пошло, но не совсем так.

Экстеншен горячей линии:
exten => 111,1,Queue(my_queue|n||||)

Экстеншены операторов:
exten => _XX,1,SetGlobalVar(MONITOR_FILENAME=${STRFTIME(${EPOCH}||%y-%m-%d_%H:%M:%S)}_${EXTEN})
exten => _XX,2,SetGlobalVar(MONITOR_EXEC=nice -n 19 /usr/bin/lame -b 16 --noshort --silent "/var/spool/asterisk/monitor/${MONI
TOR_FILENAME}.wav" "/var/spool/asterisk/monitor/${MONITOR_FILENAME}.mp3" && rm -f "/var/spool/asterisk/monitor/${MONITOR_FILEN
AME}.wav")
exten => _XX,3,AGI(my_writer.agi|START|${MONITOR_FILENAME}|${EXTEN}|${CHANNEL}|${UNIQUEID}|DIAL)
exten => _XX,4,Dial(SIP/${EXTEN}||htwkdg)
exten => h,1,DeadAGI(my_writer.agi|END|${MONITOR_FILENAME}|${EXTEN}|${CHANNEL}|${UNIQUEID}|${DIALSTATUS})

2009-10-16 17:47

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru