[asterisk-users] Match one OR two digit extension not working as expected without using "dangerous" _. pattern (Ast 14)
Jonathan H
lardconcepts at gmail.com
Fri Oct 14 07:55:54 CDT 2016
On 13 October 2016 at 13:18, Tony Mountifield <tony at softins.co.uk> wrote:
> exten => _X,1,NoOp(Matching single digit)
> exten => _X.,1,NoOp(Matching multiple digits)
> exten => _X!,2,SayNumber(${EXTEN})
> exten => _X!,3,Etc..
Thanks - I appreciate the idea, but it matches more than 2 digits.
But, thanks to your info, I cobbled together something that works, and
matches only 1 or 2 digits in what I think is the most compact way, by
sending a 1 digit extension to the 2 digit matcher, prefixed with a 0.
Example which works:
[extentest]
exten => s,1,Set(TIMEOUT(digit)=1)
same => n,BackGround(extension)
same => n,WaitExten(5)
exten => _X,1,Goto(0${EXTEN},1)
exten => _XZ,1,SayNumber(${EXTEN})
same => n,Goto(s,1)
exten => e,1,Goto(s,1)
***HOWEVER!!!!*** Do I need to report a bug?
Either:
A: All the documentation is wrong and ". (period) Wildcard match;
matches one or more characters" is NOT actually how Asterisk works.
or
B: The documentation is correct and Asterisk's "one of more character
matching" routine is wrong
or
C: I've completely misunderstood what "matches one of more characters" means :)
What's the consensus? Thanks!
More information about the asterisk-users
mailing list