[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "indicate" created.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Thu Apr 7 08:16:19 CDT 2011
branch "indicate" has been created
at eae5f79313d4e024b751d169b9ede161327c916e (commit)
- Log -----------------------------------------------------------------
commit eae5f79313d4e024b751d169b9ede161327c916e
Author: Joshua Colp <jcolp at digium.com>
Date: Thu Apr 7 10:18:42 2011 -0300
Add new indicate support.
diff --git a/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice b/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
index 01e9c1b..7d5131f 100644
--- a/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
+++ b/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
@@ -64,8 +64,10 @@ module V1
{
/**
* ISDN cause code @see http://tools.ietf.org/html/rfc3398
+ *
+ * Default value is normal clearing
*/
- int isdnCode;
+ int isdnCode = 34;
};
/**
@@ -112,6 +114,138 @@ module V1
};
/**
+ * Indication visitor class.
+ */
+ ["visitor"] local class IndicationVisitor
+ {
+ };
+
+ /**
+ * Basic indication class. Meant to be extended.
+ */
+ ["visitor:IndicationVisitor"] unsliceable class Indication
+ {
+ };
+
+ /**
+ * Telephony specific indication class. Useful if a consumer only cares
+ * about telephony specific indications.
+ */
+ unsliceable class TelephonyIndication extends Indication
+ {
+ };
+
+ /**
+ * Basic indication exception class. Meant to be extended.
+ */
+ unsliceable exception IndicationException
+ {
+ };
+
+ /**
+ * Indication that a session has reached a known connected state.
+ */
+ unsliceable class ConnectedIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a "flash" event has occurred on a session.
+ */
+ unsliceable class FlashedIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a session has entered a "held" state.
+ */
+ unsliceable class HeldIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a session is in a transitional state.
+ */
+ unsliceable class ProgressingIndication extends TelephonyIndication
+ {
+ /**
+ * Response code identifying the details of the ongoing progress.
+ */
+ ResponseCode response;
+ };
+
+ /**
+ * Indication that a "ring" event has occurred on a session.
+ */
+ unsliceable class RingingIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a session has completed.
+ */
+ unsliceable class StoppedIndication extends TelephonyIndication
+ {
+ /**
+ * Response code identifying the details of why the session stopped.
+ */
+ ResponseCode response;
+ };
+
+ /**
+ * Indication that a session has left the "held" state.
+ */
+ unsliceable class UnheldIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a connect message should be sent on the session.
+ */
+ unsliceable class ConnectIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a flash message should be sent on the session.
+ */
+ unsliceable class FlashIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a hold message should be sent on the session.
+ */
+ unsliceable class HoldIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that an unhold message should be sent on the session.
+ */
+ unsliceable class UnholdIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a ring message should be sent on the session.
+ */
+ unsliceable class RingIndication extends TelephonyIndication
+ {
+ };
+
+ /**
+ * Indication that a progress message should be sent on the session.
+ */
+ unsliceable class ProgressIndication extends TelephonyIndication
+ {
+ /**
+ * Response code detailing the current progress.
+ */
+ ResponseCode response;
+ };
+
+ /**
* Instances of SessionListener are used for monitoring changes in one or
* more sessions. Session objects have an addListener method that allows
* SessionListener objects to be registered with a given session. The
@@ -124,6 +258,19 @@ module V1
*/
interface SessionListener
{
+ /**
+ * Notification that some indication event has occurred on the session.
+ *
+ * @param source The session the event occurred on.
+ *
+ * @param event The indication event that has occurred.
+ *
+ * @see Session
+ *
+ * @see Indication
+ */
+ void indicated(Session* source, Indication event);
+
/**
* Notification that a session has reached a known connected state.
*
@@ -208,6 +355,19 @@ module V1
*/
SessionInfo addListener(SessionListener* listener);
+ /**
+ * Request that an indication be performed on a session.
+ *
+ * @param event The indication event to perform.
+ *
+ * @throws IndicationException if an error occurs.
+ *
+ * @see Indication
+ *
+ * @see IndicationException
+ */
+ void indicate(Indication event) throws IndicationException;
+
/**
* Method which requests that the session send a connect message.
*/
-----------------------------------------------------------------------
--
asterisk-scf/integration/slice.git
More information about the asterisk-scf-commits
mailing list