Summary:ASTERISK-13779: CallerID lost some digit
Reporter:bubbleboy (bubbleboy)Labels:
Date Opened:2009-03-19 04:36:11Date Closed:2009-09-30 13:27:57
Versions:Frequency of
Description:I use asterisk from 1.2.x to CallerID is work fine(at Taiwan)(dahdi-linux-complete-, but when I want upgrade to 1.4.23, I found my callerid always lost some digit(ex. 0123456789 become 01234789), I don't know how to fix this problem, I just know 1.4.23-rc2 is OK, but after 1.4.23-rc3.....1.4.24 have same problem.


my callerid type

Comments:By: bubbleboy (bubbleboy) 2009-03-20 02:16:59

I think problem begin this change:

2008-12-12 14:40 +0000 [r163448-163511]  Russell Bryant <russell@digium.com>

* main/channel.c, main/autoservice.c, include/asterisk/channel.h:
 Resolve issues that could cause DTMF to be processed out of
 order. These changes come from team/russell/issue_12658 1) Change
 autoservice to put digits on the head of the channel's frame
 readq instead of the tail. If there were frames on the readq that
 autoservice had not yet read, the previous code would have
 resulted in out of order processing. This required a new API call
 to queue a frame to the head of the queue instead of the tail. 2)
 Change up the processing of DTMF in ast_read(). Some of the
 problems were the result of having two sources of pending DTMF
 frames. There was the dtmfq and the more generic readq. Both were
 used for pending DTMF in various scenarios. Simplifying things to
 only use the frame readq avoids some of the problems. 3) Fix a
 bug where a DTMF END frame could get passed through when it
 shouldn't have. If code set END_DTMF_ONLY in the middle of digit
 emulation, and a digit arrived before emulation was complete,
 digits would get processed out of order. (closes issue ASTERISK-12024)
 Reported by: dimas Tested by: russell, file Review:

By: Leif Madsen (lmadsen) 2009-09-08 14:07:04

Updating this issue to say that it is a regression introduced by a commit.

By: David Brooks (dbrooks) 2009-09-30 13:27:57

We have no way to test this issue. Asterisk does not send CID information over DTMF. We would need access to a test setup.