[asterisk-commits] file: trunk r226532 - in /trunk: ./ channels/ doc/tex/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu Oct 29 13:13:46 CDT 2009
Author: file
Date: Thu Oct 29 13:13:42 2009
New Revision: 226532
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=226532
Log:
Merged revisions 226531 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r226531 | file | 2009-10-29 15:11:26 -0300 (Thu, 29 Oct 2009) | 6 lines
Add an option to enabling passing music on hold start and stop requests through instead of
acting on them in chan_local.
(closes issue #14709)
Reported by: dimas
........
Modified:
trunk/ (props changed)
trunk/channels/chan_local.c
trunk/doc/tex/localchannel.tex
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Modified: trunk/channels/chan_local.c
URL: http://svnview.digium.com/svn/asterisk/trunk/channels/chan_local.c?view=diff&rev=226532&r1=226531&r2=226532
==============================================================================
--- trunk/channels/chan_local.c (original)
+++ trunk/channels/chan_local.c Thu Oct 29 13:13:42 2009
@@ -125,6 +125,7 @@
#define LOCAL_LAUNCHED_PBX (1 << 3) /*!< PBX was launched */
#define LOCAL_NO_OPTIMIZATION (1 << 4) /*!< Do not optimize using masquerading */
#define LOCAL_BRIDGE (1 << 5) /*!< Report back the "true" channel as being bridged to */
+#define LOCAL_MOH_PASSTHRU (1 << 6) /*!< Pass through music on hold start/stop frames */
static AST_LIST_HEAD_STATIC(locals, local_pvt);
@@ -412,9 +413,9 @@
return -1;
/* If this is an MOH hold or unhold, do it on the Local channel versus real channel */
- if (condition == AST_CONTROL_HOLD) {
+ if (!ast_test_flag(p, LOCAL_MOH_PASSTHRU) && condition == AST_CONTROL_HOLD) {
ast_moh_start(ast, data, NULL);
- } else if (condition == AST_CONTROL_UNHOLD) {
+ } else if (!ast_test_flag(p, LOCAL_MOH_PASSTHRU) && condition == AST_CONTROL_UNHOLD) {
ast_moh_stop(ast);
} else if (condition == AST_CONTROL_CONNECTED_LINE || condition == AST_CONTROL_REDIRECTING) {
struct ast_channel *this_channel;
@@ -759,6 +760,9 @@
if (strchr(opts, 'b')) {
ast_set_flag(tmp, LOCAL_BRIDGE);
}
+ if (strchr(opts, 'm')) {
+ ast_set_flag(tmp, LOCAL_MOH_PASSTHRU);
+ }
}
/* Look for a context */
Modified: trunk/doc/tex/localchannel.tex
URL: http://svnview.digium.com/svn/asterisk/trunk/doc/tex/localchannel.tex?view=diff&rev=226532&r1=226531&r2=226532
==============================================================================
--- trunk/doc/tex/localchannel.tex (original)
+++ trunk/doc/tex/localchannel.tex Thu Oct 29 13:13:42 2009
@@ -26,6 +26,10 @@
audio that it receives from the channel that called the local channel. This is
especially in the case of putting chan\_local in between an incoming SIP call
and Asterisk applications, so that the incoming audio will be de-jittered.
+
+Using the "m" option will cause chan_local to forward music on hold start and stop
+requests. Normally chan_local acts on them and it is started or stopped on the
+Local channel itself.
\subsection{Purpose}
More information about the asterisk-commits
mailing list