以前有篇星球提到過七牛與聲網(wǎng)
目前市面上很多采用聲網(wǎng)技術(shù)實(shí)現(xiàn)視頻聊天的APP,像:陌陌,美麗約,富聊等等
那么使用聲網(wǎng)服務(wù)是如何實(shí)現(xiàn)通話功能的了?
其實(shí)聲網(wǎng)提供的服務(wù)有很多種:
- 語音通話
- 視頻通話
- 互動直播
- 實(shí)時信令
- 實(shí)時錄制
就字面意思理解,1,2,3,5應(yīng)該都比較容易理解,有點(diǎn)懵的應(yīng)該是第4點(diǎn):實(shí)時信令
我簡單梳理下這個功能
說白了,其實(shí)信令就是一個消息通道,跟IM(實(shí)時通訊聊天)差不多,視頻通話需要呼叫對方吧,那就用到了消息通道"信令",聊天過程中發(fā)送點(diǎn)對點(diǎn)消息也會用到這個消息通道。嗯,就這么簡單
今天我們就一起嘗試集成下信令SDK(學(xué)會集成后,配合上述的視頻通話就可以做出視頻通話的APP了)
聲網(wǎng)信令SDK
特點(diǎn)
- Agora Signaling SDK 基于 TCP 協(xié)議
- 提供了穩(wěn)定可靠的消息通道,幫助你快速構(gòu)建實(shí)時場景
功能
- 點(diǎn)對點(diǎn)消息
- 頻道消息
- 獲取用戶屬性
- 獲取頻道屬性
- 獲取頻道內(nèi)用戶列表、人數(shù)回調(diào)
信令SDK集成(Android)
- 第一:下載最新的 Agora Signaling SDK 軟件包,并將其中 libs 文件夾內(nèi)的庫復(fù)制到你的項(xiàng)目文件夾里
- 第二:獲取 App ID 和 App Certificate。Agora SDK 提供了兩種鑒權(quán)機(jī)制:App ID 和 SignalingToken 。App ID 易于獲取,適用于對安全要求不高的場景。反之,SignalingToken 安全性高,更適用于對安全要求較高的生產(chǎn)環(huán)境
- 第三:計(jì)算 token,這個token主要用戶加入頻道等操作,對安全性不高的場景,也可使用APP ID
- 第四:就通過“參考鏈接5”進(jìn)行相關(guān)API編寫,主要就以下幾步:登錄信令服務(wù)器、發(fā)送或接收點(diǎn)對點(diǎn)消息、顯示點(diǎn)對點(diǎn)的聊天記錄、加入頻道、發(fā)送接收頻道消息、離開頻道、注銷信令登錄。
PS:目前最新版本2018年12月13日發(fā)布
// 我們可以通過AgoraAPIOnlySignal的getSdkVersion()方法獲取當(dāng)前使用版本號
mSignalEngine.getSdkVersion()
參考鏈接
- https://docs.agora.io/cn/Signaling/product_signaling?platform=All%20Platforms
- https://docs.agora.io/cn/Signaling/downloads
- https://www.agora.io/cn/realtimemessage/
- https://docs.agora.io/cn/Signaling/release_signaling_android?platform=Android
- https://docs.agora.io/cn/Signaling/signal_android?platform=Android