summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSeán C McCord <ulexus@gmail.com>2017-10-06 21:48:48 -0400
committerSeán C McCord <ulexus@gmail.com>2017-10-11 08:23:05 -0400
commite8bde6916ab0003e6737a320074b1c6ae1516db0 (patch)
tree6e08df9a01a8d0a5bfe3792730a79cf9051d9a78 /include
parent1505c1bb09987b36c4c55d1ab6d95e57d0fede16 (diff)
ari/bridge: Add mute, dtmf suppression controls
Add bridge_features structure to bridge creation. Specifically, this implements mute and DTMF suppression, but others should be able to be easily added to the same structure. ASTERISK-27322 #close Reported by: Darren Sessions Sponsored by: AVOXI Change-Id: Id4002adfb65c9a8027ee9e1a5f477e0f01cf9d61
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/stasis_app.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/include/asterisk/stasis_app.h b/include/asterisk/stasis_app.h
index ca5c25111..8ef2bda1c 100644
--- a/include/asterisk/stasis_app.h
+++ b/include/asterisk/stasis_app.h
@@ -793,6 +793,38 @@ int stasis_app_control_remove_channel_from_bridge(
struct stasis_app_control *control, struct ast_bridge *bridge);
/*!
+ * \brief Initialize bridge features into a channel control
+ *
+ * \note Bridge features on a control are destroyed after each bridge session,
+ * so new features need to be initialized before each bridge add.
+ *
+ * \param control Control in which to store the features
+ *
+ * \return non-zero on failure
+ * \return zero on success
+ */
+int stasis_app_control_bridge_features_init(
+ struct stasis_app_control *control);
+
+/*!
+ * \brief Set whether DTMF from the channel is absorbed instead of passing through to the bridge
+ *
+ * \param control Control whose channel should have its DTMF absorbed when bridged
+ * \param absorb Whether DTMF should be absorbed (1) instead of passed through (0).
+ */
+void stasis_app_control_absorb_dtmf_in_bridge(
+ struct stasis_app_control *control, int absorb);
+
+/*!
+ * \brief Set whether audio from the channel is muted instead of passing through to the bridge
+ *
+ * \param control Control whose channel should have its audio muted when bridged
+ * \param mute Whether audio should be muted (1) instead of passed through (0).
+ */
+void stasis_app_control_mute_in_bridge(
+ struct stasis_app_control *control, int mute);
+
+/*!
* \since 12
* \brief Gets the bridge currently associated with a control object.
*