[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