[asterisk-users] Overlap dialing via SIP
Ben Thompson
bt4 at york.ac.uk
Mon Jul 21 11:10:15 CDT 2008
Hi
I have set up an asterisk system which allows the use of Overlap Dialing from
SIP handsets. In order to do this I had to list the various patterns of numbers
which can be dialed in the UK. We also dial with a prefix of '9' for and outside
line so much of my dialplan looks like this :-
[084x]
exten => _9084XXXXXXXX,1,Macro(dialout-pstn)
[outbound-national]
exten => _90[1-2]XXXXXXXXX,1,Macro(dialout-pstn)
[087x]
exten => _9087XXXXXXXX,1,Macro(dialout-pstn)
[0906]
exten => _90906XXXXXXX,1,Macro(dialout-pstn)
...
I was able to download the mappings for 0800 numbers and other special ranges
from the ofcom website and I have incorporated these. For international dialing
I have not been able to find an easy way of doing this so I created the folling
contexts whcih make use of the WaitExten feature :-
[outbound-international]
exten => _900XXXXXXXXXX,1,Set(oldexten=${EXTEN})
exten => _900XXXXXXXXXX,2,Goto(international-number-length-check,s,1)
[international-number-length-check]
exten => s,1,Answer
exten => s,2,WaitExten(8)
exten => _X,1,Set(enddigits=${EXTEN})
exten => _X,2,NoOp(${TIMESTAMP} ok 13 digits - we dial ${oldexten}${enddigits})
exten => _X,3,Dial(${OUTBOUNDTRUNK}/${oldexten}${enddigits})
exten => _X,4,Congestion()
exten => _X,104,Busy()
exten => _XX,1,Set(enddigits=${EXTEN})
exten => _XX,2,NoOp(${TIMESTAMP} ok 14 digits - we dial ${oldexten}${enddigits})
exten => _XX,3,Dial(${OUTBOUNDTRUNK}/${oldexten}${enddigits})
exten => _XX,4,Congestion()
exten => _XX,104,Busy()
exten => _XXX,1,Set(enddigits=${EXTEN})
exten => _XXX,2,NoOp(${TIMESTAMP} ok 15 digits - we dial ${oldexten}${enddigits})
exten => _XXX,3,Dial(${OUTBOUNDTRUNK}/${oldexten}${enddigits})
exten => _XXX,4,Congestion()
exten => _XXX,104,Busy()
exten => t,1,Dial(${OUTBOUNDTRUNK}/${oldexten})
exten => t,2,Congestion()
exten => t,102,Busy()
This works fairly well but I have noticed that occasionally the WaitExten feature does
not seem to catch the first digits if they are dialed too quickly. It is almost as if
there is a some sort of delay and the thirteenth digit is sometimes missed.
Can anyone suggest why WaitExten might be ocasionally missing a digit or can anyone think
of a better way of doing this?
Thanks
Ben Thompson
More information about the asterisk-users
mailing list