You need to enable JavaScript to run this app.
文档中心
企业直播

企业直播

复制全文
下载 pdf
观看页 iframe 嵌入
事件
复制全文
下载 pdf
事件

您可以在监听到指定事件后,执行您自己的后续处理逻辑。
示例代码如下所示。

window.addEventListener('message', (event) => {
        try {
          if (event.origin.includes('byteoc.com')) {
              const data = JSON.parse(event.data);
              switch (data.action) {
                case 'player.play': // 请将 player.play 替换为具体的事件。
                  // 监听到事件后,执行您自己的后续处理逻辑。
                  console.log('====== ', data.action, ' -- ', data.payload, ' ======' );
                  break
                default:
                  return;
              }
          }
        } catch (e) {
        }
      });

播放器相关事件

player.play

播放事件。
类型

() => void

player.playing

(暂停、卡顿后)恢复播放事件。
类型

() => void

player.pause

暂停播放事件。
类型

() => void

player.ended

结束播放事件。
类型

() => void

player.destroy

销毁播放器事件。
类型

() => void

player.ratechange

播放速率变化事件。
类型

(rate: number) => void

参数

名称

类型

说明

rate

number

播放速率。取值如下:

  • 0.5:0.5 倍速。
  • 0.75:0.75 倍速。
  • 1:1 倍速。
  • 1.25:1.25 倍速。
  • 1.5:1.5 倍速。
  • 2:2 倍速。

player.fullscreen_change

全屏模式变化事件。
类型

(isFullScreen: boolean) => void

参数

名称

类型

说明

isFullScreen

boolean

是否切换到全屏模式。取值如下:

  • true:切换到全屏模式。
  • false:切换到非全屏模式。

player.pip_change

PC 端小窗模式变化事件。
类型

(isPip: boolean) => void

参数

名称

类型

说明

isPip

boolean

PC 端是否切换到小窗模式。取值如下:

  • true:切换到小窗模式。
  • false:从小窗模式切换回原始播放画面。

player.waiting

等待加载数据事件。
类型

() => void

player.status

直播状态变化事件。
类型

(status: string) => void

参数

名称

类型

说明

status

string

直播状态。取值如下:

  • 直播中
  • 预告
  • 回放
  • 结束

player.vodConfigChange

点播视频(预告和回放)断点续播事件。
点播视频播放过程中该事件的触发时机如下:

  • PC 端:页面关闭时,触发该事件。
  • 移动端:WebView 的 pagehide 事件触发时或用户手动拖动进度条时,触发该事件。

类型

(VodInfo: { vid: string; currentTime: number; duration: number;}) => void

参数

名称

类型

说明

VodInfo

-

点播视频相关信息。

vid

string

视频 ID,视频的唯一标识。

currentTime

number

当前播放位置。单位为秒。

duration

number

视频总时长。单位为秒。

lines.number

多线路数量变化事件。
类型

(lines: number) => void

参数

名称

类型

说明

lines

number

当直播状态为直播中时,表示直播频道数量。
当直播状态为回放时,表示回放视频数量。

非播放器相关事件

activity.status

直播状态变化事件。
类型

(status: 1 | 2 | 3 | 4) => void

参数

名称

类型

说明

status

1 | 2 | 3 | 4

直播状态。取值如下:

  • 1:直播中。
  • 2:预告。
  • 3:回放。
  • 4:结束。

comment.focus

聊天互动输入框点击事件。
类型

() => void

comment.send

发送评论事件。
类型

(msg: string) => void

参数

名称

类型

说明

msg

string

发送的评论内容。

comment.nickNameClick

评论区昵称点击事件。
类型

(data: { Nickname: string; ExternalId: string; isTop: boolean; isPresenter: boolean;}) => void

参数

名称

类型

说明

data

-

评论昵称的相关信息。

Nickname

string

用户昵称。

ExternalId

string

外部用户 ID。

isTop

boolean

评论是否置顶。取值如下:

  • true:置顶。
  • false:未置顶。

isPresenter

boolean

当前用户是否为主持人。取值如下:

  • true:主持人
  • false:非主持人。

reservation.click

立即预约按钮点击事件。
类型

() => void

reservation.attend

成功预约事件。
类型

(tel: string) => void

参数

名称

类型

说明

tel

string

预约手机号。

card.click

