虎牙开放平台文档

hyExt.context.onGiftChange

  • 监听当前直播间送礼事件
  • 只保留最新的一次监听
  • 最大触发频率为每50毫秒一条
  • 引入版本 1.1.0
  • 适用终端
    • 虎牙直播主站
    • 虎牙直播APP-iOS:7.11.2
    • 虎牙直播APP-安卓:7.11.0
    • 虎牙直播助手-iOS:3.14.0
    • 虎牙直播助手-安卓:3.14.0
    • 虎牙直播PC客户端-主播侧:4.9.0.3
    • 虎牙直播PC客户端-观众侧:4.12.4.6

接口签名

declare namespace hyExt { module context { /** * 监听当前直播间送礼事件 * @param options 过滤条件 * @param callback 礼物信息回调 */ function onGiftChange( options: GiftChangeOptions, callback: GiftChange ): Promise<void> } /** * 礼物变化过滤条件 */ type GiftChangeOptions = { /** * 用户昵称关键字 */ sendNick?: string /** * 礼物名称关键字 */ itemName?: string /** * 礼物数量超过这个值才监听 */ minSendItemCount?: number /** * 连击数量超过这个值才监听 */ minSendItemComboHits?: number } /** * 礼物信息回调 * @param giftInfo 送礼人信息 */ type GiftChange = (giftInfo: GifterInfo) => void /** * 送礼人信息 */ type GifterInfo = { /** * 送礼人的昵称 */ sendNick: string /** * 送礼人的头像地址 */ senderAvatarUrl: string /** * 礼物Id */ itemId: number /** * 礼物名称 */ itemName: string /** * 礼物数量 */ sendItemCount: number /** * 送礼连击数 */ sendItemComboHits: number /** * 房间号 */ roomId: number /** * 用户unionId */ unionId: string /** * 礼物的自定义文案 */ customText: string /** * 贵族等级 */ nobleLevel: number /** * 此次送礼支付总额(分) */ totalPay: number /** * 贵族等级类型 */ nobleAttrType: number } }

示例代码

hyExt.context .onGiftChange( { sendNick: "", itemName: "", minSendItemCount: 0, minSendItemComboHits: 0, }, (giftinfo) => { const { sendNick, senderAvatarUrl, itemId, itemName, sendItemCount, sendItemComboHits, roomId, unionId, customText, nobleLevel, totalPay, nobleAttrType, } = giftinfo console.log("回调触发", giftinfo) } ) .then(() => { console.log("调用hyExt.context.onGiftChange成功") }) .catch((err) => { console.log("调用hyExt.context.onGiftChange失败", err) })

相关链接