aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java')
-rw-r--r--src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java b/src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java
index 9177176..2597e22 100644
--- a/src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java
+++ b/src/net/java/sip/communicator/service/protocol/OperationSetDesktopStreaming.java
@@ -6,13 +6,73 @@
*/
package net.java.sip.communicator.service.protocol;
+import java.text.*;
+
+import net.java.sip.communicator.service.neomedia.device.*;
+
/**
* Represents an <tt>OperationSet</tt> giving access to desktop streaming
* specific functionality.
*
* @author Sebastien Vincent
+ * @author Yana Stamcheva
*/
public interface OperationSetDesktopStreaming
extends OperationSetVideoTelephony
{
+ /**
+ * Create a new video call and invite the specified CallPeer to it.
+ *
+ * @param uri the address of the callee that we should invite to a new
+ * call.
+ * @param mediaDevice the media device to use for the desktop streaming
+ * @return CallPeer the CallPeer that will represented by the
+ * specified uri. All following state change events will be delivered
+ * through that call peer. The Call that this peer is a member
+ * of could be retrieved from the CallParticipatnt instance with the use
+ * of the corresponding method.
+ * @throws OperationFailedException with the corresponding code if we fail
+ * to create the video call.
+ * @throws ParseException if <tt>callee</tt> is not a valid address
+ * string.
+ */
+ public Call createVideoCall(String uri, MediaDevice mediaDevice)
+ throws OperationFailedException, ParseException;
+
+ /**
+ * Create a new video call and invite the specified CallPeer to it.
+ *
+ * @param callee the address of the callee that we should invite to a new
+ * call.
+ * @param mediaDevice the media device to use for the desktop streaming
+ * @return CallPeer the CallPeer that will represented by the
+ * specified uri. All following state change events will be delivered
+ * through that call peer. The Call that this peer is a member
+ * of could be retrieved from the CallParticipant instance with the use
+ * of the corresponding method.
+ * @throws OperationFailedException with the corresponding code if we fail
+ * to create the video call.
+ */
+ public Call createVideoCall(Contact callee, MediaDevice mediaDevice)
+ throws OperationFailedException;
+
+ /**
+ * Sets the indicator which determines whether the streaming of local video
+ * in a specific <tt>Call</tt> is allowed. The setting does not reflect
+ * the availability of actual video capture devices, it just expresses the
+ * desire of the user to have the local video streamed in the case the
+ * system is actually able to do so.
+ *
+ * @param call the <tt>Call</tt> to allow/disallow the streaming of local
+ * video for
+ * @param mediaDevice the media device to use for the desktop streaming
+ * @param allowed <tt>true</tt> to allow the streaming of local video for
+ * the specified <tt>Call</tt>; <tt>false</tt> to disallow it
+ *
+ * @throws OperationFailedException if initializing local video fails.
+ */
+ public void setLocalVideoAllowed( Call call,
+ MediaDevice mediaDevice,
+ boolean allowed)
+ throws OperationFailedException;
}