aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/channel.h32
-rw-r--r--include/asterisk/frame.h1
2 files changed, 31 insertions, 2 deletions
diff --git a/include/asterisk/channel.h b/include/asterisk/channel.h
index 88d1748c8..11fc9b67c 100644
--- a/include/asterisk/channel.h
+++ b/include/asterisk/channel.h
@@ -647,14 +647,42 @@ enum {
};
enum {
- /*! Soft hangup by device */
+ /*!
+ * Soft hangup requested by device or other internal reason.
+ * Actual hangup needed.
+ */
AST_SOFTHANGUP_DEV = (1 << 0),
- /*! Soft hangup for async goto */
+ /*!
+ * Used to break the normal frame flow so an async goto can be
+ * done instead of actually hanging up.
+ */
AST_SOFTHANGUP_ASYNCGOTO = (1 << 1),
+ /*!
+ * Soft hangup requested by system shutdown. Actual hangup
+ * needed.
+ */
AST_SOFTHANGUP_SHUTDOWN = (1 << 2),
+ /*!
+ * Used to break the normal frame flow after a timeout so an
+ * implicit async goto can be done to the 'T' exten if it exists
+ * instead of actually hanging up. If the exten does not exist
+ * then actually hangup.
+ */
AST_SOFTHANGUP_TIMEOUT = (1 << 3),
+ /*!
+ * Soft hangup requested by application/channel-driver being
+ * unloaded. Actual hangup needed.
+ */
AST_SOFTHANGUP_APPUNLOAD = (1 << 4),
+ /*!
+ * Soft hangup requested by non-associated party. Actual hangup
+ * needed.
+ */
AST_SOFTHANGUP_EXPLICIT = (1 << 5),
+ /*!
+ * Used to break a bridge so the channel can be spied upon
+ * instead of actually hanging up.
+ */
AST_SOFTHANGUP_UNBRIDGE = (1 << 6),
};
diff --git a/include/asterisk/frame.h b/include/asterisk/frame.h
index ed9ff9665..e1270eec3 100644
--- a/include/asterisk/frame.h
+++ b/include/asterisk/frame.h
@@ -318,6 +318,7 @@ enum ast_control_frame_type {
AST_CONTROL_SRCUPDATE = 20, /*!< Indicate source of media has changed */
AST_CONTROL_T38_PARAMETERS = 24, /*!< T38 state change request/notification with parameters */
AST_CONTROL_SRCCHANGE = 25, /*!< Media source has changed and requires a new RTP SSRC */
+ AST_CONTROL_END_OF_Q = 29, /*!< Indicate that this position was the end of the channel queue for a softhangup. */
};
enum ast_control_t38 {