菜单内的商品卡片点击事件。
您可以将 disableCardRedirect 的参数值设为 true 并监听该事件,实现商品卡片的自定义跳转逻辑。
类型

(card: { text: string; url: string; UAInfos: UAInfo[]; DirectUrls: string[];}) => void

参数

名称

类型

说明

card

-

商品卡片菜单配置信息。

text

string

商品卡片的标题。

url

string

商品卡片的跳转链接。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

UAInfos

UAInfo[]

商品卡片菜单配置的环境信息。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

DirectUrls

string[]

商品卡片的直达链接。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

floatingCard.click

浮窗商品卡片点击事件。
您可以将 disableCardRedirect 的参数值设为 true 并监听该事件,实现商品卡片的自定义跳转逻辑。
类型

(card: { text: string; url: string; UAInfos: UAInfo[]; DirectUrls: string[];}) => void

参数

名称

类型

说明

card

-

商品卡片菜单配置信息。

text

string

商品卡片的标题。

url

string

商品卡片的跳转链接。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

UAInfos

UAInfo[]

商品卡片菜单配置的环境信息。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

DirectUrls

string[]

商品卡片的直达链接。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

lottery.click

抽奖入口点击事件。
类型

(award: { awardId: string;}) => void

参数

名称

类型

说明

award

-

抽奖信息。

awardId

string

抽奖 ID。

lottery.attend

参与抽奖事件。
类型

(award: { awardId: string;}) => void

参数

名称

类型

说明

award

-

抽奖信息。

awardId

string

抽奖 ID。

lottery.result

抽奖开奖事件。仅当抽奖开奖时用户在线,才会触发该事件。
类型

(award: { awardId: string; ifWin: boolean;}) => void

参数

名称

类型

说明

award

-

抽奖开奖信息。

awardId

string

抽奖 ID。

ifWin

boolean

是否中奖。取值如下:

  • true:中奖。
  • false:未中奖。

lottery.winInfo

提交中奖信息事件。
类型

(award: { awardId: string; awardTel: string; awardAddress?: string;}) => void

参数

名称

类型

说明

award

-

提交的中奖信息。

awardId

string

抽奖 ID。

awardTel

string

观众输入的手机号。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

awardAddress

string | undefined

观众输入的收货地址。该参数是否有值取决于您在控制台或服务端 OpenAPI(如支持)的配置。

lotteryTicket.click

领取奖券奖品点击事件。
您可以将 disableLotteryTicketRedirect 的参数值设为 true 并监听该事件,实现奖券奖品领取链接的自定义跳转逻辑。
类型

(award: { url: string; ActivityId: string; TaskAwardId: string; TaskAwardItemId: string;}) => void

参数

名称

类型

说明

award

-

奖券奖品相关信息。

url

string

奖品链接。

ActivityId

string

直播间活动 ID。

TaskAwardId

string

抽奖配置 ID。

TaskAwardItemId

string

累计观看抽奖的奖品 ID。

taskAwardPanel.pop

累计观看抽奖面板弹出事件。
类型

(award: { config: TaskAwardConfig | null; viewedTime: number; isLogin: boolean; winningRecordMap: Map<string, IRecordInfo>;}) => void

参数

名称

类型

说明

award

-

抽奖信息。

config

TaskAwardConfig | null

本次累计观看抽奖活动的抽奖配置信息。

viewedTime

number

当前观众累计的观看时长。单位为秒。

isLogin

boolean

当前观众是否登录直播间。取值如下:

  • true:已登录。
  • false:未登录。

winningRecordMap

Map<string, IRecordInfo>

当前观众的中奖记录。

taskAwardBox.click

累计观看抽奖中奖结果点击事件。
类型

(award: { index: number; WatchTime: number;}) => void

参数

名称

类型

说明

award

-

抽奖信息。

index

number

抽奖宝箱序号。从 0 开始计数。

WatchTime

number

累计观看时长。单位为分钟。

share.click

分享点击事件。在 PC 端单击分享,移动端点击复制链接二维码时会触发该事件。
类型

() => void

poster.click

邀请海报点击事件。
类型

() => void

adFloating.click

浮标广告点击事件。仅在通过企业直播控制台或服务端 OpenAPI(如支持)配置跳转链接后,才会触发该事件。
您可以将 disableAdFloatingRedirect 的参数值设为 true 并监听该事件,实现浮标广告的自定义跳转逻辑。
类型

