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

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Thu Nov 10 09:25:27 CST 2011


branch "initial_file_media_service" has been updated
       via  46af0e69c824bdd354740441115a7b93d98b926c (commit)
       via  2420b97c4fb42c680d6453a8eb9f82cb10fe47f1 (commit)
       via  0744f4f9818cc37be9103a7b839fa32bc0547df1 (commit)
      from  93bf568eda6169dafafeb1da97e6ad230f54596d (commit)

Summary of changes:
 slice/AsteriskSCF/Media/File/FileMediaIf.ice |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


- Log -----------------------------------------------------------------
commit 46af0e69c824bdd354740441115a7b93d98b926c
Merge: 2420b97 93bf568
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Nov 10 11:55:07 2011 -0330

    Fix Conflicts:
    	slice/AsteriskSCF/Media/File/FileMediaIf.ice


commit 2420b97c4fb42c680d6453a8eb9f82cb10fe47f1
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Nov 10 11:53:22 2011 -0330

    Use a more appropriate string for component constant.

diff --git a/slice/AsteriskSCF/Media/File/FileMediaIf.ice b/slice/AsteriskSCF/Media/File/FileMediaIf.ice
index 24e695d..f833ce5 100644
--- a/slice/AsteriskSCF/Media/File/FileMediaIf.ice
+++ b/slice/AsteriskSCF/Media/File/FileMediaIf.ice
@@ -26,7 +26,7 @@ module File
 module V1
 {
 
-const string ComponentCategory = "FileMediaService";
+const string ComponentCategory = "FileMediaComponent";
 const string DiscoveryCategory = "FileMediaService";
 
 /**

commit 0744f4f9818cc37be9103a7b839fa32bc0547df1
Author: Brent Eagles <beagles at digium.com>
Date:   Mon Sep 26 12:24:40 2011 -0230

    Moving this slice from the media service repo.

diff --git a/slice/AsteriskSCF/Media/File/FileMediaIf.ice b/slice/AsteriskSCF/Media/File/FileMediaIf.ice
new file mode 100644
index 0000000..24e695d
--- /dev/null
+++ b/slice/AsteriskSCF/Media/File/FileMediaIf.ice
@@ -0,0 +1,201 @@
+/*
+ * Asterisk SCF -- An open-source communications framework.
+ *
+ * Copyright (C) 2011, Digium, Inc.
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk SCF project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE.txt file
+ * at the top of the source tree.
+ */
+
+#pragma once
+#include <AsteriskSCF/Media/MediaIf.ice>
+
+module AsteriskSCF
+{
+module Media
+{
+module File
+{
+module V1
+{
+
+const string ComponentCategory = "FileMediaService";
+const string DiscoveryCategory = "FileMediaService";
+
+/**
+ *
+ * Supported operations.
+ *
+ **/
+enum FileOperations
+{
+    Playback,
+    Recording,
+    Both
+};
+
+/**
+ *
+ * Specifications for required file media specification.
+ *
+ **/
+struct FileMediaSpecification
+{
+    /**
+     * 
+     * A sequence of formats that the File Media Service is expected to accept or produce. This is not used in the
+     * same manner as RTP when the media session is allocated. A file media session creates a source or sink for
+     * each format specified.
+     *
+     **/
+    AsteriskSCF::Media::V1::FormatSeq formats;
+   
+    /**
+     * 
+     * The supported file operations.
+     *
+     */
+    FileOperations supportedOperations;
+ 
+    /**
+     * 
+     * Media catalogue identifier. Most relevant to services providing playback. May simply be a filename.
+     *
+     **/
+    string catalogID;   
+};
+
+/** 
+ *  
+ * The service discovery parameters used for locating file media sessions that support particular
+ * options.
+ *
+ **/
+unsliceable class FileMediaServiceLocator extends AsteriskSCF::Core::Discovery::V1::ServiceLocatorParams
+{
+    FileMediaSpecification mediaSpecification;
+};
+/**
+ * 
+ * Indicates that the specified file operation is not supported.
+ *
+ **/
+exception FileOperationNotAvailable
+{
+   string message;
+};
+ 
+/**
+ *
+ * Indicates that the file based session could not be allocated with the provided path.
+ *
+ **/
+exception PathNotAvailable
+{
+   string message;
+};
+ 
+/**
+ *
+ * Thrown if the specified catalog Id is not available.
+ *
+ **/
+exception UnknownCatalogID
+{
+   string catalogID;
+};
+ 
+/**
+ *
+ * The requested file session could not be allocated due to a resource being unavailable.
+ * The message data member contains a description of the error. These exceptions may be 
+ * thrown if the backing file is unavailable for some reason 
+ * (e.g. sharing violation, unavailable disk drive).
+ *
+ **/
+exception ResourceUnavailable
+{
+     string message;
+};
+
+/**
+ *
+ * A file media session that includes an accessor for a specification that should be somewhat
+ * related to the specification that was used to allocate it. It also defines a control interface
+ * for media consumption (in the case of recording) or playback.
+ *
+ **/
+interface FileSession extends AsteriskSCF::Media::V1::Session
+{
+    /**
+     *
+     * Obtain the specification for the file that backs this session.
+     *
+     */
+    FileMediaSpecification getInfo();
+
+    /**
+     * Start recording or playback on the Media Session's sinks and/or sources.
+     */
+    void start();
+    
+    /**
+     * Temporarily halt recording or playback.
+     **/
+    void pause();
+    
+    /**
+     * Resume recording and/or playback, starting at the point where pause() was called.
+     */
+    void unpause();
+    
+    /**
+     * Restart recording and/or playback at the beginning. If recording, previously 
+     * recorded data should be abandoned.
+     */
+    void restart();
+    
+    /**
+     * Halt recording and/or playback, destroy the object and release any resources 
+     * held on behalf of this object
+     */
+    void release();
+};
+ 
+/**
+ *
+ * The FileMediaService provides allocation services for File based media sessions.
+ *
+ **/
+interface FileMediaService
+{
+    /**
+     *
+     * Instantiate a file based session supporting the provided parameters.
+     *
+     **/
+    FileSession* create(FileMediaSpecification parameters) throws FileOperationNotAvailable, UnknownCatalogID, 
+        ResourceUnavailable;
+ 
+    /**
+     *
+     * Instantiate a file based session supporting the provided parameters, backed with a file residing at the
+     * specified file.
+     *
+     **/
+    FileSession* createWithPath(string path, FileMediaSpecification parameters)
+               throws FileOperationNotAvailable, UnknownCatalogID, PathNotAvailable, ResourceUnavailable;
+ 
+}; 
+    
+}; /* end of module V1 */
+}; /* end of module File */
+}; /* end of module Media */
+}; /* end of module AsteriskSCF */

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


-- 
asterisk-scf/integration/slice.git



More information about the asterisk-scf-commits mailing list