Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@sip.at.telgo.cc. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065;transport=TCP. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Hi Benko,
not sure what is the problem? isn't the redirect contact correct?? doesn't proxydomain.org points to 6x.xxx.xxx.x93 ?
if so, isn't enough to do t_relay() after get_redirects() in failure route?
regards, bogdan
Benko wrote:
Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@sip.at.telgo.cc. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065;transport=TCP. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Hello!
Thanks for the fast answer. No, proxydomain.org points to 2xx.xxx.xxx.x06 which is the openser-host, 6x.xxx.xxx.x93 is the user agent. Is the reply from the UA wrong, should it contain it's own ip as redirect-contact?
regards Christian
On Wed, 21 Feb 2007 23:15:35 +0200 Bogdan-Andrei Iancu bogdan@voice-system.ro wrote:
Hi Benko,
not sure what is the problem? isn't the redirect contact correct?? doesn't proxydomain.org points to 6x.xxx.xxx.x93 ?
if so, isn't enough to do t_relay() after get_redirects() in failure route?
regards, bogdan
Benko wrote:
Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@sip.at.telgo.cc. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065;transport=TCP. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Hi Benko,
the UAS must put in contact of 3xx exactly the address where the call should be re-routed. If the UAS want to re-receive the call but using different port/proot, it must use its IP in the host part.
regards, bogdan
Benko wrote:
Hello!
Thanks for the fast answer. No, proxydomain.org points to 2xx.xxx.xxx.x06 which is the openser-host, 6x.xxx.xxx.x93 is the user agent. Is the reply from the UA wrong, should it contain it's own ip as redirect-contact?
regards Christian
On Wed, 21 Feb 2007 23:15:35 +0200 Bogdan-Andrei Iancu bogdan@voice-system.ro wrote:
Hi Benko,
not sure what is the problem? isn't the redirect contact correct?? doesn't proxydomain.org points to 6x.xxx.xxx.x93 ?
if so, isn't enough to do t_relay() after get_redirects() in failure route?
regards, bogdan
Benko wrote:
Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@sip.at.telgo.cc. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065;transport=TCP. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Ah, ok, thanks. Your reply was faster than my second answer. Hmm, ok, this makes it even more difficult as i can't change the UAS behaviour. Thank you for your help!
Best regards Christian
On Thu, 22 Feb 2007 11:36:37 +0200 Bogdan-Andrei Iancu bogdan@voice-system.ro wrote:
Hi Benko,
the UAS must put in contact of 3xx exactly the address where the call should be re-routed. If the UAS want to re-receive the call but using different port/proot, it must use its IP in the host part.
regards, bogdan
Benko wrote:
Hello!
Thanks for the fast answer. No, proxydomain.org points to 2xx.xxx.xxx.x06 which is the openser-host, 6x.xxx.xxx.x93 is the user agent. Is the reply from the UA wrong, should it contain it's own ip as redirect-contact?
regards Christian
On Wed, 21 Feb 2007 23:15:35 +0200 Bogdan-Andrei Iancu bogdan@voice-system.ro wrote:
Hi Benko,
not sure what is the problem? isn't the redirect contact correct?? doesn't proxydomain.org points to 6x.xxx.xxx.x93 ?
if so, isn't enough to do t_relay() after get_redirects() in failure route?
regards, bogdan
Benko wrote:
Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@sip.at.telgo.cc. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065;transport=TCP. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Good Morning!
Guess my debug was a bit confusing with so many domains and ip-adresses, i'll try to explain it better:
The invite is started from a phone registered on a different openser-proxy (otherproxydomain.org), goes via this otherproxydomain.org-openser and a mgw (2xx.xxx.xxx.97, MyMediaGW1) to the test-openser (proxydomain.org, 2xx.xxx.xxx.x06) which changes the prot to tcp and sends it to the UA (6x.xxx.xxx.x93). 2xx.xxx.xxx.97 and otherproxydomain.org are not relevant actually, the interesting hosts are 2xx.xxx.xxx.x06 and 6x.xxx.xxx.x93 where the main transaction(protocol change to tcp, avp-lookups) and the "rebounce" of the "302" should happen.
I'm not sure if my understanding of how it should work is correct: The UA answers with a 302 and a CONTACT-field of "4989111111@proxydomain.org:5065" - is this the correct behaviour or should the UAs reply contain "4989111111@6x.xxx.xxx.x93:5065" in the CONTACT-field so it can be relayed without further modification? If the latter is true, i guess i'll have to modify the INVITE so the UA can answer correctly?! I'm happy with a raw guideline of how it should happen and which tools to use, i'm just not sure what is wrong in the first place.
thx Christian
On Wed, 21 Feb 2007 23:15:35 +0200 Bogdan-Andrei Iancu bogdan@voice-system.ro wrote:
Hi Benko,
not sure what is the problem? isn't the redirect contact correct?? doesn't proxydomain.org points to 6x.xxx.xxx.x93 ?
if so, isn't enough to do t_relay() after get_redirects() in failure route?
regards, bogdan
Benko wrote:
Hello!
I'm having a issue with a 302 moved temporarily from a UA i want to attach to my proxy. The UA replies to a INVITE from the proxy with a 302 MOVED TEMPORARILY and i'm using "get_redirects" from the uac_redirect-module to extract the contact. However, i don't know how to continue from there as the domain part in the redirect-contact is the hostname of the proxy but the port is 5065 and transport=TCP (see debug for details) and if i simply relay it, it would be relayed back to the proxy on the wrong port 5065.
I guess i could use the request branch pseudo variable($br) and extract the port from it(or change the domain-part to the actual domain/ip of the UA and relay it), still i don't really know how to do it.
This is the sip-trace of the relevant dialog part:
2xx.xxx.xxx.x06 is the openser-host, 6x.xxx.xxx.x93 is the useragent
###################################### #### T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] INVITE sip:4989111111@proxydomain.org SIP/2.0. Record-Route: sip:2xx.xxx.xxx.x06;transport=tcp;r2=on;lr;ftag=as784d1ec2. Record-Route: sip:2xx.xxx.xxx.x06;r2=on;lr;ftag=as784d1ec2. Via: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0. Via: SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. To: sip:4989111111@proxydomain.org. Contact:sip:089222222@21x.xxx.xxx.97. Call-ID:7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. CSeq: 102 INVITE. User-Agent: MyMediaGW1. Max-Forwards: 69. Date: Wed, 21 Feb 2007 13:02:26 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY. Content-Type: application/sdp. Content-Length: 492. . v=0. o=root 14334 14334 IN IP4 2xx.xxx.xxx.97. s=session. c=IN IP4 2xx.xxx.xxx.97. t=0 0. m=audio 10380 RTP/AVP 0 8 18 4 3 97 111 5 10 7 110 101. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:18 G729/8000. a=fmtp:18 annexb=no. a=rtpmap:4 G723/8000. a=rtpmap:3 GSM/8000. a=rtpmap:97 iLBC/8000. a=rtpmap:111 G726-32/8000. a=rtpmap:5 DVI4/8000. a=rtpmap:10 L16/8000. a=rtpmap:7 LPC/8000. a=rtpmap:110 speex/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-16. a=silenceSupp:off - - - - .
# T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 100 Trying. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x6;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 2xx.xxx.xxx.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. .
## T 6x.xxx.xxx.x93:5060 -> 2xx.xxx.xxx.x06:56669 [AP] SIP/2.0 302 Moved Temporarily. FROM: "SIPPHONE1"sip:089222222@otherproxydomain.org;tag=as784d1ec2. TO: sip:4989111111@proxydomain.org;tag=b3addacf4f. CSEQ: 102 INVITE. CALL-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. MAX-FORWARDS: 70. VIA: SIP/2.0/TCP 2xx.xxx.xxx.x06;branch=z9hG4bK96db.2c3c0006.0,SIP/2.0/UDP 213.208.4.97:5060;branch=z9hG4bK52fef574;rport=5060. CONTENT-LENGTH: 0. SERVER: RTCC/2.0.6017.0. CONTACT: sip:4989111111@proxydomain.org:5065. .
## T 2xx.xxx.xxx.x06:56669 -> 6x.xxx.xxx.x93:5060 [AP] ACK sip:4989111111@proxydomain.org SIP/2.0. Via: SIP/2.0/TCP 213.208.4.106;branch=z9hG4bK96db.2c3c0006.0. From: "SIPPHONE1" sip:089222222@otherproxydomain.org;tag=as784d1ec2. Call-ID: 7fc122590665124f347fb2d956ba4c07@otherproxydomain.org. TO:sip:4989111111@proxydomain.org;tag=b3addacf4f. CSeq: 102 ACK. User-Agent: OpenSer (1.1.0-tls (i386/linux)). Content-Length: 0. .
######################################
Either i'm lacking understanding of the openser functionalities and sip redirect in general and simply don't see how this could be accomplished easier or i guess i need to grab "sip:4989111111@proxydomain.org:5065;transport=TCP" and extract the right port and protocol from it to relay it correctly(don't know how to do that though), i'm not sure. Currently i'm using a simple t_relay("tcp:6x.xxx.xxx.x93:5065"); to get it working, but i'd like to implement it in a more generic way.
thx for all answers!
best regards christian
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users