首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

Microsoft RTC API 多用戶端通訊實戰 (二):SIP 註冊與佈建啟用流程

     編輯:VC 教學

佈建物件建立與啟用

啟用 Presence 服務需建立符合裝置架構的 XML 佈建字串,包含:裝置 ID、使用者 URI/realm/帳號、用戶端資訊、ITSP 提供者、SIP 伺服器角色與支援會話類型。

關鍵程式碼流程

HRESULT CAVDConfDlg::DOSIPLogin(BSTR bXMLObj) {
    IRTCClientProvisioning* pProv = NULL;
    hr = m_pClient->QueryInterface(IID_IRTCClientProvisioning, (void**)&pProv);

    // 從 XML 建立佈建檔案
    hr = pProv->CreateProfile(bXMLObj, &pProfile);
    
    // 啟用佈建:向 SIP 伺服器註冊
    // 註冊類型:RTCRF_REGISTER_INVITE_SESSIONS | RTCRF_REGISTER_MESSAGE_SESSIONS | RTCRF_REGISTER_PRESENCE | RTCRF_REGISTER_ALL
    hr = pProfile->EnableProfile(RTCRF_REGISTER_ALL); 
    
    SAFE_RELEASE(pProv);
    return hr;
}

觀察者機制

  • 好友清單中的觀察者 (Watcher) 可查詢 Presentity 狀態、接收狀態變更通知。
  • 設定 RTCRF_REGISTER_PRESENCE 或 RTCRF_REGISTER_ALL 即告知註冊伺服器接受 SIP SUBSCRIBE,啟用觀察者功能。

圖解:啟用佈建與 Presence 服務步驟

[XML 字串] → CreateProfile → [Profile 物件] → EnableProfile(註冊旗標) → [SIP 伺服器註冊成功] → Presence 服務就緒

總結

SIP 註冊核心在於 XML 佈建描述完整通訊參數,透過 IRTCClientProvisioning 建立並啟用 Profile。註冊旗標決定啟用哪些服務 (會話邀請、即時訊息、Presence/觀察者)。掌握此流程即可整合 RTC 通訊基礎設施。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved