[asterisk-dev] [Code Review] Don't delay DTMF in core bridge while listening for DTMF features
Olle E Johansson
reviewboard at asterisk.org
Tue Feb 8 10:02:32 CST 2011
> On 2011-02-07 11:38:55, David Vossel wrote:
> > I understand what you are doing, and this makes sense to me. Most of my comments are coding style related, although I did have one functional concern about the use of the sendingdtmf variable. While the coding style comments may seem like I'm just nitpicking, I believe they are necessary in reducing complexity for everyone maintaining the project.
Thanks for the feedback, David! After I put this up, I found a bug where this code doesn't handle feature codes with multiple digits, something I solved by still using the ugly sendingdtmf variable... I'll check your feedback and come back.
/O
- Olle E
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1092/#review3167
-----------------------------------------------------------
On 2011-02-03 02:55:01, Olle E Johansson wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/1092/
> -----------------------------------------------------------
>
> (Updated 2011-02-03 02:55:01)
>
>
> Review request for Asterisk Developers.
>
>
> Summary
> -------
>
> When a channel listens for DTMF in the core bridge, the outbound DTMF is not sent until we have received DTMF_END. For a long DTMF, this is a disaster. We send 4 seconds of DTMF to Asterisk, asterisk starts sending after and the call is interrupted for a total of 8 secs.
>
> With this change, the DTMF_BEGIN frame is inspected and checked. If it matches a feature code, we wait for DTMF_END and activate the feature as before. If it doesn't match a feature, the frame is forwarded along with the DTMF_END without delay. By doing it this way, DTMF is not delayed.
>
> I've also changed two DTMF relay events to actually use the same duration as the incoming DTMF.
>
> I have no experience of messing around with features.c and bridges, so please review this carefully. It is proven to work both in a 1.6.0 version and 1.4.
>
> (I will remove the red code... Hard to miss)
>
>
> This addresses bug 18738.
> https://issues.asterisk.org/view.php?id=18738
>
>
> Diffs
> -----
>
> /team/oej/pinesounds-dtmf-feature-delay-1.4/res/res_features.c 305981
>
> Diff: https://reviewboard.asterisk.org/r/1092/diff
>
>
> Testing
> -------
>
> Testing done with multiple phones in 1.6.0 and 1.4 versions of this patch.
>
>
> Thanks,
>
> Olle E
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20110208/26082ce2/attachment.htm>
More information about the asterisk-dev
mailing list