### **可選函數:**
函數: BRAC_SetServerAuthPass(STRING lpPassword)
功能: 設置服務器連接認證密碼,確保SDK能正常連接到服務器。
參數: lpPassword 字符串值,表示認證密碼(大小寫敏感)
返回值:0表示成功,否則為出錯代碼
說明:為了防止未授權SDK連接服務器,在服務器配置文件(AnyChatCoreServer.ini)中可設置“SDKAuthPass”,如果該配置項被設置,當SDK連接服務器時,會將該方法所傳入的密碼加密后傳輸到服務器,服務器再比較是否合法,如果密碼不正確,則連接將被斷開。如果該配置項未被設置(配置文件默認),則無論該方法是否被調用,SDK均可正常連接到服務器。
### **必要函數**:
### **連接服務器**
函數: BRAC_Connect(STRING lpServerAddr, INT dwPort)
功能: 用于與服務器建立連接
參數:
lpServerAddr 字符串值,服務器IP地址或網站域名(URL)地址;
dwPort 整形值,服務器端口號(默認端口號為:8906);
返回值:0表示成功,否則為出錯代碼;
說明:返回值為0并不表示連接服務器成功,僅表示SDK已成功收到連接服務器的指令,如果連接成功,或是失敗,都將會通過相應的接口通知上層應用,這里是一個異步的過程。
`BRAC_Connect(GetID("ServerAddr").value, parseInt(GetID("ServerPort").value)); //連接服務器`
回調函數
~~~
// 客戶端連接服務器,bSuccess表示是否連接成功,errorcode表示出錯代碼
function OnAnyChatConnect(bSuccess, errorcode) {
}
~~~
### **登錄系統**
函數: BRAC_Login(STRING lpUserName, STRING lpPassword, INT dwParam)
功能: 登錄服務器,請求身份驗證;
參數:
lpUserName 字符串值,登錄用戶名
lpPassword 字符串值,登錄密碼
dwParam 整形值,備用參數(登錄時傳0)
返回值:0表示成功,否則為出錯代碼;
說明:
該方法可以連接系統之后立即調用,而不用關心連接系統是否成功,當SDK連接系統成功之后,如果之前調用過該方法,則SDK將會自動向服務器發出登錄系統的申請。
返回值為0并不表示登錄服務器成功,僅表示SDK已成功收到登錄服務器的指令,如果登錄成功,或是失敗,都將會通過相應的接口通知上層應用,這里是一個異步的過程。
如果服務器配置了“SDK Filter Plus”插件,則客戶端調用該方法后,將會觸發其API接口:BRFP_VerifyUser,用戶名、密碼參數將會作為參數傳遞給該API函數,由“SDK Filter Plus”完成用戶的身份驗證工作,服務器根據該API接口的返回值來判定是否通過身份驗證,詳細信息可參考文檔《AnyChat SDK Filter Plus開發指南》。
如果在服務器端使用“AnyChat Server SDK”開發了業務層服務器,則客戶端調用該方法后,將會觸發業務層服務器的回調函數“BRAS_VerifyUser_CallBack”,由業務層服務器完成用戶的身份驗證工作,服務器根據回調函數的返回值來判定是否通過身份驗證,詳細信息可參考文檔《AnyChat Server SDK 開發指南》。
函數: BRAC_LoginEx(STRING lpNickName,INT dwUserId, STRING lpStrUserId, STRING lpAppId, DWORD dwTimeStamp,STRING lpSigStr, STRING lpStrParam)
功能: 登錄擴展接口,支持集群服務平臺、視頻云平臺應用簽名登錄。
參數:
lpNickName 字符串值,用戶顯示名稱
dwUserId 整形值,用戶Id值,如果應用沒有此參數,則傳入-1
lpStrUserId 字符串值,用戶編號,如果dwUserId參數有值,則此參數值可為傳空字符串;如果dwUserId為-1,則需要傳此參數值
lpAppId 字符串值,在集群版本、視頻云平臺申請的應用Id
dwTimeStamp 整形值,簽名的時間戳,由簽名工具返回
lpSigStr 字符串值,使用應用的公鑰和私鑰進行簽名后生成的簽名字符串,如何生成簽名請參見AnyChat視頻云平臺的開發指南
lpStrParam 字符串值,預留參數,傳空字符串
返回值:0表示成功,否則為出錯代碼;
說明:
此接口用于用戶在自有的或第三方的身份驗證系統驗證通過后,根據獲取的應用公鑰和設置的私鑰數據,再調用AnyChat提供的或自己編寫的身份簽名工具對用戶進行身份簽名。在應用簽名通過后再調用此接口進行登錄;通過該接口后則不需要再由AnyChat業務服務器進行身份驗證了。
如果在系統或應用中設置了允許用戶以游客的身份進行登錄,則該接口也可以不用驗證用戶身份簽名,允許用戶登錄系統。
回調函數
~~~
// 客戶端登錄系統,dwUserId表示自己的用戶ID號,errorcode表示登錄結果:0 成功,否則為出錯代碼,參考出錯代碼定義
function OnAnyChatLoginSystem(dwUserId, errorcode) {
}
~~~
- 一、系統概述
- 1.1系統介紹
- 1.2系統特性
- 1.2.1 視頻技術
- 1.2.2 音頻技術
- 1.2.3 P2P技術
- 二、開發指南
- 2.1 客戶端SDK概述
- 2.1.1 Web
- 2.1.2 Android
- 2.1.3 iOS
- 2.1.4 Windows
- 2.1.5 Linux
- 2.1.6 Mac
- 2.2 客戶端SDK的引用及升級
- 2.3 函數調用順序
- 2.4 初始化
- 2.4.1 Web
- 2.4.2 Android
- 2.4.3 iOS
- 2.4.4 Windows
- 2.4.5 Linux
- 2.4.6 Mac
- 2.5 鏈接與登陸
- 2.5.1 Web
- 2.5.2 Android
- 2.5.3 iOS
- 2.5.4 Windows
- 2.5.5 Linux
- 2.5.6 Mac
- 2.6 進入房間
- 2.6.1 Web
- 2.6.2 Android
- 2.6.3 iOS
- 2.6.4 Windows
- 2.6.5 Linux
- 2.6.6 Mac
- 2.7 音視頻操作
- 2.7.1 用戶視頻控制
- 2.7.2 用戶語音控制
- 2.7.3 設置視頻顯示位置
- 2.7.4 設置指定用戶音視頻流相關參數
- 2.7.5 設置外部輸入視頻格式
- 2.7.6 外部視頻數據輸入
- 2.7.7 設置外部輸入音頻格式
- 2.7.8 外部音頻數據輸入
- 2.8 查詢狀態
- 2.8.1 查詢攝像頭的狀態
- 2.8.2 查詢用戶音頻設備采集狀態
- 2.8.3 查詢用戶昵稱
- 2.8.4 查詢用戶狀態
- 2.9 普通功能
- 2.9.1 獲取SDK版本信息
- 2.9.2 獲取當前房間在線用戶列表
- 2.9.3 獲取指定房間在線用戶列表
- 2.9.4 傳送文本消息
- 2.9.5 透明通道傳送緩沖區
- 2.9.6 傳送文件
- 2.9.7 查詢傳輸任務相關信息
- 2.9.8 取消傳輸任務
- 2.9.9 發送SDK Filter通信數據
- 2.9.10 音視頻錄制
- 2.9.11 圖像抓拍(拍照)
- 2.9.12 組播功能控制
- 2.9.13 虛擬背景
- 2.10 離開房間
- 2.11 注銷系統
- 2.12 系統設置
- 2.12.1 枚舉本地采集設備
- 2.12.2 選擇指定采集設備
- 2.12.3 獲取當前采集設備
- 2.12.4 獲取音頻設備當前音量
- 2.12.5 設置指定音頻設備音量
- 2.12.6 查詢SDK內核參數
- 2.12.7 SDK內核參數設置
- 2.13 媒體播放
- 2.13.1 流媒體播放初始化
- 2.13.2 流媒體播放控制
- 2.13.3 設置流媒體播放視頻顯示位置
- 2.13.4 流媒體播放獲取參數信息
- 2.13.5 流媒體播放釋放資源
- 三、參數設置與說明
- 3.1 基礎視頻概念
- 3.1.1 分辨率與碼率
- 3.1.2 幀率
- 3.1.3 H.264編解碼
- 3.1.4 分辨率、幀率、碼率之間的關系
- 3.2 基礎音頻概念
- 3.2.1 音頻采樣率及大小
- 3.2.2 音頻聲道
- 3.2.3 AAC編解碼
- 3.3 視頻質量調優
- 3.4 視頻通話對帶寬的需求
- 3.4.1 帶寬的影響因素
- 3.4.2 視頻場景的帶寬要求
- 四、音視頻交互示例代碼
- 4.1 修改視頻參數
- 4.2 如何自動打開對方的視頻
- 4.3 打開多路音視頻
- 五、常見問題
- 1、視頻模糊有馬賽克
- 2、視頻卡頓
- 3、攝像頭亮燈但本地視頻無顯示
- 4、雙向視頻,聽不見對方聲音
- 5、雙向視頻,看不見對方視頻
- 6、內網正常,外網無法音視頻
- 7、聲音有嘯叫和雜音
- 8、同網段正常、不同網段無法音視頻
- 9、進入房間失敗,返回錯誤代碼-1
- 10、本地視頻方向不正確
- 11、手機本地正常,Web看手機端有裁剪
- 12、雙方視頻出現綠屏、花屏
- 13、閃屏
- 14、IP攝像頭的支持
- 15、服務器日志采集自定義文件夾不生效
- 16、特殊3D攝像頭無法打開
- 17、音視頻不同步
- 18、簽名服務器部署后點登陸拋空指針異常
- 19、iOS 按HOME鍵進入后臺 聽不到 對方的聲音了,對方能聽到自己的(已開啟音頻后臺模式)