[asterisk-scf-commits] asterisk-scf/integration/slice.git branch "nat-traversal" updated.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Mon Jun 20 07:59:29 CDT 2011


branch "nat-traversal" has been updated
       via  adb9cffd39577fe4c31afaf06aafa3b7949e8802 (commit)
      from  20f58b092c28497dad52c9840a7d69130ac154c2 (commit)

Summary of changes:
 AsteriskSCF/Media/RTP/MediaRTPIf.ice |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)


- Log -----------------------------------------------------------------
commit adb9cffd39577fe4c31afaf06aafa3b7949e8802
Author: Brent Eagles <beagles at digium.com>
Date:   Mon Jun 20 10:27:05 2011 -0230

    Added a derived class for ICE enabled RTP transports. I vacillated on whether
    the changes belonged in Media RTP and finally decided to leave it in the
    MediaRTP slice because its more of an additional capability than a different
    type of RTP stream.

diff --git a/AsteriskSCF/Media/RTP/MediaRTPIf.ice b/AsteriskSCF/Media/RTP/MediaRTPIf.ice
index 8687f30..d59ba3e 100644
--- a/AsteriskSCF/Media/RTP/MediaRTPIf.ice
+++ b/AsteriskSCF/Media/RTP/MediaRTPIf.ice
@@ -50,6 +50,25 @@ module V1
       bool ipv6 = false;
    };
 
+    /**
+     * Extend discovery class to enable RTP over ICE negotiated media flows.
+     */
+    unsliceable class RTPOverICEServiceLocatorParams extends RTPServiceLocatorParams
+    {
+        /**
+         * Enable ICE negotiated RTP media flows. We set a default of true mostly because
+         * we assume if you looking for a component that understands this type then
+         * it probably has this feature enabled.
+         */
+        bool enableRTPOverICE = true;
+
+        /**
+         * Enable TURN server access/usage if configured. NOTE: Has no effect if enableRTPOverICE
+         * is NOT enabled. 
+         */
+        bool enableTURN = true;
+    };
+
    /**
     * Interface to an RTP stream source.
     */
@@ -153,6 +172,15 @@ module V1
    };
 
    /**
+    * This exception will be thrown by the media service if the session cannot be allocated for some
+    * reason. It shall include a descriptive message as to why the request failed.
+    */
+   exception SessionAllocationFailure
+   {
+       string message;
+   };
+
+   /**
     * Interface to an RTP media service.
     */
    interface RTPMediaService
@@ -163,8 +191,11 @@ module V1
        * @param params Parameters to configure the RTP session with.
        *
        * @return RTPSession* A proxy to the new RTP session.
+       *
+       * @throws SessionAllocationFailure if the media service is unable to allocate a session
+       * to match the provided parameters.
        */
-      RTPSession* allocate(RTPServiceLocatorParams params);
+       RTPSession* allocate(RTPServiceLocatorParams params) throws SessionAllocationFailure;
    };
 
 }; /*  end module V1 */

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


-- 
asterisk-scf/integration/slice.git



More information about the asterisk-scf-commits mailing list