Hi, Olaf!
From what I understand about forward() is that it will forward the request
to the given destination statelessly. Whereas for t_relay(), it will relay a message to the destination stated in current URI statefully. How do I get the URI to point to the other SIP server by using t_relay() as I couldn't assign any IP address for t_relay(). I managed to assign an IP address by using forward().
I tried to use both. Unfortunately, I still failed to forward the message to the another SIP server to establish the call. Is there any functions I need to use before using either those 2 functions? FYI, I will only call them when it starts to INVITE.
Thanks!
Best regards, :) Roa Yu
-----Original Message----- From: Olaf Bergmann [mailto:Olaf.Bergmann@freenet-ag.de] Sent: Tuesday, July 03, 2007 8:14 PM To: roayu Cc: serusers@lists.iptel.org Subject: Re: [Serusers] How SER communicate to other SIP server
roayu wrote:
In that case, since it's not recommended to change the TO header, is there any other ways I can make the SER to route to another SIP server without using rewritehostport()?
Yes, several. First of all, rewritehostport() does no forwarding, it just changes the domain part of the request URI (not To). Use forward() or t_relay() depending on your particular needs.
Regards, Olaf
roayu wrote:
Hi, Olaf!
From what I understand about forward() is that it will forward the request
to the given destination statelessly. Whereas for t_relay(), it will relay a message to the destination stated in current URI statefully. How do I get the URI to point to the other SIP server by using t_relay() as I couldn't assign any IP address for t_relay(). I managed to assign an IP address by using forward().
I tried to use both. Unfortunately, I still failed to forward the message to the another SIP server to establish the call. Is there any functions I need to use before using either those 2 functions? FYI, I will only call them when it starts to INVITE.
482 Loop Detected
The function you are looking for is called rewritehostport (or rewritehost, if you like). But you could also use t_relay_to_{udp,tcp} to specify a literal transport address where you want your request being routed to. http://www.iptel.org/ser/doc/search gives more information on these functions.
Regards, Olaf