Klaus Darilion wrote:
Just for curiosity - how do your customers call another customer if they are registerd at serveral proxies - do you use the replicate() feature, a special dial plan, a non caching ser or any other method?
regards, Klaus
Yes, we use replication between the RTPProxy servers. As well as replication between the standard servers. And we separate the users by numbering plan. This is something we want to move out of in the near future, thanks to "nat_uac_test". We just want to have 2 -3 servers geographically separated that can handle peer-to-peer calls as well as RTPProxy calls. Tests so far indicate this will work well for us.
Andres wrote:
Actually we are also testing "nat_uac_test". We anticipate that it will take care of most of our needs. And on our production network we have 2 SER Servers exclusively for RTPProxy running non-stop for about 7 months now. Whenever we can't make STUN or port forwarding work on a client we simply poing them to one of those 2 servers. But we plan to migrate out of that structure. It is too cumbersome. We are planning on simply integrating the "nat_uac_test" into all our servers so there won't be need for separate types.
Klaus Darilion wrote:
So you have to configure each user if he is allowed to use rtpproxy or not? And what is if the user is mobile - some times behind NAT, some times not?
regards, Klaus
Andres wrote:
Dinesh wrote:
For a REGISTER will the below be true if the UA that is registering has a 5 in the 4th digit
ie 1115999 true 1114999 false
if (uri=~"[0-9][0-9][0-9]5") I saw some where in the docs that "User name is optional (it is for example never included in REGISTER requests)"
Thanks, Dinesh
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
So I take you are simply trying to centrally manage whether a user is to be foced through the RTPProxy or not. Seems your are trying to do this with a numbering scheme which is quite cumbersom. We are testing a more flexible approach based on acl groups. We simply defined a new acl group called "rtp_proxy". On a request like REGISTER or INVITE, Ser will check if either the "From" or "To" usernames belong to the group and apply the RTPProxy. Something like:
# Check if caller is on the rtp_proxy group if (is_user_in("From", "rtp_proxy")) { setflag(2); force_rport(); fix_nated_contact(); exec_msg("echo `date` - Caller is in rtp_proxy group
- From: $SIP_HF_FROM To: $SIP_HF_TO Contact: $SIP_HF_CONTACT >>
/var/log/ser/rtp_proxy.log"); };
# Check if called user is on the rtp_proxy group if ((is_user_in("To", "rtp_proxy")) & !(isflagset(2)) { setflag(2); force_rport(); fix_nated_contact(); exec_msg("echo `date` - Called User is in rtp_proxy
group - From: $SIP_HF_FROM To: $SIP_HF_TO Contact: $SIP_HF_CONTACT
/var/log/ser/rtp_proxy.log");
};
. . . if (method=="INVITE") { if (isflagset(2)) { # rtp_proxy group ? force_rtp_proxy();
}; # /* set up reply processing */ t_on_reply("1"); };