全局事件说明
调用方式:
调用方式: VHALL_ZK.init完成之后, 用VHALL_ZK.$event.on方法进行使用
事件 | 功能描述 | 参数 | 备注 |
---|---|---|---|
VHALL_ZK.EVENTS.initReady | sdk初始准备完毕 | callback | VHALL_ZK.init成功之后执行 |
VHALL_ZK.EVENTS.PlayerReady | 视频播放器初始准备完毕 | callback | VHALL_ZK.$player.init成功之后执行 |
VHALL_ZK.EVENTS.DocReady | 文档初始准备完毕 | callback | VHALL_ZK.$doc.init成功之后执行 |
VHALL_ZK.EVENTS.JOIN | 用户进入执行 | callback | - |
VHALL_ZK.EVENTS.LEAVE | 用户离开执行 | callback | - |
VHALL_ZK.EVENTS.BEGIN_LIVE | 开始直播 | callback | - |
VHALL_ZK.EVENTS.FINISH_LIVE | 结束直播 | callback | - |
VHALL_ZK.EVENTS.DISABLE_LIVE | 直播不可用 | callback | 套餐用尽或者房间被禁 |
VHALL_ZK.EVENTS.MARKET_TOOL | 互动工具消息 | callback | 问卷,红包,推荐卡片,抽奖,商品 |
VHALL_ZK.EVENTS.ANNOUNCEMENT | 公告 | callback | - |
VHALL_ZK.EVENTS.KICK | 踢出 | callback | - |
VHALL_ZK.EVENTS.KICK_BATCH | 批量踢出 | callback | - |
VHALL_ZK.EVENTS.GAG | 禁言 | callback | - |
VHALL_ZK.EVENTS.DISABLE_GAG | 恢复禁言 | callback | - |
VHALL_ZK.EVENTS.GAG_ALL | 全体禁言 | callback | - |
VHALL_ZK.EVENTS.DISABLE_GAG_ALL | 恢复全体禁言 | callback | - |
VHALL_ZK.EVENTS.DELETE_MESSAGE | 删除聊天消息 | callback | - |
VHALL_ZK.EVENTS.MENU_PUSH | 菜单开关推送 | callback | - |
VHALL_ZK.EVENTS.INCREMENT_ONLINE | 虚拟人数通知 | callback | - |
VHALL_ZK.EVENTS.ERROR | 错误消息通知 | callback | - |
代码示例
VHALL_ZK.init({
...
})
VHALL_ZK.$event.on(VHALL_ZK.EVENTS.initReady, () => {
...
})
VHALL_ZK.$event.on(VHALL_ZK.EVENTS.ERROR, (e) => {
console.error(e)
if (e.code === 50000) { // 套餐用尽
if (e.data.can_login === 'N') {
let type = e.data.package === 'FLOW' ? 'off' : 'over'
window.location.href = `${this.PC_HOST}other/${type}`
}
}
})
VHALL_ZK.$event.on(VHALL_ZK.EVENTS.KICK, () => { // 当前用户被踢出
this.$router.replace('/kicked')
})
/* 监听营销工具消息 */
VHALL_ZK.$event.on(VHALL_ZK.EVENTS.MARKET_TOOL, (msg) => {
switch (msg.type) {
case SaleTool.TOAST_NUM: // 点赞消息
this.zan_num = msg.toast_num // 点赞数量
break
case SaleTool.DOC_DOWNLOAD_SWITCH: // 资料下载开关
...
break
}
/* 根据直播延迟时间延迟处理营销工具推送消息 */
let tTime = setTimeout(() => {
clearTimeout(tTime)
// 处理营销工具推送消息
marketTool(msg)
}, this.live_delay)
})
function marketTool (msg) {
switch (msg.type) {
case SaleTool.RECOMMEND_CARD_PUSH:
console.log('--推荐卡片--消息--')
break
case SaleTool.NAIRE:
console.log('--发送问卷--消息--')
break
case RedBagTool.createRedBag:
console.log('--红包消息--消息--')
break
case DrawTool.createDraw:
console.log('--创建抽奖通知--消息--')
break
case DrawTool.endLottery:
console.log('--抽奖结束--消息--')
break
}
}