(ad: { AdvertisementRedirectUrl: string;}) => void

参数

名称

类型

说明

ad

-

浮标广告信息。

AdvertisementRedirectUrl

string

浮标广告跳转链接。

adMiddle.click

页中广告点击事件。仅在通过企业直播控制台或服务端 OpenAPI(如支持)配置跳转链接后,才会触发该事件。
您可以将 disableAdMiddleRedirect 的参数值设为 true 并监听该事件,实现页中广告的自定义跳转逻辑。
类型

(ad: { AdvertisementRedirectUrl: string;}) => void

参数

名称

类型

说明

ad

-

页中广告信息。

AdvertisementRedirectUrl

string

页中广告跳转链接。

adAccount.click

主播账号点击事件。仅在通过企业直播控制台或服务端 OpenAPI(如支持)配置跳转链接后,才会触发该事件。
您可以将 disableAdAccountRedirect 的参数值设为 true 并监听该事件,实现主播账号的自定义跳转逻辑。
类型

(account: { AccountHeadRedirectUrl: string;}) => void

参数

名称

类型

说明

account

-

主播账号信息。

AccountHeadRedirectUrl

string

主播账号的跳转链接。

菜单栏点击事件。
类型

(tab: { terminal: 'pc' | 'mobile'; layout?: 'portrait'; tab: number;}) => void

参数

名称

类型

说明

tab

-

菜单栏相关信息。

terminal

"pc" | "mobile"

观众的终端类型。取值如下:

  • "pc":PC 端。
  • "mobile":移动端。

layout

"portrait" | undefined

参数值固定为 "portrait",表示观众在移动端竖屏直播间中点击菜单栏。

tab

number

菜单类型。取值如下:

  • 3: 聊天互动菜单。
  • 31:热门评论菜单。
  • 5:聚合直播菜单。
  • 2:商品卡片菜单。
  • 1:图文介绍菜单。
  • 4:互动工具菜单。
  • 6:互动问答菜单。
  • 7:内嵌链接菜单。
  • 61:邀请榜单菜单。

thumbs.click

直播间点赞事件。
类型

(thumb: { count: number;}) => void

参数

名称

类型

说明

thumb

-

点赞信息。

count

number

点赞数量。

feature.click

互动功能按钮点击事件。
类型

(feature: { feature: string; status: boolean;}) => void

参数

名称

类型

说明

feature

-

互动功能信息。

feature

string

互动功能。取值如下:

  • Comment:评论功能。
  • Gift:礼物打赏功能。
  • Lottery:实时抽奖功能。
  • Thumb:评论点赞功能。
  • Luckymoney:红包功能。
  • Reservation:直播预约功能。
  • Question:互动问答功能。
  • CheckIn:签到功能。
  • Vote:投票功能。
  • Questionnaire:问卷功能。
  • TaskAward:累计观看抽奖功能。

status

boolean

是否阻止互动功能的后续执行。取值如下:

  • true:阻止。
  • false:不阻止。

customInteractionIcons.click

自定义互动工具浮窗点击事件。
类型

(key: string) => void

参数

名称

类型

说明

key

string

互动工具浮窗的唯一标识。

lottery.order

观众未满足实时抽奖的下单条件时,做任务参与抽奖页面的去完成按钮点击事件。
类型

(award: { ID: number; Name: string;}) => void

参数

名称

类型

说明

award

-

抽奖信息。

ID

number

抽奖 ID。

Name

string

奖品名称。

luckymoney.withdrawal

立即提现按钮点击事件。
仅在同时满足以下条件时,才会触发该事件:

  • 红包为现金红包
  • 通过企业直播控制台或服务端 OpenAPI 配置了自定义地址或微信小程序
  • 观众抢到红包并点击立即提现按钮

类型

(luckymoneyInfo: { activityId: string; id: string; timestamp: number;}) => void

参数

名称

类型

说明

luckymoneyInfo

-

红包相关信息。

activityId

string

直播间活动 ID。

id

string

红包 ID。

timestamp

number

点击立即提现按钮的时间。Unix 时间戳,单位为秒。

最近更新时间:2025.03.21 10:43:45
这个页面对您有帮助吗?
有用
有用
无用
无用