[asterisk-commits] oej: branch group/rana-moh-sip-transfer-1.8 r390110 - /team/group/rana-moh-si...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Thu May 30 04:14:28 CDT 2013
Author: oej
Date: Thu May 30 04:14:23 2013
New Revision: 390110
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=390110
Log:
Trying to see if there's something to do about attended transfers
Modified:
team/group/rana-moh-sip-transfer-1.8/channels/chan_sip.c
Modified: team/group/rana-moh-sip-transfer-1.8/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/team/group/rana-moh-sip-transfer-1.8/channels/chan_sip.c?view=diff&rev=390110&r1=390109&r2=390110
==============================================================================
--- team/group/rana-moh-sip-transfer-1.8/channels/chan_sip.c (original)
+++ team/group/rana-moh-sip-transfer-1.8/channels/chan_sip.c Thu May 30 04:14:23 2013
@@ -23987,10 +23987,17 @@
ast_do_masquerade(target.chan1);
+
+ if (current->chan2 && target.chan2 && ast_channel_get_local_hold_state(current->chan2)) {
+ ast_debug(4, "====>> Putting channel %s on remote hold since %s was locally held\n", target.chan2->name, current->chan2->name);
+ ast_channel_put_remote_on_hold(target.chan2, target.chan2->hold_state.mohsuggest);
+ } else if (target.chan2 && current->chan2 && ast_channel_get_local_hold_state(target.chan2)) {
+ ast_debug(4, "====>> Putting channel %s on remote hold since %s was locally held\n", current->chan2->name, target.chan1->name);
+ ast_channel_put_remote_on_hold(current->chan2, current->chan2->hold_state.mohsuggest);
+ } else if (target.chan2) {
+ ast_indicate(target.chan2, AST_CONTROL_UNHOLD);
+ }
ast_indicate(target.chan1, AST_CONTROL_UNHOLD);
- if (target.chan2) {
- ast_indicate(target.chan2, AST_CONTROL_UNHOLD);
- }
if (current->chan2 && current->chan2->_state == AST_STATE_RING) {
ast_indicate(target.chan1, AST_CONTROL_RINGING);
More information about the asterisk-commits
mailing list