Summary:ASTERISK-20906: DTMF in SIP not working after HOLD / UNHOLD
Reporter:Eelco Brolman (eelcob)Labels:
Date Opened:2013-01-08 11:06:23.000-0600Date Closed:2013-01-13 15:19:45.000-0600
Versions: Frequency of
is caused byASTERISK-18404 out-of-order RTP causes DTMF loss
Environment:Attachments:( 0) dtmf_on_hold.patch
Description:In ASTERISK-18404 a solution is found for out-of-order RTP EVENT messages, so that DTMF is detected. The solution breaks when a call is placed on HOLD, is resumed and sends DTMF. The SSRC of the RTP stream is changed, and seqno and timestamp can be completely different from the previous RTP SSRC.

The checks introduced in ASTERISK-18404 check for last_seqno and last_end_timestamp, which can be non related in case of SSRC changes.

I have created a patch as follows: when a change in SSRC is detected, the last_seqno and last_end_timestamp are reset again to 0.
Comments:By: Eelco Brolman (eelcob) 2013-01-08 11:07:33.741-0600

Patch against res/res_rtp_asterisk.c