Hello Hero,
Thanks for your help.
May be I'm loosing something. I have changed my config as you suggested (I thing so...):
if (t_check_status("486|408")) {
revert_uri();
prefix("voicemail");
remove_hf("P-App-Name");
append_hf("P-App-Name: voicemail\r\n");
append_hf("P-App-Param: mod=box;usr= $rU;dom=sipproxy.a.com;uid=$
Kamailio sends back 200 OK to the UAC that originated the call, but it never sends the new INVITE
|Time | 192.168.3.20
| 192.168.0.167 |
| | | 192.168.0.197 |
|3,151 | INVITE SDP ( telephone-event) | |SIP From:
sip:4095@192.168.0.197 To:sip:4440@192.168.0.197
| |(5060) ------------------> (5060) | |
|3,159 | 407 Proxy Authentication Required | |SIP Status
| |(5060) <------------------ (5060) | |
|3,161 | ACK | | |SIP Request
| |(5060) ------------------> (5060) | |
|3,161 | INVITE SDP ( telephone-event) | |SIP From:
sip:4095@192.168.0.197 To:sip:4440@192.168.0.197
| |(5060) ------------------> (5060) | |
|3,174 | 100 trying -- your call is important to us | |SIP Status
| |(5060) <------------------ (5060) | |
|3,174 | | INVITE SDP ( telephone-event) |SIP Request
| | |(5060) ------------------> (5060) |
|3,176 | | 100 Trying| |SIP Status
| | |(5060) <------------------ (5060) |
|3,177 | | 486 Busy Here |SIP Status
| | |(5060) <------------------ (5060) |
|3,180 | | ACK | |SIP Request
| | |(5060) ------------------> (5060) |
|3,195 | 200 OK SDP ( telephone-event) | |SIP Status
| |(5060) <------------------ (5060) | |
|3,200 | ACK | | |SIP Request
| |(5060) ------------------> (5060) | |
|3,213 | RTP (GSM) | | |RTP Num packets:204 Duration:4.069s SSRC:0x8494958
| |(49222) ------------------> (10028) | |
|7,288 | BYE | | |SIP Request
| |(5060) ------------------> (5060) | |
|7,295 | 200 OK | | |SIP Status
| |(5060) <------------------ (5060) | |
what am I loosing?
Regards
LAA
*************
had the same issue here. you have to manually set $du=$null, else it
doesn't get reset for the failure branch.
On 7/23/13, LAA <ornitorrinco7424 at gmail.com> wrote:
> Hi all,
>
> I'm running Kamailio 3.0.0, with SEMS integration as Media Server for Voice
> mail. I'm trying to get a configuration to forward calls on busy to voice
> mail. I have followed without success some examples. I'm using
> revert_uri(), rewritehostport() and append_branch(), within failure_route.
> It seems to be modifying R-URI properly, and generating the new branch, but
> Kamailio is sending the new invite packet to the IP address of the original
> destination UAC, and not to the IP address of the voicemail, that was
> indicated in the R-URI. Here you can see the packet flow:
>
> |Time | 192.168.3.20
> | 192.168.0.167 |
> | | | 192.168.0.197 |
> |5,069 | INVITE SDP ( telephone-event)
> | |SIP From: sip:4095 at 192.168.0.197
> To:sip:4440 at 192.168.0.197
> | |(5060) ------------------> (5060) | |
> |5,071 | 407 Proxy Authentication Required
> | |SIP Status
> | |(5060) <------------------ (5060) | |
> |5,074 | ACK | | |SIP
> Request
> | |(5060) ------------------> (5060) | |
> |5,076 | INVITE SDP ( telephone-event)
> | |SIP From: sip:4095 at 192.168.0.197
> To:sip:4440 at 192.168.0.197
> | |(5060) ------------------> (5060) | |
> |5,084 | 100 trying -- your call is important to us
> | |SIP Status
> | |(5060) <------------------ (5060) | |
> |5,085 | | INVITE SDP (
> telephone-event) |SIP Request
> | | |(5060) ------------------> (5060) |
> |5,088 | | 100 Trying| |SIP
> Status
> | | |(5060) <------------------ (5060) |
> |5,088 | | 486 Busy Here |SIP
> Status
> | | |(5060) <------------------ (5060) |
> |5,091 | | ACK | |SIP
> Request
> | | |(5060) ------------------> (5060) |
> |5,101 | | INVITE SDP (
> telephone-event) |SIP Request
> | | |(5060) ------------------> (5060) |
> |5,102 | | 404 Not Found |SIP
> Status
> | | |(5060) <------------------ (5060) |
> |5,102 | | ACK | |SIP
> Request
> | | |(5060) ------------------> (5060) |
> |5,103 | 404 Not Found | |SIP
> Status
> | |(5060) <------------------ (5060) | |
> |5,106 | ACK | | |SIP
> Request
> | |(5060) ------------------> (5060) | |
>
> And the RAW capture of the INVITE message in timestamp 5,101.
>
>
>
> No. Time Source Destination Protocol
> Info
> 1235 5.100698 192.168.0.197 192.168.0.167 SIP/SDP
> Request: INVITE sip:voicemail4440 at 192.168.0.197:5080, with session
> description
>
> Frame 1235 (1151 bytes on wire, 1151 bytes captured)
> Ethernet II, Src: CadmusCo_96:31:84 (08:00:27:96:31:84), Dst:
> Micro-St_6d:77:54 (00:21:85:6d:77:54)
> Internet Protocol, Src: 192.168.0.197 (192.168.0.197), Dst: 192.168.0.167
> (192.168.0.167)
> User Datagram Protocol, Src Port: sip (5060), Dst Port: sip (5060)
> Session Initiation Protocol
> Request-Line: INVITE sip:voicemail4440 at 192.168.0.197:5080 SIP/2.0
> Method: INVITE
> Request-URI: sip:voicemail4440 at 192.168.0.197:5080
> [Resent Packet: True]
> [Suspected resend of frame: 1233]
> Message Header
> Record-Route: <sip:192.168.0.197;lr=on;nat=
> yes>
> Via: SIP/2.0/UDP 192.168.0.197;branch=z9hG4bKafce.403718a6.1
> Via: SIP/2.0/UDP
> 192.168.57.20;received=192.168.3.20;rport=5060;branch=z9hG4bK0a00030f0000003151ed60b85ec2c3de000000c8
> Content-Length: 386
> Contact: <sip:4095 at 192.168.3.20:5060>
> Call-ID: 8EAF9EC2-1DD2-11B2-B110-C84E476664B0 at 10.0.3.15
> Content-Type: application/sdp
> CSeq: 2 INVITE
> From: "4095"<sip:4095 at 192.168.0.197>;tag=121754238352072516
> Max-Forwards: 69
> To: <sip:4440 at 192.168.0.197>
> User-Agent: SJphone/1.60.299a/L (SJ Labs)
> P-App-Name: voicemail
> P-App-Param: mod=box;usr= voicemail4440;dom=sipproxy.a.com
> ;uid=voicemail4440;did=sipproxy.a.com;
> Message Body
>
> Here you can see the failure_route in my kamailio.cfg file:
>
> # Sample failure route
> failure_route[FAIL_ONE] {
> #ifdef WITH_NAT
> if (is_method("INVITE")
> && (isbflagset("6") || isflagset(5))) {
> unforce_rtp_proxy();
> }
> #endif
>
> if (t_is_canceled()) {
> exit;
> }
>
> # uncomment the following lines if you want to block client
> # redirect based on 3xx replies.
> ##if (t_check_status("3[0-9][0-9]")
> ) {
> ##t_reply("404","Not found");
> ## exit;
> ##}
>
> # uncomment the following lines if you want to redirect the failed
> # calls to a different new destination
> if (t_check_status("486|408")) {
> revert_uri();
> prefix("voicemail");
> remove_hf("P-App-Name");
> append_hf("P-App-Name: voicemail\r\n");
> append_hf("P-App-Param: mod=box;usr= $rU;dom=sipproxy.a.com
> ;uid=$rU;did=sipproxy.a.com;\r\n");
> $ru = "sip:" + $rU + "@" + "192.168.0.197:5080";
> #rewritehostport("192.168.0.197:5080");
> #append_branch("sip:4888 at 192.168.0.102");
> append_branch();
> # do not set the missed call flag again
> t_relay();
> }
> }
>
> Has anybody experienced this problem? Any help would be wellcome
>
> Best Regards
>
> LAA
>