diff options
Diffstat (limited to 'src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java')
-rw-r--r-- | src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java | 68 |
1 files changed, 59 insertions, 9 deletions
diff --git a/src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java b/src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java index f2693fb..593aae0 100644 --- a/src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java +++ b/src/net/java/sip/communicator/service/protocol/media/AbstractOperationSetVideoTelephony.java @@ -8,6 +8,7 @@ package net.java.sip.communicator.service.protocol.media; import java.awt.*; import java.beans.*; +import java.text.*; import net.java.sip.communicator.service.neomedia.*; import net.java.sip.communicator.service.protocol.*; @@ -260,18 +261,67 @@ public abstract class AbstractOperationSetVideoTelephony< } /** - * Changes the current video settings for the peer with the desired - * quality settings and inform the peer to stream the video - * with those settings. + * Returns the quality control for video calls if any. + * Return null so protocols who supports it to override it. + * @param peer the peer which this control operates on. + * @return the implemented quality control. + */ + public QualityControls getQualityControls(CallPeer peer) + { + return null; + } + + /** + * Create a new video call and invite the specified CallPeer to it with + * initial video setting. * - * @param peer the peer that is sending us the video - * @param preset the desired video settings - * @throws OperationFailedException + * @param uri the address of the callee that we should invite to a new + * call. + * @param qualityPreferences the quality preset we will use establishing + * the video call, and we will expect from the other side. When establishing + * call we don't have any indications whether remote part supports quality + * presets, so this setting can be ignored. + * @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 CallParticipatn instance with the use + * of the corresponding method. + * @throws OperationFailedException with the corresponding code if we fail + * to create the video call. + * @throws java.text.ParseException if <tt>callee</tt> is not a valid sip address + * string. */ - public void setQualityPreset(CallPeer peer, - QualityPreset preset) + public Call createVideoCall(String uri, QualityPresets qualityPreferences) + throws OperationFailedException, + ParseException + { + return createVideoCall(uri); + } + + /** + * Create a new video call and invite the specified CallPeer to it with + * initial video setting. + * + * @param callee the address of the callee that we should invite to a new + * call. + * @param qualityPreferences the quality preset we will use establishing + * the video call, and we will expect from the other side. When establishing + * call we don't have any indications whether remote part supports quality + * presets, so this setting can be ignored. + * @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 CallParticipatn 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, + QualityPresets qualityPreferences) throws OperationFailedException - {} + { + return createVideoCall(callee); + } /** * Represents a <tt>VideoListener</tt> which forwards notifications to a |