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

Исходящие очереди

Добавлено: 18 дек 2012, 17:01
malamut
Я хочу сделать очередь не для входящих вызовов, а для исходящих. Цель - объединить несколько SIP каналов и звонить рандомно по незанятому, а если все заняты - ждать, пока освободится и говорить об этом вызывающим.

Ок, у меня есть исходящие каналы SIP/line1, SIP/line2 .... SIP/line10. Я делаю очередь, прописывая их всех в member'ы и используя нужное правило балансировки.

Но как теперь сделать что-то по типу Dial(SIP/line1/${EXTEN}), но для очереди? То есть как передать в очередь телефон абонента, который должен вызвать свободный member?

Re: Исодящие очереди

Добавлено: 18 дек 2012, 17:11
zzuz
Для анализа транков используйте приложение ChanISavail , функцию GROUP() и GROUP_COUNT() , ну и свои познания в написании диаплана.

Re: Исодящие очереди

Добавлено: 18 дек 2012, 17:23
malamut
Мне не нужно ничего анализировать - зачем?) Мне нужно объединить транки в очередь. Писать собственную реализацию очереди - полная бессмыслица. Вопрос не в том, с помощью каких хаков можно обойтись без очередей. Вопрос в том, как заставить очередь работать на исходящие звонки.

Re: Исходящие очереди

Добавлено: 18 дек 2012, 18:00
awsswa
Звонок через группу.

Re: Исходящие очереди

Добавлено: 18 дек 2012, 18:01
ded
Нет такого понятия - очередь на исходящие звонки.

Re: Исходящие очереди

Добавлено: 18 дек 2012, 18:05
malamut
Группа - которая callgroup? Как через неё можно звонить? И причём тут очереди?

Re: Исходящие очереди

Добавлено: 18 дек 2012, 18:08
ded

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

*CLI> core show function GROUP                    
*CLI>                                             
  -= Info about function 'GROUP' =-                  
                                                     
[Syntax]                                             
GROUP([category])                                    
                                                     
[Synopsis]                                           
Gets or sets the channel group.                      
                                                     
[Description]                                        
Gets or sets the channel group. 

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

*CLI>                                                         
  -= Info about function 'GROUP_COUNT' =-                        
                                                                 
[Syntax]                                                         
GROUP_COUNT([groupname][@category])                              
                                                                 
[Synopsis]                                                       
Counts the number of channels in the specified group             
                                                                 
[Description]                                                    
Calculates the group count for the specified group, or uses the  
channel's current group if not specifed (and non-empty).         
При чём тут Вы?

Re: Исходящие очереди

Добавлено: 18 дек 2012, 18:48
malamut
Так, вообще ничего не понял. Что такое группы я знаю. Мне же нужна простейшая вещь: при соединении с членом очереди вызвать не просто линию (member'а) а-ля SIP/line, а линию с передачей номера а-ля SIP/line/000000, а желаемый номер (000000) указывать при постановке канала в очередь. Вопрос был в том - как?

Re: Исходящие очереди

Добавлено: 18 дек 2012, 19:34
ded
Судя по Вашим постам -
Мне не нужно ничего анализировать - зачем?) Мне нужно объединить транки в очередь. Писать собственную реализацию очереди - полная бессмыслица. Вопрос не в том, с помощью каких хаков можно обойтись без очередей. Вопрос в том, как заставить очередь работать на исходящие звонки
Группа - которая callgroup? Как через неё можно звонить? И причём тут очереди?
вы не знаете что такое группы. Это широкое понятие. Для внутренних номеров callgroup - это одно, функция диалплана - function GROUP - это другое.
И по прежнему безумные идеи в голове.
Если у Вас 4 аналоговые линии, проще поставить в диалплане
exten => _X.1,Dial(TRUNKLINE1/${EXTEN})
exten => _X.n,Dial(TRUNKLINE2/${EXTEN})
exten => _X.n,Dial(TRUNKLINE3/${EXTEN})
exten => _X.n,Dial(TRUNKLINE4/${EXTEN})

Re: Исходящие очереди

Добавлено: 18 дек 2012, 20:07
awsswa
Я кстате заметил, как только начинается общение новичков в стиле -- транки, пиры .... так всё, суши весла.
Понять что хотят уже в принципе не возможно.
Обычно, после таких слов прошу нарисовать пожелания на бумажке :)