OMCS开发手册(02) -- 多媒体连接器
2012-05-18 17:09:41 来源:WEB开发网我们从Owner的角度详细描述了多媒体设备管理器的使用,本文我们将站在Guest的角度,描述OMCS中另一类组件/控件:多媒体连接器。多媒体连接器用于连接到任何一个在线的OMCS客户端所提供的多媒体设备。所有的连接器都是以Windows控件或组件的方式呈现的,且都实现了IMultimediaConnector接口。
一.IMultimediaConnector 接口
多媒体连接器的接口定义如下所示:
public interface IMultimediaConnector
{
/// <summary>
/// 设备主人的UserID。
/// </summary>
string OwnerID { get; }
/// <summary>
/// 与目标设备是否已连接?
/// </summary>
bool Connected { get; }
/// <summary>
/// 当调用BeginConnect连接Owner的设备时,如果Owner不在线,则等待对方上线的最长时间。如果超过这个时间,owner还没连接上来,则BeginConnect的结果仍然为TargetUserOffline。
/// 单位:秒。默认值0。
/// </summary>
int WaitOwnerOnlineSpanInSecs { get; set; }
/// <summary>
/// 目标多媒体设备的类型。
/// </summary>
MultimediaDeviceType MultimediaDeviceType { get; }
/// <summary>
/// 尝试连接目标多媒体设备。如果多媒体设备未被授权、或多媒体管理器未成功初始化、或当前连接器正在工作、或目标多媒体设备已经被连接、或上次的连接尝试还未结束,则将抛出相应的异常。
/// </summary>
/// <param name="destUserID">目标用户的UserID</param>
void BeginConnect(string destUserID);
/// <summary>
/// 当连接目标多媒体设备的尝试(由BeginConnect发起)结束时,触发此事件。事件参数说明了连接的结果。
/// </summary>
event CbGeneric<ConnectResult> ConnectEnded;
/// <summary>
/// 当与目标多媒体设备的连接断开时,触发该事件。
/// </summary>
event CbGeneric<ConnectorDisconnectedType> Disconnected;
/// <summary>
/// 与目标用户的多媒体设备断开连接,并释放通道。
/// </summary>
void Disconnect();
}
1.连接
当使用连接器对象时,通常首先是将对应的控件/组件拖到窗体上,然后调用其BeginConnect方法尝试与目标用户的多媒体设备进行连接。连接结束时,无论是成功还是失败,都会触发ConnectEnded事件。我们可以根据ConnectEnded事件参数ConnectResult得知本次连接是成功还是失败。ConnectResult枚举定义如下:
public enum ConnectResult
{
Succeed,
/// <summary>
/// 等待回复超时
/// </summary>
Timeout,
/// <summary>
/// 目标用户不在线
/// </summary>
TargetUserOffline,
/// <summary>
/// 对方拒绝
/// </summary>
Denied,
/// <summary>
/// 设备不存在或出错
/// </summary>
DeviceInvalid ,
/// <summary>
/// Owner的设备管理器还未完成初始化
/// </summary>
MultimediaManagerNotInitialized,
/// <summary>
/// 出现异常
/// </summary>
ExceptionOccured,
}
注意,如果多媒体设备未被授权、或多媒体管理器未成功初始化、或当前连接器正在工作、或目标多媒体设备已经被连接,则BeginConnect方法将抛出相应的异常。
- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››OMCS Demo -- 视频、音频、电子白板、远程桌面 ...
- ››OMCS开发手册(04) -- 二次开发流程
- ››OMCS开发手册(03) -- 多媒体服务器
- ››OMCS开发手册(02) -- 多媒体连接器
- ››OMCS开发手册(01) -- 多媒体设备管理器
- ››开发者眼中的Windows Phone和Android
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››开发一个自己的HTML在线编辑器(一)
- ››开发一个自己的HTML在线编辑器(二)
更多精彩
赞助商链接