Laurent Schweizer wrote:
> Hello,
>
> Any idee how to do it ?
>
>   

Hi Laurent,

this is a functionnality that should be provided by the sipctrl plug-in. 
At the moment, i did not care about it, as the other controller plugins 
(unixsock and binrpcctrl) never has this possibility.

The basic idea is to extend the timeout behavior in trans_layer.cpp and 
send some event up to the Session. This is not so trivial as any change 
in trans_layer.cpp could potentially affect a lot of other things...

-Raphael.

> Laurent
>
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> On Behalf Of Laurent Schweizer
> Sent: vendredi 4 juillet 2008 21:51
> To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: [Sems] detection of retransmission timeout
>
> Hello,
>
> I need to know how I can detect that a retransmission timeout expire,
> example: in case bellow I don't receive the ACK for the 200 OK.
>  In this case I want to detect it and terminate the call.
>
> Laurent
>
> Jul  1 12:30:54 localhost sems[5817]: Debug: (udp_trsp.cpp)(send)(244):
> send  msg --++-- SIP/2.0 200 OK^M Record-Route:
> <sip:213.218.124.169;lr=on;ftag=d0aa0b73f51f7f6f>^M Via: SIP/2.0/UDP
> 213.218.124.169;branch=z9hG4bK03cb.ab0023e5.0^M Via: SIP/2.0/UDP
> 78.8.117.103:5060;rport=5060;branch=z9hG4bK9da93dc469af7973^M From:
> <sip:[EMAIL PROTECTED]>;tag=d0aa0b73f51f7f6f^M To:
> <sip:[EMAIL PROTECTED]>;tag=75DAE75D-486A073C0000BD96-B7414B90^M
> Call-ID: [EMAIL PROTECTED] CSeq: 22197 INVITE^M
> User-Agent: SBC2^M Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
> SUBSCRIBE, NOTIFY^M Supported: replaces^M Contact:
> <sip:[EMAIL PROTECTED]:5070>^M Content-Type: application/sdp^M
> Content-Length: 311^M ^M v=0^M o=root 28673 28674 IN IP4 85.128.53.12^M
> s=session^M c=IN IP4 85.128.53.12^M t=0 0^M m=audio 48694 RTP/AVP 8 0 18
> 101^M a=rtpmap:8 PCMA/8000^M a=rtpmap:0 PCMU/8000^M a=rtpmap:18
> G729/8000^M a=fmtp:18 annexb=no^M a=rtpmap:101 telephone-event/8000^M
> a=fmtp:101 0-16^M a=silenceSupp:off - - - -^M a=ptime:20^M a=sendrecv
> Jul  1 12:30:54 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(149): New timer of type 0x90007 at
> time=774163
> Jul  1 12:30:54 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(104): Clearing old timer of type 0x80007
> Jul  1 12:30:54 localhost sems[5817]: Debug:
> (wheeltimer.cpp)(~timer)(40): timer::~timer(this=0xb6800520)
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_trans.cpp)(trans_timer_cb)(121): Transaction timer expired:
> type=0xa, trans=0xb4c04510, eta=774068, t=774068
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(104): Clearing old timer of type 0xa
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_parser.cpp)(~sip_msg)(92): ~sip_msg()
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (hash_table.cpp)(remove_trans)(400): ~sip_trans()
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (wheeltimer.cpp)(~timer)(40): timer::~timer(this=0xa41d640)
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_trans.cpp)(trans_timer_cb)(121): Transaction timer expired:
> type=0x3, trans=0xa585600, eta=774081, t=774081
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(104): Clearing old timer of type 0x3
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (sip_parser.cpp)(~sip_msg)(92): ~sip_msg()
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (hash_table.cpp)(remove_trans)(400): ~sip_trans()
> Jul  1 12:30:56 localhost sems[5817]: Debug:
> (wheeltimer.cpp)(~timer)(40): timer::~timer(this=0xb4c05b08)
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_trans.cpp)(trans_timer_cb)(121): Transaction timer expired:
> type=0x90007, trans=0xb4c070d8, eta=774163, t=774163
> Jul  1 12:30:58 localhost sems[5817]: Debug: (udp_trsp.cpp)(send)(244):
> send  msg --++-- SIP/2.0 200 OK^M Record-Route:
> <sip:213.218.124.169;lr=on;ftag=d0aa0b73f51f7f6f>^M Via: SIP/2.0/UDP
> 213.218.124.169;branch=z9hG4bK03cb.ab0023e5.0^M Via: SIP/2.0/UDP
> 78.8.117.103:5060;rport=5060;branch=z9hG4bK9da93dc469af7973^M From:
> <sip:[EMAIL PROTECTED]>;tag=d0aa0b73f51f7f6f^M To:
> <sip:[EMAIL PROTECTED]>;tag=75DAE75D-486A073C0000BD96-B7414B90^M
> Call-ID: [EMAIL PROTECTED] CSeq: 22197 INVITE^M
> User-Agent: SBC2^M Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
> SUBSCRIBE, NOTIFY^M Supported: replaces^M Contact:
> <sip:[EMAIL PROTECTED]:5070>^M Content-Type: application/sdp^M
> Content-Length: 311^M ^M v=0^M o=root 28673 28674 IN IP4 85.128.53.12^M
> s=session^M c=IN IP4 85.128.53.12^M t=0 0^M m=audio 48694 RTP/AVP 8 0 18
> 101^M a=rtpmap:8 PCMA/8000^M a=rtpmap:0 PCMU/8000^M a=rtpmap:18
> G729/8000^M a=fmtp:18 annexb=no^M a=rtpmap:101 telephone-event/8000^M
> a=fmtp:101 0-16^M a=silenceSupp:off - - - -^M a=ptime:20^M a=sendrecv
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(149): New timer of type 0xa0007 at
> time=774363
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(104): Clearing old timer of type 0x90007
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (wheeltimer.cpp)(~timer)(40): timer::~timer(this=0xb68004a8)
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_trans.cpp)(trans_timer_cb)(121): Transaction timer expired:
> type=0xb, trans=0xa584750, eta=774188, t=774188
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_trans.cpp)(reset_timer)(104): Clearing old timer of type 0xb
> Jul  1 12:30:58 localhost sems[5817]: Debug:
> (sip_parser.cpp)(~sip_msg)(92): ~sip_msg()
> _______________________________________________
> Sems mailing list
> [email protected]
> http://lists.iptel.org/mailman/listinfo/sems
> _______________________________________________
> Semsdev mailing list
> [EMAIL PROTECTED]
> http://lists.iptel.org/mailman/listinfo/semsdev
>   

_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems

Reply via email to