[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "sessioncontroller" created.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Thu Jun 23 09:15:49 CDT 2011
branch "sessioncontroller" has been created
at 01f50ffc657af8c961be5461b02663d9473c7e66 (commit)
- Log -----------------------------------------------------------------
commit 01f50ffc657af8c961be5461b02663d9473c7e66
Author: Joshua Colp <jcolp at digium.com>
Date: Thu Jun 23 11:15:21 2011 -0300
Add SessionController interface, still deciding how to expose it.
diff --git a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
index 507ce1e..a167354 100644
--- a/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
+++ b/slice/AsteriskSCF/SessionCommunications/SessionCommunicationsIf.ice
@@ -141,47 +141,6 @@ module V1
};
/**
- * Stream specific indication class. Useful if a consumer only cares
- * about stream specific indications.
- */
- unsliceable class StreamIndication extends Indication
- {
- };
-
- /**
- * Indication that a session has had streams added to it.
- */
- unsliceable class StreamsAddedIndication extends StreamIndication
- {
- /**
- * Streams that have been added and their information.
- */
- AsteriskSCF::Media::V1::StreamInformationDict streams;
- };
-
- /**
- * Indication that a session has had stream information updated on it.
- */
- unsliceable class StreamsUpdatedIndication extends StreamIndication
- {
- /**
- * Streams that have been updated and their information.
- */
- AsteriskSCF::Media::V1::StreamInformationDict streams;
- };
-
- /**
- * Indication that a session has had streams removed from it.
- */
- unsliceable class StreamsRemovedIndication extends StreamIndication
- {
- /**
- * Streams that have been removed and their information.
- */
- AsteriskSCF::Media::V1::StreamInformationDict streams;
- };
-
- /**
* Telephony specific indication class. Useful if a consumer only cares
* about telephony specific indications.
*/
@@ -355,6 +314,38 @@ module V1
exception NotBridged { };
/**
+ * A SessionController interface which is used to determine if actions should be
+ * permitted to control on a session and what their result is.
+ */
+ interface SessionController
+ {
+ /**
+ * Method called when stream states change.
+ *
+ * @param streams A dictionary of streams and their new state.
+ */
+ void streamStatesChanged(AsteriskSCF::Media::V1::StreamStateDict streams);
+
+ /**
+ * Method called when streams are to be added to a session.
+ *
+ * @param streams A dictionary of streams with state and requested formats.
+ *
+ * @return StreamInformationDict A dictionary of streams actually added with state
+ * and formats.
+ */
+ AsteriskSCF::Media::V1::StreamInformationDict streamsAdd(AsteriskSCF::Media::V1::StreamInformationDict
+ streams);
+
+ /**
+ * Method called when streams are to be removed from a session.
+ *
+ * @param streams A dictionary of streams to be removed.
+ */
+ void streamsRemoved(AsteriskSCF::Media::V1::StreamInformationDict streams);
+ };
+
+ /**
* A Session object encapsulates a session oriented dialogue with a peer
* agent. Registered SessionListener objects are notified of responses from
* the peer as the dialogue progresses.
@@ -455,27 +446,6 @@ module V1
["amd"] AsteriskSCF::Media::V1::StreamInformationDict getStreams();
/**
- * Method which changes the state of streams.
- *
- * @param streams A dictionary of streams and their new state.
- */
- ["amd"] void changeStreamStates(AsteriskSCF::Media::V1::StreamStateDict streams);
-
- /**
- * Method which requests that streams be added to the session.
- *
- * @param streams A dictionary of streams and the requested formats.
- */
- void addStreams(AsteriskSCF::Media::V1::StreamInformationDict streams);
-
- /**
- * Method which requests that streams be removed from the session.
- *
- * @param streams A dictionary of streams to remove.
- */
- void removeStreams(AsteriskSCF::Media::V1::StreamInformationDict streams);
-
- /**
* Retrieve a media session instance, if available, for the current session.
* A media session object may not be available at the time this is called.
* For example, in SIP before media details are known.
-----------------------------------------------------------------------
--
asterisk-scf/integration/slice.git
More information about the asterisk-scf-commits
mailing list