TUILiveBattleManager
Function: 直播PK相关接口,此页面中的函数仅支持直播房间类型(LIVE)。
TUIRoomEngine 3.3.0 版本开始支持。
TUILiveBattleManager
函数接口 | 说明 |
发起PK请求,该接口自 v3.3.0 版本支持。 | |
取消PK请求,该接口自 v3.3.0 版本支持。 | |
接受PK请求,该接口自 v3.3.0 版本支持。 | |
拒绝PK请求,该接口自 v3.3.0 版本支持。 | |
结束PK,该接口自 v3.3.0 版本支持。 | |
TUILiveBattleManagerEvents
事件接口 | 说明 |
接收到PK开始的监听事件,该接口自 v3.3.0 版本支持。 | |
接收到PK结束的监听事件,该接口自 v3.3.0 版本支持。 | |
接收到用户加入PK的监听事件,该接口自 v3.3.0 版本支持。 | |
接收到用户退出PK的监听事件,该接口自 v3.3.0 版本支持。 | |
接收到PK分数变化的监听事件,该接口自 v3.3.0 版本支持。 | |
接收PK请求的监听事件,该接口自 v3.3.0 版本支持。 | |
接收PK请求取消的监听事件,该接口自 v3.3.0 版本支持。 | |
接收PK请求超时的监听事件,该接口自 v3.3.0 版本支持。 | |
接收PK请求接受的监听事件,该接口自 v3.3.0 版本支持。 | |
接收PK请求被拒绝的监听事件,该接口自 v3.3.0 版本支持。 |
类型定义
类型 | 说明 |
PK 配置参数 | |
PK 信息 | |
PK 用户信息 |
枚举类型定义
枚举类型 | 说明 |
PK结束原因 |
函数接口详情
requestBattle
发起 PK 请求
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const { battleId, result }= liveBattleManager.requestBattle({config: {duration: 100, needResponse: true},userIdList: ['userId1'],timeout: 10});
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 请求PK的参数。 |
options.config | 是 | - | 发起PK的配置信息。 | |
options.userIdList | Array<string> | 是 | - | 请求PK的用户列表。 |
options.timeout | number | 是 | - | PK请求的超时时间。 |
返回值:Promise<object>
cancelBattleRequest
取消 PK 请求
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const { battleId, result }= liveBattleManager.cancelBattleRequest({battleId: 'battleId',userIdList: ['userId1']});
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 取消PK请求的参数。 |
options.battleId | string | 是 | - | 取消请求PK的ID。 |
options.userIdList | Array<string> | 是 | - | 取消PK请求的用户列表。 |
返回值:Promise<void>
acceptBattle
接受 PK 请求
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const { battleId, result }= liveBattleManager.acceptBattle({battleId: 'battleId'});
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 接受PK的参数。 |
options.battleId | string | 是 | - | 接受PK的ID。 |
返回值:Promise<void>
rejectBattle
拒绝 PK 请求
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const { battleId, result }= liveBattleManager.rejectBattle({battleId: 'battleId'});
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 拒绝PK的参数。 |
options.battleId | string | 是 | - | 拒绝PK的ID。 |
返回值:Promise<void>
exitBattle
退出 PK
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const { battleId, result }= liveBattleManager.exitBattle({battleId: 'battleId'});
参数 | 类型 | 是否必填 | 默认值 | 说明 |
options | Object | 是 | - | 退出PK的参数。 |
options.battleId | string | 是 | - | 退出PK的ID。 |
返回值:Promise<void>
on
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const callback = (battleInfo) => {console.log('liveBattleManager.onBattleStarted', battleInfo);};liveBattleManager.on(TUILiveBattleManagerEvents.onBattleStarted, callback);
参数 | 类型 | 是否必填 | 默认值 | 说明 |
eventName | 是 | - | 事件名。 | |
func | (...args: any[]) => void | 是 | - | 事件处理函数。 |
off
取消 TUILiveBattleManagerEvents 事件监听。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.getLiveBattleManager();const callback = (battleInfo) => {console.log('liveBattleManager.onBattleStarted', battleInfo);};liveBattleManager.off(TUILiveBattleManagerEvents.onBattleStarted, callback);
参数 | 类型 | 是否必填 | 默认值 | 说明 |
eventName | TUILiveConnectionManagerEvents | 是 | - | 事件名。 |
func | (...args: any[]) => void | 是 | - | 事件处理函数。 |
事件接口详情
onBattleStarted
接收到PK开始的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleStarted, ({ battleInfo }) => {console.log('liveBattleManager.onBattleStarted', battleInfo);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 |
onBattleEnded
接收到PK结束的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleEnded, ({ battleInfo, reason }) => {console.log('liveBattleManager.onBattleEnded', battleInfo, reason);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK的信息。 | |
options.reason | PK结束原因。 |
onUserJoinBattle
接收到用户加入PK的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onUserJoinBattle, ({ battleId, user }) => {console.log('liveBattleManager.onUserJoinBattle', battleId, user);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleId | string | PK的ID。 |
options.user | 加入到PK的用户信息。 |
onUserExitBattle
接收到用户退出PK的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onUserExitBattle, ({ battleId, user }) => {console.log('liveBattleManager.onUserExitBattle', battleId, user);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleId | string | PK的ID。 |
options.user | 加入到PK的用户信息。 |
onBattleScoreChanged
接收到PK分数变化的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleScoreChanged, ({ battleId, battleUserList }) => {console.log('liveBattleManager.onBattleScoreChanged', battleId, battleUserList);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleId | string | PK的ID。 |
options.battleUserList | PK用户信息列表。 |
onBattleRequestReceived
接收PK请求的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleRequestReceived, ({ battleInfo, inviter, invitee }) => {console.log('liveBattleManager.onBattleRequestReceived', battleInfo, inviter, invitee);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 | |
options.inviter | 发起PK请求的用户 | |
options.invitee | 接收PK请求的用户 |
onBattleRequestCancelled
接收PK请求取消的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleRequestCancelled, ({ battleInfo, inviter, invitee }) => {console.log('liveBattleManager.onBattleRequestCancelled', battleInfo, inviter, invitee);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 | |
options.inviter | 发起PK请求的用户 | |
options.invitee | 接收PK请求的用户 |
onBattleRequestTimeout
接收PK请求超时的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleRequestTimeout, ({ battleInfo, inviter, invitee }) => {console.log('liveBattleManager.onBattleRequestTimeout', battleInfo, inviter, invitee);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 | |
options.inviter | 发起PK请求的用户 | |
options.invitee | 接收PK请求的用户 |
onBattleRequestAccept
接收PK请求接受的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleRequestAccept, ({ battleInfo, inviter, invitee }) => {console.log('liveBattleManager.onBattleRequestAccept', battleInfo, inviter, invitee);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 | |
options.inviter | 发起PK请求的用户 | |
options.invitee | 接收PK请求的用户 |
onBattleRequestReject
接收PK请求被拒绝的监听事件。
const roomEngine = new TUIRoomEngine();const liveBattleManager = roomEngine.TUILiveBattleManager();liveBattleManager.on(TUILiveBattleManagerEvents.onBattleRequestReject, ({ battleInfo, inviter, invitee }) => {console.log('liveBattleManager.onBattleRequestReject', battleInfo, inviter, invitee);});
参数 | 类型 | 说明 |
options | Object | 参数选项。 |
options.battleInfo | PK信息。 | |
options.inviter | 发起PK请求的用户 | |
options.invitee | 接收PK请求的用户 |
类型定义详情
TUIBattleConfig
属性 | 类型 | 说明 |
duration | number | PK时长。 |
needResponse | boolean | 是否需要回应,默认为false。 |
extensionInfo | string | 扩展信息,默认为‘’。 |
TUIBattleInfo
属性 | 类型 | 说明 |
fromUser | 发起PK的用户信息。 | |
toUserList | 被邀请PK的用户列表。 | |
extensionInfo | string | 扩展信息。 |
battleId | string | PK的ID。 |
needResponse | boolean | 是否需要回应 |
duration | number | PK时长 |
startTime | number | PK开始的时间戳 |
endTime | number | PK结束的时间戳 |
TUIBattleUser
属性 | 类型 | 说明 |
roomId | string | 房间ID。 |
userId | string | 用户ID。 |
userName | string | 用户名称。 |
avatarUrl | string | 用户头像URL。 |
score | number | PK分数 |
枚举定义详情
TUIBattleStoppedReason
字段 | 类型 | 说明 |
kStoppedByTimeOver | number | PK因时间结束而停止。 |
kStoppedByOtherExit | number | PK因其他用户退出而停止。 |