Re: [OpenSIPStack] EnumLookUp Routing Problem
Brought to you by:
joegenbaclor
From: Yogesh C. <ych...@gm...> - 2007-11-12 11:27:19
|
hi, Thanks for reply *Use a comma delimited list for your route instead of having separate route entries. The sample route below will allow you to route to enum, then to 192.168... and finally to gafachi. [sip:*] enum:**mydomain.com* <http://mydomain.com/>*, sip:**192.168.96.112*<http://192.168.96.112/> *, sip:** gafachi.com* <http://gafachi.com/> ////////////////// I have tried to do and give setting in B2BUA route as : Route_1 : [sip:*] validnumber.com, sip:sip.gafachi.com but after getting Enum Lookup fail it create a URI like SIP/SDPRequest: INVITE enum:141...@va...<141...@va...> (according to wireshark) After looking in source code i found that : In *Route.cxx *class in *FindRoute* function it do not change the SIPURI structure in case of enumlookup fail and working as : Route.cxx Line 377: it call SIPTransport::ENUMLookup(..., routeURI) function and if enumlookup fail then it set the username as Called number and do not change the rest SIPURI structure and create SIP INVITE Request as given above: *We need to find a way to call to next available route if enumLookup fail (not call fail)* So as far as i think we need to do changes in source code in both case either we want to use comma seperator in same route input box(GUI) or we want to go on next route(next route box in GUI) if enumLookup fail. For time being i have done changes in this block and add a single line to go to next route box entry to find next route search if enumlookup fail as: Route.cxx line Line: 391 if( routeURI.GetUser().IsEmpty() ) { break; // To go on next route(route_2) } I am using a bool variable here to keep track if inner loop get fail due to enumLookup fail and go to next route of outer for loop. is it break the original functionality(please add your comments) and what is the Best solution for this problem. Thanks Yogesh On 11/6/07, Yogesh Chaturvedi <ych...@gm...> wrote: > > Hi, > > I want to configure OpenSbc such as it first call using enumlookup and if > it fail then > it should call through my voip provider. > > > I have done setting in B2BUA Route section as : > > [sip:*] enum:mydomain.com \\First Preference : > > [sip:*@192.168.96.112] sip:sip.gafachi.com \\Second preference if first > get failed: > > I dial a number that is not in DNS Opensbc try to resolve this 3 time then > give response "no such name" and then > create a Invite request As: > > SIP/SDP Request: INVITE enum:141...@e1... > > > how can i achieve that in case of enumLookup fail it send request using my > voip Provider. > > Yogesh > |