互动直播SDK全局静态对象,所有方法和常量都可以从ChuangLiveEngine对象中获取。
Members
(static, readonly) ChuangUserRole :number
用户身份枚举
Properties:
Name | Type | Description |
---|---|---|
ANCHOR |
number
|
主播身份,不会收到'RoomStreamUpdate'事件 |
AUDIENCE |
number
|
观众身份 |
INTER_ACTION |
number
|
直播互动 |
Type:
-
number
Example
let role = ChuangLiveEngine.ChuangUserRole.ANCHOR;
(static, readonly) ChuangStreamMode :number
流模式:流模式只能在推流前设置,推流后只能通过设置live-pusher的mute属性值来关闭音频和视频
Properties:
Name | Type | Description |
---|---|---|
BOTH |
number
|
音视频 |
AUDIO |
number
|
纯音频 |
VIDEO |
number
|
纯视频 |
Type:
-
number
Example
let streamstat = ChuangLiveEngine.ChuangStreamMode.BOTH;
(static, readonly) ChuangRoomState :number
房间状态枚举
Properties:
Name | Type | Description |
---|---|---|
DISCONNECTED |
number
|
未登录、登录失败、退出登录、房间断开 |
CONNECTING |
number
|
连接中 |
CONNECTED |
number
|
重连成功、登录成功 |
Type:
-
number
Example
let roomState = ChuangLiveEngine.ChuangRoomState.CONNECTING //连接中
(static, readonly) ChuangEvent :string
房间事件枚举,注:这里直接使用字符串即可
Properties:
Name | Type | Description |
---|---|---|
'RoomStateUpdate' |
string
|
房间状态发生变化时触发的回调, 回调参数包含房间ID, 房间状态ChuangLiveEngine.ChuangRoomState和错误码ChuangLiveEngine.ChuangErrorCode |
'RoomStreamUpdate' |
string
|
房间流变化时触发的回调,回调参数包房间ID, 流更新类型 ChuangLiveEngine.ChuangStreamUpdateType 和流信息Array<ChuangStreamInfo>列表 |
'PublishStreamStateUpdate', |
string
|
推流的状态发生变化时触发的回调, 回调参数包含流ID、推流状态ChuangLiveEngine.ChuangPublishState和错误码ChuangLiveEngine.ChuangErrorCode |
'PlayStreamStateUpdate', |
string
|
播流的状态发生变化时触发的回调, 回调参数包含流ID、播流状态和错误码ChuangLiveEngine.ChuangErrorCode |
'sdk-error' |
string
|
内部异常,回调参数是一个number,值参考ChuangLiveEngine.ChuangErrorCode 对象 |
Type:
-
string
Example
ChuangLiveEngine.on("room-login", function (roomId) {
});
(static, readonly) ChuangErrorCode :number
错误码枚举
Properties:
Name | Type | Description |
---|---|---|
0 |
number
|
操作成功 |
10001 |
number
|
sdk未初始化,就调用非静态方法 |
10002 |
number
|
appId传空 |
10003 |
number
|
appId包含非法字符 |
50002 |
number
|
appKey传空 |
10003 |
number
|
appKey包含非法字符 |
10008 |
number
|
参数错误 |
10009 |
number
|
操作与角色不符 |
11001 |
number
|
用户ID为空 |
11002 |
number
|
用户ID过长,长度应小于256字节,最长为255字节 |
11003 |
number
|
用户ID非法 |
11004 |
number
|
房间ID为空 |
11005 |
number
|
房间ID过长,长度应小于256字节,最长为255字节 |
11006 |
number
|
房间ID非法 |
11007 |
number
|
token 校验出错,可能是token过期或者token传错 |
11008 |
number
|
token 校验失败,可能是网络异常导致校验超时 |
11009 |
number
|
登录失败,一般是AppId/AppKey错误导致 |
11010 |
number
|
由于被封禁导致登录失败 |
11011 |
number
|
其他原因导致登录失败 |
11012 |
number
|
网络原因导致与房间连接断开 |
11013 |
number
|
参数错误导致登录失败,login.ack中errcode为-202时 |
11014 |
number
|
房间重连成功 |
12001 |
number
|
流ID 为空 |
12002 |
number
|
流ID过长,长度应小于256字节,最长为255字节 |
12003 |
number
|
流ID包含非法字符 |
12007 |
number
|
流ID已经存在 |
50004 |
number
|
未登录房间或登录房间未成功,调用推流、拉流前必须登录房间成功 |
12012 |
number
|
推流ID非法,可能已经被占用,authpublish失败时回调 |
12013 |
number
|
网络原因导致推流或播流中断重连 |
12025 |
number
|
推流重连成功 |
12026 |
number
|
播流重连成功 |
100009 |
number
|
推流时已经推过主流或副流 |
100011 |
number
|
未知异常,可能是用户代码异常 |
100012 |
number
|
信令错误,状态机过程出现 |
Type:
-
number
(static, readonly) ChuangPublishState :number
推流状态枚举
Properties:
Name | Type | Description |
---|---|---|
DISCONNECTED |
number
|
未推流、推流失败、停推成功、推流断开 |
CONNECTING |
number
|
流服务器连接中 |
CONNECTED |
number
|
推流成功、推流重连成功 |
Type:
-
number
(static, readonly) ChuangPlayState :number
播流状态枚举
Properties:
Name | Type | Description |
---|---|---|
DISCONNECTED |
number
|
未播流、播流失败、停播成功、播流断开 |
CONNECTING |
number
|
服务器连接中 |
CONNECTED |
number
|
播流成功、播流重连成功 |
Type:
-
number
(static, readonly) ChuangStreamUpdateType :string
流列表更新类型
Properties:
Name | Type | Description |
---|---|---|
ADD |
string
|
有流进入 |
DELETE |
string
|
有流离开 |
Type:
-
string
Methods
(static) initEngine(appId, appKey, onFailure) → {boolean}
SDK初始化
Parameters:
Name | Type | Description |
---|---|---|
appId |
string
|
向系统申请的应用ID,必须 |
appKey |
string
|
向系统申请的应用key,必须 |
onFailure |
failCallback
|
回调:SDK初始化失败 |
Returns:
- Type:
-
boolean
是否成功
Example
ChuangLiveEngine.initEngine("your_app_id","your_app_key");
(static) uninitEngine()
SDK对象销毁
(static) setRole(role)
设置用户角色
Parameters:
Name | Type | Description |
---|---|---|
role |
ChuangLiveEngine.ChuangUserRole
|
用户角色 |
(static) on(eventType, callback)
注册SDK回调事件
Parameters:
Name | Type | Description |
---|---|---|
eventType |
ChuangLiveEngine.ChuangEvent
|
事件类型 |
callback |
function
|
回调:不同事件回调时的参数不同,请参考ChuangLiveEngine.ChuangEvent的描述 |
(static) off(eventType, callback)
注销SDK回调事件
Parameters:
Name | Type | Description |
---|---|---|
eventType |
ChuangLiveEngine.ChuangEvent
|
事件类型 |
callback |
function
|
回调:on时传入的回调,如果不传则注销这一事件所有的回调 |
(static) getPreRoomState()
获取房间初始状态
(static) getRoomConnectState() → {string}
获取房间连接状态
Returns:
- Type:
-
string
房间连接状态
(static) loginRoom(roomId, userId, userRole, onFailure)
登录房间
Parameters:
Name | Type | Description |
---|---|---|
roomId |
string
|
房间名,限制字母、数字和汉字,appid内唯一 |
userId |
string
|
用户ID,限制字母和数字,appid内唯一 |
userRole |
ChuangLiveEngine.ChuangUserRole
|
用户身份枚举 |
onFailure |
failCallback
|
回调:登录房间失败 |
(static) logoutRoom(onFailure)
登出房间
Parameters:
Name | Type | Description |
---|---|---|
onFailure |
failCallback
|
回调:登出房间失败 |
(static) newStreamConfig(streamstat) → {ChuangStreamConfig}
创建一个MediaConfig 类的示例,用于帮助配置发布流对应的媒体参数
Parameters:
Name | Type | Description |
---|---|---|
streamstat |
ChuangLiveEngine.ChuangStreamMode
|
流类型,可以设置为音视频,纯音频和纯视频流 |
Returns:
- Type:
-
ChuangStreamConfig
(static) startPublishStream(streamId, domId, streamConfig, onFailure)
播放本地流并发布
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
流ID,限制字母和数字,appid内唯一 |
domId |
string
|
页面用于承载video的html节点的id |
streamConfig |
ChuangVideoConfig
|
媒体配置参数 |
onFailure |
failCallback
|
回调:播放本地流并发布失败 |
(static) sendStartPublishSignal(streamId, onFailure)
发送推流成功信令消息
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
|
onFailure |
failCallback
|
(static) sendStartPlaySingal(streamId, onFailure)
发送播流成功信令消息
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
|
onFailure |
failCallback
|
(static) playNextConn(streamId, code, onFailure)
播流重连
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
|
code |
number
|
|
onFailure |
failCallback
|
(static) pushNextConn(streamId, code, onFailure)
推流重连
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
|
code |
number
|
|
onFailure |
failCallback
|
(static) stopPublishStream(streamId, onFailure)
结束本地流的发布
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
流ID,对应发布流的ID |
onFailure |
failCallback
|
回调:结束本地流发布失败 |
(static) startPlayStream(streamId, canvas, onFailure)
播放远端流
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
远端流的ID |
canvas |
ChuangVideoCanvas
|
用于播放的容器,包含:domId 页面用于承载video的html节点的id; options 播放器默认属性 |
onFailure |
failCallback
|
回调:播放远端流失败 |
(static) stopPlayStream(streamId, onFailure)
停止播放远端流
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
远端流的ID |
onFailure |
failCallback
|
回调:停止播放远端流失败 |
(static) statusNotification(streamId, code, params)
通知核心层事件,主要用于埋点上报
Parameters:
Name | Type | Description |
---|---|---|
streamId |
string
|
流的ID |
code |
number
|
状态码,主要为live-pusher和live-player的状态码 |
params |
ChuangStreamStatus
|
流相关参数 |
(static) getSDKVersion()
获取当前SDK的版本+打包时间