[asterisk-users] Any Way to Get # Functionality in DISA

Eric "ManxPower" Wieling eric at fnords.org
Fri Feb 9 11:58:50 MST 2007


Yuan LIU wrote:
>> From: Steve Murphy <murf at digium.com>
>> Date: Fri, 09 Feb 2007 07:11:50 -0700
>>
>> On Thu, 2007-02-08 at 21:48 -0800, Yuan LIU wrote:
>> > >From: "Yuan LIU" <yliu11 at hotmail.com>
>> > >Date: Thu, 08 Feb 2007 21:28:03 -0800
>> > >Not necessarily.  You only have to program your existing context to 
>> handle
>> > >trailing # when it comes along.  For example, this simplistic example
>> > >ignores trailing #'s:
>> > >
>> > >exten => _Z., 1, GotoIf($[${EXTEN:-1} = #]?${EXTEN:1},1:2)
>> > >exten => _Z., 2, whatever...
>> >
>> > Or simply add
>> >
>> > exten => _Z.[#*].,1, Goto($[${EXTEN} : \([0-9]*\)],1)
>> >
>> > to an existing context to ignore anything after first # or *.
>>
>> Nope. The "." can only be at the end. It matches all remaining chars.
>> This is not a real fancy pattern matcher. I've seen all sorts of requests
>> for a regex there, but the complexity of a regex state-machine in that
>> code is staggering!
> 
> Thanks for pointing out, Steve - just spent two sleepless hours 
> swallowing my own pill:-)  Well Asterisk has one regex engine already, 
> then that's alright.

DISA is used to emulate picking up an analog phone and dialing out.  If 
you don't want to emulate that, then use something else like Read().


More information about the asterisk-users mailing list