[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "directmedia" created.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Wed Jul 13 16:40:47 CDT 2011


branch "directmedia" has been created
        at  d232b0dce95d2544ee439725e4fb79f2bdf3a884 (commit)

- Log -----------------------------------------------------------------
commit d232b0dce95d2544ee439725e4fb79f2bdf3a884
Author: Joshua Colp <jcolp at digium.com>
Date:   Wed Jul 13 18:41:27 2011 -0300

    Add an interface to be made available on sessions which allows direct media connections external to Asterisk SCF to be established.

diff --git a/slice/AsteriskSCF/Media/MediaIf.ice b/slice/AsteriskSCF/Media/MediaIf.ice
index 456064d..0bcb7f6 100644
--- a/slice/AsteriskSCF/Media/MediaIf.ice
+++ b/slice/AsteriskSCF/Media/MediaIf.ice
@@ -88,6 +88,46 @@ module V1
     sequence<Frame> FrameSeq;
 
     /**
+     * Facet name for the direct media connection interface on a session.
+     */
+    const string directMediaConnectionFacet = "directmediaconnection";
+
+    /**
+     * Dictionary for establishing direct media connections. Key is the stream that is to
+     * be directly connected and sink is the sink to directly connect it to.
+     */
+    dictionary<string, StreamSink*> DirectMediaConnectionDict;
+
+    /**
+     * Interface used to establish direct media connections external to Asterisk SCF.
+     */
+    interface DirectMediaConnection
+    {
+        /**
+         * Method used to determine what streams can be directly connected.
+         *
+         * @param connections The direct connections that are to be established.
+         *
+         * @return StringSeq A sequence of streams that can be directly connected.
+         */
+        idempotent Ice::StringSeq checkDirectConnections(DirectMediaConnectionDict connections);
+
+        /**
+         * Method used to establish direct media connections external to Asterisk SCF.
+         *
+         * @param connections The direct connections that are to be established.
+         */
+        void connectStreams(DirectMediaConnectionDict connections);
+
+        /**
+         * Method used to tear down direct media connections.
+         *
+         * @param streams A sequence of streams that should no longer be directly connected.
+         */
+        void disconnectStreams(Ice::StringSeq streams);
+    };
+
+    /**
      * States that a stream can be in.
      */
     enum StreamState

-----------------------------------------------------------------------


-- 
asterisk-scf/integration/slice.git



More information about the asterisk-scf-commits mailing list