diff options
author | Jason Parker <jparker@digium.com> | 2013-05-24 21:21:25 +0000 |
---|---|---|
committer | Jason Parker <jparker@digium.com> | 2013-05-24 21:21:25 +0000 |
commit | 154fbf8cae866269cb2b64a5cb26cb4d435cf4df (patch) | |
tree | bdf1e07244cfee6526570c3b9357da9378981150 /channels/chan_skinny.c | |
parent | 1223199b3d18b82a931475f939170b9379e6afed (diff) |
Split Hold event into Hold/Unhold, and move it into core.
(closes issue ASTERISK-21487)
Review: https://reviewboard.asterisk.org/r/2565/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@389746 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r-- | channels/chan_skinny.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index f1398049b..89339fc8f 100644 --- a/channels/chan_skinny.c +++ b/channels/chan_skinny.c @@ -5263,7 +5263,7 @@ static int skinny_transfer(struct skinny_subchannel *sub) ast_channel_name(xferor->owner), ast_bridged_channel(xferor->owner) ? ast_channel_name(ast_bridged_channel(xferor->owner)) : ""); if (ast_bridged_channel(xferor->owner)) { - ast_queue_control(xferee->owner, AST_CONTROL_UNHOLD); + ast_queue_unhold(xferee->owner); if (ast_channel_state(xferor->owner) == AST_STATE_RING) { /* play ringing inband */ if ((ts = ast_get_indication_tone(ast_channel_zone(xferor->owner), "ring"))) { @@ -5279,7 +5279,7 @@ static int skinny_transfer(struct skinny_subchannel *sub) return -1; } } else if (ast_bridged_channel(xferee->owner)) { - ast_queue_control(xferee->owner, AST_CONTROL_UNHOLD); + ast_queue_unhold(xferee->owner); if (ast_channel_state(xferor->owner) == AST_STATE_RING) { /* play ringing inband */ if ((ts = ast_get_indication_tone(ast_channel_zone(xferor->owner), "ring"))) { @@ -5690,9 +5690,7 @@ static void setsubstate(struct skinny_subchannel *sub, int state) sub->substate = SUBSTATE_HOLD; - ast_queue_control_data(sub->owner, AST_CONTROL_HOLD, - S_OR(l->mohsuggest, NULL), - !ast_strlen_zero(l->mohsuggest) ? strlen(l->mohsuggest) + 1 : 0); + ast_queue_hold(sub->owner, l->mohsuggest); return; default: @@ -5874,7 +5872,7 @@ static void setsubstate(struct skinny_subchannel *sub, int state) transmit_callstate(d, l->instance, sub->callid, SKINNY_OFFHOOK); } if (sub->substate == SUBSTATE_HOLD) { - ast_queue_control(sub->owner, AST_CONTROL_UNHOLD); + ast_queue_unhold(sub->owner); transmit_connect(d, sub); } transmit_ringer_mode(d, SKINNY_RING_OFF); @@ -5952,9 +5950,7 @@ static void setsubstate(struct skinny_subchannel *sub, int state) ast_log(LOG_WARNING, "Cannot set substate to SUBSTATE_HOLD from %s (on call-%d)\n", substate2str(sub->substate), sub->callid); return; } - ast_queue_control_data(sub->owner, AST_CONTROL_HOLD, - S_OR(l->mohsuggest, NULL), - !ast_strlen_zero(l->mohsuggest) ? strlen(l->mohsuggest) + 1 : 0); + ast_queue_hold(sub->owner, l->mohsuggest); transmit_activatecallplane(d, l); transmit_closereceivechannel(d, sub); |