[asterisk-gui] GUI Dial Plan - outgoing via multiple possible lines (roll-over)

Sam Snow snowsam at laurel-point.net
Wed Jul 11 10:08:29 CDT 2007


I have been trialling Asterisk hooked up to our regular PBX via three 
FXO modules in a TDM400P card. I just upgraded to 1.4.7.1 and did a svn 
update and recompile earlier today for the GUI. For the most part things 
are working just as expected. The software is great!

Using the GUI I have set up incoming rules so that when the regular PBX 
calls the TDM400P line it rings a certain extension, which is the 
exactly what I want it to do.
I am however, having one fundamental problem with how the dial plans are 
getting created and how the outgoing analog lines seem to be hard coded 
for outgoing calls:

For example, here is the default configuration (trimmed for clarity):

extensions.conf :
trunk_1 = Zap/g1
trunk_2 = Zap/g2
trunk_3 = Zap/g3

[numberplan-custom-2]
include = default
plancomment = DialPlan2
exten = _9XXXX!,1,Macro(trunkdial,${trunk_1}/w${EXTEN:0})
comment = _9XXXX!,1,outside,standard


What I would like is that if someone is using this dialplan and trunk_1 
is busy that they are allowed to dial out on trunk_2 or trunk_3. There 
seem to be several ways that this could be done:

1. Groups
2. Multiple stacked dial statements
3. ChanIsAvail

REF:
    
http://www.planetwayne.com/forums/viewtopic.php?p=293&sid=4326931f96aa17c451880729d5f5e5c5
    http://readlist.com/lists/lists.digium.com/asterisk-users/4/23788.html
    
http://forums.digium.com/viewtopic.php?p=36735&sid=e287700c6f708d06949465d3729541e5
    
http://lists.digium.com/pipermail/asterisk-users/2003-September/014173.html

None of these options seem to be available via the GUI. Am I missing 
something?
I tried several options via manual editing of the extensions.conf file 
and decided that ChanIsAvail was the easiest to implement the way things 
are currently set up. Groups might be easier, but I could not get them 
to work.

Here is what my dialplan became:
[numberplan-custom-2]
include = default
plancomment = DialPlan2
; See if line 2 is available. If not, try line 1.
exten = _9XXXX!,1,ChanIsAvail(Zap/2&Zap/3&Zap/4)
exten = _9XXXX!,2,Macro(trunkdial,${CUT(AVAILCHAN||1)}//w${EXTEN:0})
comment = _9XXXX!,1,outside,standard

The software now checks to see if ZAP/2 is available and uses it. If it 
is tied up it tries Zap3 and 4 before giving up.

Anyone have any thoughts on this? Am I doing it the correct way? Would 
this be something that would be realistic to add to the GUI so that is 
can be handled there? I took a look at 
http://svn.digium.com/svn/asterisk-gui/trunk/todo.txt and did not see 
any mention of adding this functionality.

Thanks,
Sam





More information about the asterisk-gui mailing list