summaryrefslogtreecommitdiff
path: root/main/channel.c
diff options
context:
space:
mode:
authorDavid M. Lee <dlee@digium.com>2013-08-06 14:44:45 +0000
committerDavid M. Lee <dlee@digium.com>2013-08-06 14:44:45 +0000
commitc79084879427750dc848834a8390bb0c8468f24b (patch)
tree2e6c4371cda2c73172642b267aa54dea469d600d /main/channel.c
parentb97d318b7bc31b47fbd4b74421e351095f05139d (diff)
ARI: Add recording controls
This patch implements the controls from ARI recordings. The controls are: * DELETE /recordings/live/{recordingName} - stop recording and discard it * POST /recordings/live/{recordingName}/stop - stop recording * POST /recordings/live/{recordingName}/pause - pause recording * POST /recordings/live/{recordingName}/unpause - resume recording * POST /recordings/live/{recordingName}/mute - mute recording (record silence to the file) * POST /recordings/live/{recordingName}/unmute - unmute recording. Since this underlying functionality did not already exist, is was added to app.c by a set of control frames, similar to how playback control works. The pause/mute control frames are toggles, even though the ARI controls are idempotent, to be consistent with the playback control frames. (closes issue ASTERISK-22181) Review: https://reviewboard.asterisk.org/r/2697/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@396331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/channel.c')
-rw-r--r--main/channel.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/main/channel.c b/main/channel.c
index f1d98de12..8e6a4c945 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -4303,6 +4303,10 @@ static int attribute_const is_visible_indication(enum ast_control_frame_type con
case AST_CONTROL_STREAM_REVERSE:
case AST_CONTROL_STREAM_FORWARD:
case AST_CONTROL_STREAM_RESTART:
+ case AST_CONTROL_RECORD_CANCEL:
+ case AST_CONTROL_RECORD_STOP:
+ case AST_CONTROL_RECORD_SUSPEND:
+ case AST_CONTROL_RECORD_MUTE:
break;
case AST_CONTROL_INCOMPLETE:
@@ -4561,6 +4565,10 @@ int ast_indicate_data(struct ast_channel *chan, int _condition,
case AST_CONTROL_STREAM_REVERSE:
case AST_CONTROL_STREAM_FORWARD:
case AST_CONTROL_STREAM_RESTART:
+ case AST_CONTROL_RECORD_CANCEL:
+ case AST_CONTROL_RECORD_STOP:
+ case AST_CONTROL_RECORD_SUSPEND:
+ case AST_CONTROL_RECORD_MUTE:
/* Nothing left to do for these. */
res = 0;
break;