diff options
author | Matthew Jordan <mjordan@digium.com> | 2014-05-30 12:42:57 +0000 |
---|---|---|
committer | Matthew Jordan <mjordan@digium.com> | 2014-05-30 12:42:57 +0000 |
commit | 53968c00b34a913e0467200b95add483f79dd3b6 (patch) | |
tree | 3e04113a3c4eda1884205df78e9527b2c72cee6a /rest-api | |
parent | e9f09ab2bce1e1aa1b619507b45d228bbc49f12c (diff) |
TALK_DETECT: A channel function that raises events when talking is detected
This patch adds a new channel function TALK_DETECT that, when set on a
channel, causes events indicating the start/stop of talking on a channel to be
emitted to both AMI and ARI clients.
The function allows setting both the silence threshold (the length of silence
after which we decide no one is talking) as well as the talking threshold (the
amount of energy that counts as talking). Parameters can be updated on a channel
after talk detection has been enabled, and talk detection can be removed at
any time.
The events raised by the function use a nomenclature similar to existing AMI/ARI
events.
For AMI: ChannelTalkingStart/ChannelTalkingStop
For ARI: ChannelTalkingStarted/ChannelTalkingFinished
Review: https://reviewboard.asterisk.org/r/3563/
#ASTERISK-23786 #close
Reported by: Matt Jordan
........
Merged revisions 414934 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@414935 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'rest-api')
-rw-r--r-- | rest-api/api-docs/events.json | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/rest-api/api-docs/events.json b/rest-api/api-docs/events.json index 9ac948b48..a6879e858 100644 --- a/rest-api/api-docs/events.json +++ b/rest-api/api-docs/events.json @@ -159,6 +159,8 @@ "ChannelUserevent", "ChannelHangupRequest", "ChannelVarset", + "ChannelTalkingStarted", + "ChannelTalkingFinished", "EndpointStateChange", "Dial", "StasisEnd", @@ -572,6 +574,33 @@ } } }, + "ChannelTalkingStarted": { + "id": "ChannelTalkingStarted", + "description": "Talking was detected on the channel.", + "properties": { + "channel": { + "required": true, + "type": "Channel", + "description": "The channel on which talking started." + } + } + }, + "ChannelTalkingFinished": { + "id": "ChannelTalkingFinished", + "description": "Talking is no longer detected on the channel.", + "properties": { + "channel": { + "required": true, + "type": "Channel", + "description": "The channel on which talking completed." + }, + "duration": { + "required": true, + "type": "int", + "description": "The length of time, in milliseconds, that talking was detected on the channel" + } + } + }, "EndpointStateChange": { "id": "EndpointStateChange", "description": "Endpoint state changed.", |