asterisk/bridges
Richard Mudgett 6ebfac8e70 Handle DTMF and hold wrapup when a channel leaves the bridging system.
DTMF start/end and hold/unhold events have state because a DTMF begin
event and hold event must be ended by something.

The following cases need to be handled when a channel is moved around in
the system.

* When a channel leaves a bridge it may owe a DTMF end event to the
bridge.

* When a channel leaves a bridge it may owe an UNHOLD event to the bridge.
(This case is explicitly ignored because things like transfers need
explicit control over this.)

* When a channel leaves the bridging system it may need to simulate a DTMF
end event to the channel.

* When a channel leaves the bridging system it may need to simulate an
UNHOLD event to the channel.

The patch also fixes the following:
* Fixes playing a file and restarting MOH using the latest MOH class used.

(closes issue ASTERISK-22043)
Reported by: Matt Jordan

Review: https://reviewboard.asterisk.org/r/2791/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@397577 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2013-08-23 18:33:36 +00:00
..
Makefile Title update 2012-10-14 21:56:13 +00:00
bridge_builtin_features.c Bridge API: Set a cause code on a channel when it is ejected from a bridge. 2013-08-22 21:09:52 +00:00
bridge_builtin_interval_features.c Handle DTMF and hold wrapup when a channel leaves the bridging system. 2013-08-23 18:33:36 +00:00
bridge_holding.c Minor tweaks with ast_moh_start() callers. 2013-08-22 23:15:14 +00:00
bridge_native_rtp.c bridge_native_rtp: Remove some unnecessary NULL checks on c1. 2013-08-09 21:50:08 +00:00
bridge_simple.c A great big renaming patch 2013-07-25 04:06:32 +00:00
bridge_softmix.c Resolve some BUGBUG comments. 2013-08-15 17:57:33 +00:00