智密腾讯云直播组建--直播间事件监听--ZhimiTRTCRoomEvent

事件名 描述
onSelfInfoUpdated 用户信息更新事件
onNetworkQuality 网络状态变更
onRoomDestroy 房间销毁
onRoomTextMessage 收到聊天消息
onRoomOnlinesUpdate 房间人数变更
onBeKickout 用户被踢出直播间
onGiftRev 收到礼物消息
onExitJoinAnchor 连麦结束
onRequestJoinAnchorRev 观众请求连麦
onResponseJoinAnchorRev 主播响应连麦
onKickoutJoinAnchorRev 观众连麦被断开
onEnterJoinAnchor 进入连麦状态

onSelfInfoUpdated - 用户信息更新事件

该事件用于反馈用户信息更新,开发者通过 setProfile 的 api 或者通过腾讯云官方接口调用更新用户的信息时候会触发。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onSelfInfoUpdated(userInfo => {
  console.log('用户信息变更', userInfo)
})

onNetworkQuality - 网络状态变更

该事件用于反馈 trtc 网络状态,主要体现主播,连麦的网络质量。该事件会按秒级别触发!请开发者谨慎使用。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onNetworkQuality(userInfo => {
  console.log('网络状态', userInfo)
})

onRoomDestroy - 房间销毁

该事件用于监听房间销毁,常见与主播退出直播间或者销毁直播间。接收到该事件之后开发者应该让用户退出该直播间,并且停止推流拉流操作。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onRoomDestroy(() => {
  console.log('直播结束,直播间已经销毁')
})

onRoomTextMessage - 收到聊天消息

该事件用于监听收到直播间聊天消息。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onRoomTextMessage((data) => {
  console.log('收到聊天消息', data.nick, '发了', data.text)
})

onRoomOnlinesUpdate - 房间人数变更

该事件用于监听房间在线人数变更,请注意,该事件有且只有在腾讯云 IM 旗舰版有准确的统计结果。具体原因参考以下连接。

即时通信 IM 获取直播群在线成员列表-服务端 API-文档中心-腾讯云

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onRoomOnlinesUpdate(({ count, list }) => {
  console.log('当前在线人数', count)
  console.log('当前在线列表', list)
})

onBeKickout - 用户被踢出直播间

该事件用于监听当前用户被踢出直播间。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onBeKickout(() => {
  console.log('您已经被踢出直播间')
})

onGiftRev - 收到礼物消息

该事件用于监听房间内的礼物消息,该消息一般是其他用户发出的,自己发出的请根据sendGift反馈进行处理。

注意:这里的礼物数据不一定和实际业务一致,这里只根据demo默认的进行编写调用例子,实际开发中请开发者自行处理。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onGiftRev(({ url, nick, label }) => {
  console.log('礼物svga连接', url)
  console.log('发送人员昵称', nick)
  console.log('发送礼物名称', label)
})

onExitJoinAnchor - 连麦结束

该事件用于监听观众断开/主播踢掉连麦从而导致的连麦结束。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onExitJoinAnchor(() => {
  console.log('连麦已经结束')
})

onRequestJoinAnchorRev - 观众请求连麦

该事件用于监听观众发起连麦请求,开发者需要在此处做处理确定是否同意连麦。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onRequestJoinAnchorRev(({ userName, type, userId }) => {
  console.log('观众Id', userId)
  console.log(userName, '请求连麦,连麦类型 -> ', type)
})

onResponseJoinAnchorRev - 主播响应连麦

该事件用于监听观众发起连麦请求之后,主播对于连麦请求的响应。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onResponseJoinAnchorRev(({ agree, type }) => {
  console.log('主播响应连麦结果 = ', agree)
  console.log('连麦类型 = ', type)
})

onKickoutJoinAnchorRev - 观众连麦被断开

该事件用于监听主播主动断开观众连麦。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onKickoutJoinAnchorRev(() => {
  console.log('主播已经断开与您的连麦')
})

onEnterJoinAnchor - 进入连麦状态

该事件用于监听主播观众进入连麦的状态,这里可以调用对应的api将视频流切成trtc流,从而得到优质的连麦体验。

调用例子
javascript 复制代码
import { ZhimiTRTCRoomEvent } from '@/utils/ZhimiTRTCLiveRoom'

ZhimiTRTCRoomEvent.onEnterJoinAnchor(() => {
  console.log('开始进入连麦')
})
相关推荐
几何心凉几秒前
从全密态到AI运维:openGauss构建企业级数据安全与效率的双重屏障
开发语言·数据库
思茂信息1 小时前
CST软件对Customer Success OPPO手机电源适配器EMC仿真
开发语言·嵌入式硬件·matlab·3d·智能手机·cst
缺点内向2 小时前
如何在 C# 中将 Excel 工作表拆分为多个窗格
开发语言·c#·.net·excel
少废话h3 小时前
解决Flink中ApacheCommonsCLI版本冲突
开发语言·python·pycharm
天命码喽c3 小时前
GraphRAG-2.7.0整合Milvus-2.5.1
开发语言·python·milvus·graphrag
后端小张3 小时前
【JAVA进阶】Spring Boot 核心知识点之自动配置:原理与实战
java·开发语言·spring boot·后端·spring·spring cloud·自动配置
tg-zm8899968 小时前
2025返利商城源码/挂机自动收益可二开多语言/自定义返利比例/三级分销理财商城
java·mysql·php·laravel·1024程序员节
Mr_Xuhhh8 小时前
YAML相关
开发语言·python
j***29488 小时前
IPV6公网暴露下的OPENWRT防火墙安全设置(只允许访问局域网中指定服务器指定端口其余拒绝)
服务器·安全·php
咖啡の猫8 小时前
Python中的变量与数据类型
开发语言·python