天天看點

基于音視訊通信産品的點對點視訊呼叫方案

業務場景

線上音視訊會議、1 對 1 視訊通話應用的場景(類似微信的視訊通話功能)下,需要實作視訊呼叫的功能。目前阿裡雲的音視訊通信産品需要通話雙方約定加入同一個頻道号才能互相通話,本文将給出一個借助消息服務實作視訊呼叫的方案。

業務流程

下圖所展示的基于消息服務(自建或雲服務)和音視訊通信 RTC 實作一次音視訊通話會議的調用流程,其中灰色部分為您的自建開發程式或AppServer服務,藍色部分是消息服務(自建或雲服務)、橙色是音視訊通信 RTC服務。

基于音視訊通信産品的點對點視訊呼叫方案

該場景中使用者 A 将邀請使用者 B 加入音視訊會議,具體流程如下所述:

  1. 終端 App 的某個使用者 A 發起呼叫請求,通過發送消息将請求傳遞到消息服務端,消息經過消息服務路由到業務方自行開發的AppServer,AppServer驗證通過後傳回本次通話使用者A和使用者B的加入頻道相關參數。
  2. 使用者A收到加入頻道相關參數後,調用RTC的用戶端接口加入音視訊通話頻道中
  3. 消息服務主動将使用者B的加入頻道相關參數發送給使用者B的用戶端
  4. 使用者B接受邀請後,通過步驟3中的入會資訊調用RTC的用戶端接口加入音視訊通話頻道中

基于上述設計思路,可以使用消息服務實作其他自定義流程,例如銷毀會議、中途拉人入會、禁言等操作。消息服務在音視訊會議場景中充當了信令傳輸的角色。

注意事項

  1. 方案中的消息服務需要業務方自行實作,或者也可以使用第三方的即時通信服務
  2. 需要保證AppServer傳回的A和B使用者的入會資訊中頻道号一樣

繼續閱讀