Hello,
there is a solution using the branch_route[] in openser. For each branch
created after the usrloc lookup you can make different checks.
So, in the branch route you have to check the IP in the R-URI and if
matches the asterisk IP, then drop it
(
http://openser.org/dokuwiki/doku.php?id=openser_core_cookbook#drop).
There is an example how to check source and destination addresses,
although in your case you can do it even without avps:
http://www.voice-system.ro/docs/avpops/ar01s08.html#ex_org_dst
Cheers,
Daniel
On 11/15/05 17:05, Darren Nay wrote:
Hey all,
I have a question regarding usrloc. I have run into a problem..
We have static routes sent to an asterisk server for all of our SIP
usernames. In addition our IAD’s will register with the same username,
so that calls coming into our switch for that username will be routed
to both the asterisk box and the SIP IAD. This way, whichever endpoint
(IAD or asterisk) answers the call first will take the call.
For example.
root:/ # serctl ul show +18646404810
<sip:+18646404810@192.168.1.60>;q=1;expires=-1012151
<sip:+18646404810@192.168.1.157:5060>;q=;expires=403
192.168.1.60 is the asterisk server. This is a static route added by
serctl.
192.168.1.157 is my IAD which registers with the switch every 10 minutes.
So when calls are made to (864) 640-4810 then SER will send an INVITE
to both location.
I explained all of this just to explain now what my problem is, and
ask if anyone may know a possible solution.
Now, we also use asterisk to perform call fwd’ing functions. Asterisk
will answer the call and then originate another call out back to SER
to a new location. Now the problem! (finally!) This call fwd’ing
method works very well in most cases, except that if the call fwd’ing
is being sent to another location registered with SER then it will be
redirected back to asterisk again, albeit to a different URI, and
asterisk will kill the call because it thinks that it has looped
(which I guess it has… sort of).
So, I’m wondering if there is possibly a way to retrieve only the
usrloc locations that don’t contain the IP address 192.168.1.60 in the
contact URI? This way I can just check if the src_ip is 192.168.1.60
and if so then retrieve all the usrloc locations – without asterisk –
and the call will not be redirected back to asterisk.
Is this possible? Or if anyone has any other ideas that may help then
I am definitely open to suggestions.
Thanks for your help!!
Darren Nay
Ionosphere, Inc
VoIP Network Development
dnay(a)ionosphere.net <mailto:dnay@ionosphere.net>
------------------------------------------------------------------------
_______________________________________________
Users mailing list
Users(a)openser.org
http://openser.org/cgi-bin/mailman/listinfo/users