[Asterisk-Users] Matching variable-length extensions with chan_zap in overlap dialling

Apollon Koutlides apollon at planewalk.net
Fri Apr 16 03:19:35 MST 2004


I've been having trouble matching variable extensions on a zap channel 
(an E1 line). Doing it the extensions.conf way:

[pri1]
; Match 8078078- calls
include => m807nat
include => m807mob
include => m807oth

[m807nat]
exten => _80780782XXXXXXXXX,1,StripMSD(7)
exten => _2XXXXXXXXX,1,SetVar,clidest=${EXTEN}
exten => _2XXXXXXXXX,2,Goto(cli,s,1)

[m807mob]
exten => _807807869XXXXXXXX,1,StripMSD(7)
exten => _69XXXXXXXX,1,SetVar,clidest=${EXTEN}
exten => _69XXXXXXXX,2,Goto(cli,s,1)

[m807oth]
exten => _80780780.,1,StripMSD(7)
exten => _0.,1,SetVar,clidest=${EXTEN}
exten => _0.,2,Goto(cli,s,1)

...when I dial, say, 00441565652244 * will match the first wildcard 
digit immediately:

-- Accepting call from '2108126055' to '807807800' on channel 1, span 1

I've tried using an AGI to capture the rest of the digits, but that 
didn't work either (wait for digit catches no digits), since the channel 
is not answered yet (and I don't want to do that).
DigitTimeout in extensions.conf is of no consequence either, as long as 
the call is not answered.

Looking in the bug archive I found this:

http://bugs.digium.com/bug_view_page.php?bug_id=0001422

which only perplexed me more... I tried to hack a bit of chan_zap (my 
competence in C is far below adequate) and at least managed to avoid 
matching immediately when there are more than one matches, but I got 
stuck with the timeout issues :-)

Before trying  (or rather paying somebody else with more programming 
experience) to hack the chan_zap code to fit my needs, I thought I'd 
consult the people on the list... any hints? Is there something I'm 
missing here?

Apollon Koutlides



More information about the asterisk-users mailing list