[Asterisk-Users] Pattern matching rules for least cost routing

Tilghman Lesher tilghman at mail.jeffandtilghman.com
Wed Apr 21 20:57:11 MST 2004


On 2004 Apr 20, at 17:21, Mark Elkins wrote:

> I've got two patterns I want to match on making an outgoing call...
> (one day - to do Least Cost Routing for Cell/Mobile calls)
> Firstly - I prefer '0' rather than '9' to get an outside line...
>
> Either its a call to a mobile No... (072 -or- 082 -or- 083 -or- 084)
> or its just another number to dial...
>
> I added the following... the playback just advises me which 'route' is
> being taken....  In 'extentions.conf' I have...
>
> ;Cell Phone call
> exten => _00[78][234].,1,Playback(posix-cellphone)
> exten => _00[78][234].,2,Dial(${TRUNK}:${EXTEN:${TRUNKMSD}})
>
> ;Default catch all - just dial it....
> exten => _0.,1,Playback(posix-defaultroute)
> exten => _0.,2,Dial(${TRUNK}:${EXTEN:${TRUNKMSD}})
>
> No matter what is dialled - I always go out on the 'Default' line.
> Swapping order makes no difference. If I comment out the 'default' - it
> does match the 'Cell' pattern - and works.
>
> Shouldn't the number I dial match the longest match - not the shortest
> match as it seems to be doing? Is there a way to change that logic??

Yes, and there's a way without using multiple contexts:  just make all
extensions the same length, prior to the .:

exten => _0XXXXXX.,1,Playback(posix-defaultroute)

-Tilghman




More information about the asterisk-users mailing list