Hi Richard,

the branch route is executed exactly before relaying the branch, for each branch. Also see my previous email:
   http://www.openser.org/pipermail/users/2005-September/000917.html
note that issue no 2 is done now - nathelper/mediaproxy functions are allowed to be called from branch route

So, what you have to do is: in branch route check with avpops if the src_ip is same as dst_uri/ruri IP part; if not, start the media rely and set a global flag to remember this - to avoid stating it again from another branch and to process the replies correctly. If the check fails in all branches, the media relay will not be started at all.

To enhance your setup, you may use per branch flags to recall which branch required media relay and which not. If you get a 200 OK for a branch which doesn't, stop the relay.

hope that helps you....

regards,
bogdan


Richard Z wrote:

Hi,

I am trying to use t_on_branch to identify if each branch is behind
the same NAT as the caller. A branch_route is defined and check
dst_uri's address. If any one branch is behind different NAT, a flag
is set. The flag is checked later to call rtp/mediaproxy functions.
But there is a problem. It looks like the branch_route is NOT called
until a t_relay is called. That's way after the flag is checked. If
that's the case, I don't see how branch_route can help any NAT
situation.

Thanks,
Richard

_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users

Reply via email to