设为首页 加入收藏

TOP

微软实时通信API多客户端通信实战(二)
2012-11-04 15:28:48 来源: 作者: 【 】 浏览:705
Tags:微软 实时 通信 API 客户端 实战
  处理 RTC 事件

  以下代码段显示了使用用户配置文件注册到 SIP 服务器、发送和接收出席信息和好友列表事件时需要处理的其他事件。接收到每个事件后,事件过滤器方法将使用适当的 RTC 接口处理收到的事件。

HRESULT CAVDConfDlg::OnRTCEvent(UINT message, WPARAM wParam, LPARAM lParam)
{
IDispatch * pDisp = (IDispatch *)lParam;
RTC_EVENT enEvent = (RTC_EVENT)wParam;
HRESULT hr;

// 基于 RTC_EVENT 类型,查询
// 适当的事件接口并调用辅助
// 方法来处理事件

switch ( wParam )
{
... .

case RTCE_REGISTRATION_STATE_CHANGE:
{
IRTCRegistrationStateChangeEvent * pEvent = NULL;
// 获取与当前会话关联的事件句柄。
hr = pDisp->QueryInterface( IID_IRTCSessionStateChangeEvent,
(void **)&pEvent );

if (SUCCEEDED(hr))
{
OnRTCSessionStateChangeEvent(pEvent);
SAFE_RELEASE(pEvent);
}
}
break;

case RTCE_BUDDY:
{
IRTCBuddyEvent * pEvent = NULL;
hr = pDisp->QueryInterface( IID_IRTCBuddyEvent,
(void **)&pEvent );

if (SUCCEEDED(hr))
{
OnRTCBuddyEvent(pEvent);
SAFE_RELEASE(pEvent);
}
}
break;

case RTCE_WATCHER:
{
IRTCWatcherEvent * pEvent = NULL;
hr = pDisp->QueryInterface( IID_IRTCWatcherEvent,
(void **)&pEvent );

if (SUCCEEDED(hr))
{
OnRTCWatcherEvent(pEvent);
SAFE_RELEASE(pEvent);
} }
break;
}
... .
}

  启用和检测出席信息

  使用出席信息服务,用户可以跟踪联系人的出席状态、将此状态通知给联系人、通过注册服务器(维护联系人的当前位置信息)调用好友。位置可以是计算机或电话,将来还可以是移动电话、寻呼机或手持设备。

本文图片

图 1:包含好友列表和出席状态的示例用户界面

  下图显示了在 SIP 服务器中注册客户端并启用出席信息服务的高级步骤。

本文图片

图 2:启用配置文件和出席信息服务的步骤

首页 上一页 1 2 3 4 下一页 尾页 2/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Unix和Windows跨系统通讯编程 下一篇VC++实现工具条上的标准控件动态..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: