Страница 1 из 3
					
				Очередь исходящих
				Добавлено: 06 май 2023, 14:54
				 AllooZef
				Есть несколько транков на РТК. Необходимо сделать, чтобы если транк свободен, вызов шел всегда на него, если по нему уже говорят - на следующий и т.д. Наверное, по этому поводу написано дофига, но я не могу сообразить, как это должно называться. Если я ищу в гугле "очереди", то нахожу только обработку входящих...
			 
			
					
				Re: Очередь исходящих
				Добавлено: 06 май 2023, 16:16
				 ded
				Если самописные конфиги, то перед Dial надо проверять занятость транка через ChanIsAvail
CLI> core show application ChanIsAvail 
  -= Info about application 'ChanIsAvail' =-                                                                                                                          
[Synopsis]                                                                                                                                                            
Check channel availability 
[Description]
This application will check to see if any of the specified channels are
available.                                                                                                                                                            
This application sets the following channel variables:                                                                                                                
${AVAILCHAN}: The name of the available channel, if one exists                                                                                                        
${AVAILORIGCHAN}: The canonical channel name that was used to create the                                                                                              
channel                                                                                                                                                               
${AVAILSTATUS}: The device state for the device
${AVAILCAUSECODE}: The cause code returned when requesting the channel
[Syntax]
ChanIsAvail([Technology2/Resource2[&...]][,options])
[Arguments]
Technology2/Resource2
    Optional extra devices to check
    If you need more then one enter them as Technology2/Resource2&Te
    chnology3/Resourse3&.....
Technology/Resource
    Specification of the device(s) to check.  These must be in the forma
    of  'Technology/Resource', where <Technology> represents a particula
    channel driver, and <Resource> represents a resource available to th
    particular channel driver.
options
    a: Check for all available channels, not only the first one
    s: Consider the channel unavailable if the channel is in use at all
    t: Simply checks if specified channels exist in the channel list
Код: Выделить всё
exten => s,n,Set(VOIPCHECK=0)
exten => s,n,Set(PEERCHECK1=myprovider-out) ; SIP peer name as defined in sip.conf
; Make sure to have qualify=yes enabled for this SIP peer!
exten => s,n,NoOp(-- ${PEERCHECK1} status: ${SIPPEER(${PEERCHECK1}:status)} --)
exten => s,n,ExecIf($["${SIPPEER(${PEERCHECK1}:status):0:2}" = “OK”]|Set|VOIPCHECK=1)
; Now route and dial any way you like based on the value of VOIPCHECK
and then route it based on the value of VOIPCHECK with the gotoIF command
 
https://www.voip-info.org/asterisk-cmd-chanisavail/
http://www.voip-info.org/wiki/view/Asterisk+cmd+GotoIf 
Если freePBX - то создав один маршрут надо просто добавить в него транки, которые обеспечивают вызовы в мир по единому шаблону. Перебор будет выполняться автоматически.
https://wiki.freepbx.org/display/FPG/Tr ... User+Guide
Если хочется что-то посложнее - 
https://community.freepbx.org/t/new-tru ... eepbx/7330 
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 06:26
				 AllooZef
				При использовании PJSIP что-нибудь будет отличаться?
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 07:10
				 AllooZef
				Правильно я понял, что ChanIsAvail (Technology/resource[&Technology2/resource2…][|options]), если я перечислю в аргументах все каналы по порядку, выдаст мне имя 1го свободного?
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 12:02
				 AllooZef
				Читал-читал, так и не понял в СИПе под доступным понимается зарегистрированный или тот, по которому в данный момент не звонят?
С одной стороны: "it is primarily to tell you whether it would be possible to send a call there." С другой оно возвращает статускоды. И что тогда понимается под busy?
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 15:08
				 Zavr2008
				Не проще обратиться в саппорт РТ чтобы многоканальность сделали?
Если онанизма хочется, то просто в цикле можно рандомным номером  пытаться прозваниваться и в зависимости от DIALSTATUS рулить..
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 15:46
				 AllooZef
				В смысле,  5 каналов по одному транку? У них на сайте висит: "Мы этого не делаем". Очередь исходящих у них там реализована, мало того, она из "кабинета" управляется. Но отдают-то они только 5 отдельных номеров в расчете, что на каждом номере по аппарату. Остальное - на свой страх и риск. Или - "наша виртуальная АТС" с полной прослушкой всех внутрифирменных базаров.
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 17:40
				 ded
				AllooZef писал(а): У них на сайте висит: "Мы этого не делаем". 
Голосуйте ногами. Зачем вам такой провайдер? 
AllooZef писал(а):Читал-читал, так и не понял в СИПе под доступным понимается зарегистрированный или тот, по которому в данный момент не звонят?
С одной стороны: "it is primarily to tell you whether it would be possible to send a call there." С другой оно возвращает статускоды. И что тогда понимается под busy?
 В вашем случае - неизвестность, что там вам возвращает провайдер при поытке Dial через транк, по которому течёт разговор вашего коллеги, входящий, или исходящий - не важно. Провайдер по неразумению может возвращать отлуп SIP 500 - Internal server error? или SIP 488 (NOT ACCEPTED HERE). 
Теоретически должен отдавать правильно - Congextion, SIP 480 Temporarily unavailable. И это не то же самое, что (удалённый) абонент занят -
If the phone number you are calling is busy, the error code received is SIP 486.
 
			 
			
					
				Re: Очередь исходящих
				Добавлено: 07 май 2023, 17:57
				 Zavr2008
				У них на сайте висит: "Мы этого не делаем". 
А не на сайте - просто у вашего менеджера спросите. делают они)
ВАТС РТ юзают многие- так там юзвера делаете только одного для того чтобы зарегать астер там и всё, не нужно остальное никому)
 
			 
			
					
				Re: Очередь исходящих
				Добавлено: 08 май 2023, 14:17
				 AllooZef
				Ценная информация! Попробую связаться. Это, конечно, тот еще гиморой на заводе: техдиректор-гендиректор-отдел снабжения... Но оно того стоит.
До сего момента у нас TAU-8 стоит и древний аналоговый Панасоник 12-36 в который даже молния прилетала. Я 1 номер от него "отцепил", в смысле на TAU разлогинил,  и экспериментальный Астериск на 5 телефонов замутил. Всем понравилось.