Hi All.
I've got a question about handling REFER messages. Below is a REFER message that my Grandstream GXP2000 phone generated when I transferred a call to another SIP phone on the same SER proxy.
The problem is that SER did a lookup('location') and couldn't find the phone number in the subscriber table, so it routed the message to the PSTN gateway.
SER should have looked at the Refer-To header to get the actual destination of the message.
How can I get SER to handle this message correctly? Should REFER messages hit the lookup('location') function in my ser.cfg script?
NOTE: my SER proxy sits behind a Cisco 3600 so the ALG functionality has altered the IP. The message shows my SER server as IP address 10.3.0.221http://10.3.0.221
Regards, Paul
U 2005/06/01 14:22:24.073518 66.90.46.29:5060 http://66.90.46.29:5060 -> 10.3.0.221:5060 http://10.3.0.221:5060 REFER sip:4075552279@66.243.109.99:5060 SIP/2.0. Via: SIP/2.0/UDP 172.31.130.139 http://172.31.130.139 ;branch=z9hG4bK09ff837994d9e898. Route: sip:4075552279@10.3.0.221:5060;nat=yes;ftag=204ed7cd9666ebba;lr. Route: <sip:216.229.127.60:5060 http://216.229.127.60:5060;lr>. From: 3212514238 sip:3212514238@66.243.109.99:5060;tag=204ed7cd9666ebba. To: sip:4075552279@66.236.245.100;tag=EB25EC-B85. Contact: sip:3212514238@172.31.130.139. Supported: replaces. Refer-To: sip:3212814820@sip.mycompany.com. Referred-By: sip:3212514238@172.31.130.139. Call-ID: 13195134-3326638548-685571@66.243.109.99. CSeq: 51906 REFER. User-Agent: Grandstream GXP2000 1.0.1.8 http://1.0.1.8. Max-Forwards: 70. Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK. Content-Length: 0.
Hi Paul,
Just two comments:
1) the message shouldn't be RURI driven, but ROUTE driven, so it shouldn't hit location.
2) Refer-to URI shouldn't be used for routing the REFER - this header will tell to the destination user which user to contact/refer.
Regards, Marian
Java Rockx wrote:
Hi All.
I've got a question about handling REFER messages. Below is a REFER message that my Grandstream GXP2000 phone generated when I transferred a call to another SIP phone on the same SER proxy.
The problem is that SER did a lookup('location') and couldn't find the phone number in the subscriber table, so it routed the message to the PSTN gateway.
SER should have looked at the Refer-To header to get the actual destination of the message.
How can I get SER to handle this message correctly? Should REFER messages hit the lookup('location') function in my ser.cfg script?
NOTE: my SER proxy sits behind a Cisco 3600 so the ALG functionality has altered the IP. The message shows my SER server as IP address 10.3.0.221 http://10.3.0.221
Regards, Paul
U 2005/06/01 14:22:24.073518 66.90.46.29:5060 http://66.90.46.29:5060 -> 10.3.0.221:5060 http://10.3.0.221:5060 REFER sip:4075552279@66.243.109.99:5060 SIP/2.0. Via: SIP/2.0/UDP 172.31.130.139 http://172.31.130.139;branch=z9hG4bK09ff837994d9e898. Route: sip:4075552279@10.3.0.221:5060;nat=yes;ftag=204ed7cd9666ebba;lr. Route: <sip:216.229.127.60:5060 http://216.229.127.60:5060;lr>. From: 3212514238 sip:3212514238@66.243.109.99:5060;tag=204ed7cd9666ebba. To: sip:4075552279@66.236.245.100 mailto:sip:4075552279@66.236.245.100;tag=EB25EC-B85. Contact: <sip:3212514238@172.31.130.139 mailto:sip:3212514238@172.31.130.139>. Supported: replaces. Refer-To: <sip:3212814820@sip.mycompany.com mailto:sip:3212814820@sip.mycompany.com>. Referred-By: <sip:3212514238@172.31.130.139 mailto:sip:3212514238@172.31.130.139>. Call-ID: 13195134-3326638548-685571@66.243.109.99 mailto:13195134-3326638548-685571@66.243.109.99. CSeq: 51906 REFER. User-Agent: Grandstream GXP2000 1.0.1.8 http://1.0.1.8. Max-Forwards: 70. Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK. Content-Length: 0.
Great. Thanks for the info.
One more question. Since a call can be forwarded to another SIP phone or to a PSTN phone, I need to determine how to route the REFER message.
So would I basically do something like this:
route {
if (method=='REFER') {
if (!regeristered("location")) { rewritehostport("xxx.xxx.xxx.xxx"); # IP of the PSTN gateway }
t_relay(); } }
Regards, Paul
On 6/1/05, Marian Dumitru marian.dumitru@voice-sistem.ro wrote:
Hi Paul,
Just two comments:
- the message shouldn't be RURI driven, but ROUTE driven, so it
shouldn't hit location.
- Refer-to URI shouldn't be used for routing the REFER - this header
will tell to the destination user which user to contact/refer.
Regards, Marian
Java Rockx wrote:
Hi All.
I've got a question about handling REFER messages. Below is a REFER message that my Grandstream GXP2000 phone generated when I transferred a call to another SIP phone on the same SER proxy.
The problem is that SER did a lookup('location') and couldn't find the phone number in the subscriber table, so it routed the message to the PSTN gateway.
SER should have looked at the Refer-To header to get the actual destination of the message.
How can I get SER to handle this message correctly? Should REFER messages hit the lookup('location') function in my ser.cfg script?
NOTE: my SER proxy sits behind a Cisco 3600 so the ALG functionality has altered the IP. The message shows my SER server as IP address 10.3.0.221http://10.3.0.221 http://10.3.0.221
Regards, Paul
U 2005/06/01 14:22:24.073518 66.90.46.29:5060 http://66.90.46.29:5060<
-> 10.3.0.221:5060 http://10.3.0.221:5060 http://10.3.0.221:5060 REFER sip:4075552279@66.243.109.99:5060 SIP/2.0. Via: SIP/2.0/UDP 172.31.130.139 http://172.31.130.139 http://172.31.130.139;branch=z9hG4bK09ff837994d9e898. Route: <sip:4075552279@10.3.0.221
:5060;nat=yes;ftag=204ed7cd9666ebba;lr>.
Route: <sip:216.229.127.60:5060 http://216.229.127.60:5060 <
http://216.229.127.60:5060%3E;lr%3E.
From: 3212514238 <sip:3212514238@66.243.109.99
:5060>;tag=204ed7cd9666ebba.
To: sip:4075552279@66.236.245.100 mailto:sip:4075552279@66.236.245.100;tag=EB25EC-B85. Contact: <sip:3212514238@172.31.130.139 mailto:sip:3212514238@172.31.130.139>. Supported: replaces. Refer-To: <sip:3212814820@sip.mycompany.com mailto:sip:3212814820@sip.mycompany.com>. Referred-By: <sip:3212514238@172.31.130.139 mailto:sip:3212514238@172.31.130.139>. Call-ID: 13195134-3326638548-685571@66.243.109.99 mailto:13195134-3326638548-685571@66.243.109.99. CSeq: 51906 REFER. User-Agent: Grandstream GXP2000 1.0.1.8 http://1.0.1.8 <http://1.0.1.8 . Max-Forwards: 70. Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK. Content-Length: 0.
-- Voice System http://www.voice-system.ro
Proxy does not response directly to REFER request. It should relay the request to the callee UA. The callee UA than decide whether to accept the Refer-To header and initiate another INVITE with RURI set to the Refer-To header.
I haven't look into detail your SIP message but I would say it should be handled by the loose route routine. If not, check if the headers are generated correctly on your Grandstream phone.
-----Original Message----- From: serusers-bounces@lists.iptel.org [mailto:serusers-bounces@lists.iptel.org] On Behalf Of Java Rockx Sent: Thursday, 2 June 2005 5:00 AM To: marian.dumitru@voice-sistem.ro Cc: serusers Subject: Re: [Serusers] Processing REFER Messages
Great. Thanks for the info.
One more question. Since a call can be forwarded to another SIP phone or to a PSTN phone, I need to determine how to route the REFER message.
So would I basically do something like this:
route {
if (method=='REFER') { if (!regeristered("location")) { rewritehostport("xxx.xxx.xxx.xxx"); # IP of
the PSTN gateway }
t_relay(); }
}
Regards, Paul
On 6/1/05, Marian Dumitru marian.dumitru@voice-sistem.ro wrote:
Hi Paul,
Just two comments:
- the message shouldn't be RURI driven, but ROUTE driven, so it
shouldn't hit location.
- Refer-to URI shouldn't be used for routing the REFER
this header will tell to the destination user which user to contact/refer.
Regards, Marian
Java Rockx wrote:
Hi All.
I've got a question about handling REFER messages.
Below is a REFER
message that my Grandstream GXP2000 phone generated
when I transferred a
call to another SIP phone on the same SER proxy.
The problem is that SER did a lookup('location') and
couldn't find the
phone number in the subscriber table, so it routed
the message to the
PSTN gateway.
SER should have looked at the Refer-To header to get
the actual
destination of the message.
How can I get SER to handle this message correctly?
Should REFER
messages hit the lookup('location') function in my
ser.cfg script?
NOTE: my SER proxy sits behind a Cisco 3600 so the
ALG functionality has
altered the IP. The message shows my SER server as IP
address 10.3.0.221
Regards, Paul
U 2005/06/01 14:22:24.073518 66.90.46.29:5060
http://66.90.46.29:5060 http://66.90.46.29:5060
-> 10.3.0.221:5060 <http://10.3.0.221:5060 > REFER sip:4075552279@66.243.109.99:5060 SIP/2.0. Via: SIP/2.0/UDP 172.31.130.139 http://172.31.130.139;branch=z9hG4bK09ff837994d9e898. Route:
sip:4075552279@10.3.0.221:5060;nat=yes;ftag=204ed7cd9666ebba;lr.
Route: <sip:216.229.127.60:5060
<http://216.229.127.60:5060 >;lr>.
From: 3212514238
sip:3212514238@66.243.109.99:5060;tag=204ed7cd9666ebba.
To: sip:4075552279@66.236.245.100 <mailto: sip mailto:sip
:4075552279@66.236.245.100>;tag=EB25EC-B85.
Contact: <sip:3212514238@172.31.130.139 <mailto: sip:3212514238@172.31.130.139>>. Supported: replaces. Refer-To: <sip:3212814820@sip.mycompany.com mailto:sip:3212814820@sip.mycompany.com>. Referred-By: <sip:3212514238@172.31.130.139 mailto:sip:3212514238@172.31.130.139>. Call-ID: 13195134-3326638548-685571@66.243.109.99 mailto:13195134-3326638548-685571@66.243.109.99. CSeq: 51906 REFER. User-Agent: Grandstream GXP2000 1.0.1.8
http://1.0.1.8 http://1.0.1.8.
Max-Forwards: 70. Allow:
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDA TE,PRACK.
Content-Length: 0.
-- Voice System http://www.voice-system.ro