VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

CallBack по освобождению очереди в Elastix

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
truthful-liar
Сообщения: 19
Зарегистрирован: 22 авг 2014, 15:29

CallBack по освобождению очереди в Elastix

Сообщение truthful-liar »

Всем привет! Использую эластикс 2.4, поставили задачу сделать коллбек, да не простой.
В двух словах. Есть очередь из 3 внутренних абонентов. В очереди бывает по 6-8 ожидающих клиентов.
Сделал ИВР перед очередью с предложением нажать 1 для коллбека или ждать ответа (попадает в очередь).

Все отрабатывает, но немного не так, как хотелось бы. Сейчас коллбек отрабатывает моментально и помещает клеента в ту-же очередь независимо,
пуста она или заполнена.
Если адресатом коллбека поставить одного из внутренних абонентов той самой очереди, если он занят на момент срабатывания коллбека,
еластикс набирает клиента и дает отбой ((

Вопросы:
1. Можно как нить сделать так, чтобы коллбек отрабатывал тогда, когда очередь опустеет и появится свободный абонент?
2. Можно подредактировать коллбек так, чтобы он сначала набирал внутреннего абонента, а при ответе оного уже набирал клеента?

Спасибо за ответы! )
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: CallBack по освобождению очереди в Elastix

Сообщение ded »

2. Можно
truthful-liar
Сообщения: 19
Зарегистрирован: 22 авг 2014, 15:29

Re: CallBack по освобождению очереди в Elastix

Сообщение truthful-liar »

можно наколочку хотябы, куды копать?
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: CallBack по освобождению очереди в Elastix

Сообщение ded »

В сторону конфигурации call файла. Смотрите примеры call файлов, там два плеча, сначала вызов одного, потом - второго.Поменять плечи - не проблема.
truthful-liar
Сообщения: 19
Зарегистрирован: 22 авг 2014, 15:29

Re: CallBack по освобождению очереди в Elastix

Сообщение truthful-liar »

узнал, что в эластиксе дозвон осуществляется не колл-файлом, а командой Originate из скрипта /var/lib/asterisk/bin/callback.
почитал про эту команду. везде написано

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

Первое, совершается вызов по каналу, указанному в параметре Channel. Далее, после того как установлено соединение по этому каналу (на вызов ответили), будет запущена процедура исходящего вызова. 
и нигде ни слова о перемене последовательности.
Неужели не поменять порядок вызова?
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: CallBack по освобождению очереди в Elastix

Сообщение virus_net »

Пишите в диалплане контекст, в нем какую угодно очередность набора чего угодно.
В call-файле или Originate используете channel Local и вызываете свой контекст.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: CallBack по освобождению очереди в Elastix

Сообщение zzuz »

1. Нужно написать скрипт , который будет в асинхронном режиме делать Originate на нужные контексты диаплана.
2.Первый контекст это ожидание в очереди .
3.Второй контекст - ожидание ответа оператором очереди на звонок. Тут используется цикл While() с нужной проверкой ответа.
4.В настройках команды Dial для внутренних звонков нужно выставить параметр U(sub-ext-answer) (sub-ext-answer контекст обработки ответа) , который будет проверять наличие канала звонка в очередь (потому как для всех отвеченных вызовов будет отрабатывать) . В этом же контексте нужно импортировать переменные из нужного канала , так как нужно не забывать , что каналы запущены отдельно.
5. Далее добавляем файлы с важной речью для операторов , о том что сейчас будет исходящий вызов. Также перед исходящем вызове не забываем поправить номер , так как он может определяться по разному в зависимости от провайдера.

В итоге имеем:
-скрипт с originate
-контекст для вхождения в очередь и ожидания ответа на звонок в очередь
-контекст проверки ответа на звонок оператором
-контекст проверки CID(num) звонящего и его правки
Линия24 - Системы Массового Телефонного Обслуживания
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH