[Dundi] Dundi contact from variable set in dialplan instead of static in dundi.conf

JR Richardson jmr.richardson at gmail.com
Fri Mar 16 12:54:29 MST 2007


Hi All,

I'm looking to set the DUNDi mappings location response within a
variable in the dial plan, instead of statically in dundi.conf?

Scenario:

The dial plan servers respond to DUNDi lookup request from
registration servers within a cluster arrangement.  In the dial plan
server I have multiple mappings, so I can send calls form registration
servers straight to a gateway, eliminating the dial plan server
re-inviting the call to the gateway:

Dundi.conf
[mappings]
priv => trunks,0,SIP,${NUMBER}@10.10.10.12,nopartial
priv2 => trunks2,0,SIP,${NUMBER}@67.97.156.13,nopartial
priv3 => trunks3,0,SIP,${NUMBER}@67.97.156.14,nopartial
trunkstnt => trunkstnt,0,SIP,111${NUMBER}@10.10.10.15,nopartial
trunkstnt2 => trunkstnt2,0,SIP,112${NUMBER}@10.10.10.16,nopartial
trunkstnt3 => trunkstnt3,0,SIP,113${NUMBER}@10.10.10.17,nopartial

notice the different ip's and such for each mapping.

extension.conf

[trunks]
exten => ­_866709XXXX,1,NoOp

[trunks2]
exten => _866710XXXX,1,NoOp

[trunks3]
exten => _866711XXXX,1,NoOp

[trunkstnt]
exten => _866712XXXX,1,NoOp

[trunkstnt2]
exten => _866713XXXX,1,NoOp

[trunkstnt3]
exten => _866714XXXX,1,NoOp

I see a performance hit with DUNDi having to lookup a number in the
last context, like 8667140001, the context are searched in order so if
you have many different mappings calls can get backed up.

Proposal:

Dundi.conf

[mappings]
priv => trunks,0,SIP,${NUMBER}@${SOMEDUNDIVARIABLE},nopartial

extensions.conf

[trunks]
exten => ­_866709XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.12)
exten => _866710XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.13)
exten => _866711XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.14)
exten => _866712XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.15)
exten => _866713XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.16)
exten => _866714XXXX,1,Set(SOMEDUNDIVARIABLE=10.10.10.17)

In this arrangement the dial plan server could scale more efficiently.
 It will not have to search through multiple mappings and would
eliminate the need to establish a call and re-invite to a gateway.
The only function performed is the dundi lookup.

Do you have any idea if this can be accomplished now?  Are there any
variables that dundi handles other than ${NUMBER}, does dundi also map
to other variables in the dial plan or will this need to be built into
dundi?

Thanks.

JR

-- 
JR Richardson
Engineering for the Masses


More information about the Dundi mailing list