卡片推送
更新时间:2025-02-27 15:22:36
一、功能概述
本模块主要用于接收和处理直播间的卡片推送功能,包括获取卡片信息、记录领取状态等。
二、Api 方法
2.1 获取当前推送的卡片数据
说明: 获取当前直播间正在推送的卡片信息
Api 方法: getPushCardData(): Promise<undefined | PushCardData>
返回值说明: 卡片数据,如果没有正在推送的卡片则返回undefined,Promise<undefined | PushCardData> 类型
示例:
// 获取当前推送的卡片
const cardData = await watchCore.pushCard.getPushCardData();
console.log('卡片图片链接:', cardData.cardImage);
console.log('等待显示时间(秒):', cardData.conditionValue);
console.log('倒计时文案:', cardData.countdownMsg);
console.log('卡片倒计时(秒):', cardData.duration);
console.log('是否有卡片入口:', cardData.enterEnabled);
console.log('入口图片链接:', cardData.enterImage);
console.log('封面类型:', cardData.imageType);
console.log('跳转链接:', cardData.link);
console.log('移动端跳转链接:', cardData.mobileLink);
console.log('桌面端跳转链接:', cardData.pcLink);
console.log('微信小程序原始ID:', cardData.wxMiniprogramOriginalId);
console.log('微信小程序appid:', cardData.wxMiniprogramAppId);
console.log('页面路径:', cardData.wxMiniprogramLink);
console.log('是否有配置链接:', cardData.linkEnabled);
console.log('打开链接方式:', cardData.redirectType);
console.log('弹出方式:', cardData.showCondition);
console.log('卡片标题:', cardData.title);
console.log('链接类型:', cardData.hrefType);
2.2 记录卡片领取操作
说明: 用户领取卡片时调用,记录领取状态
Api 方法: recordObtainCard(): Promise<void>
示例:
// 用户领取卡片
await watchCore.pushCard.recordObtainCard();
console.log('卡片领取成功');
三、模块事件
3.1 卡片推送开始事件
说明: 当讲师/助教发起卡片推送时触发,包含卡片的详细信息
Event 事件: PushCardEvents.PushStart
回调参数: Object 对象,详细类型说明如下
| 属性名 | 说明 | 类型 |
|---|---|---|
cardId |
卡片 id | string |
cardData |
卡片数据 | PushCardData |
示例:
watchCore.pushCard.eventEmitter.on(PushCardEvents.PushStart, (data) => {
console.log('卡片推送开始', data.cardId, data.cardData);
});
3.2 取消卡片推送事件
说明: 当卡片推送被取消时触发
Event 事件: PushCardEvents.PushCancel
示例:
watchCore.pushCard.eventEmitter.on(PushCardEvents.PushCancel, () => {
console.log('卡片推送已取消');
});
