welfare_lottery
更新時間:2024-04-22 19:18:32
條件抽獎
功能概述
本模組主要用於處理條件抽獎相關的邏輯,監聽條件抽獎開始推送、結束推送等訊息,提供獲取條件抽獎的詳細資訊、抽獎情況等介面,接入方可根據這些事件流程自訂自己的UI介面。
初始化及銷毀
在實例化該模組並進行使用之前,需要對SDK進行初始化配置,詳細請見參考文件。
線上檔案引入方式
<script src="https://websdk.videocc.net/interactions-receive-sdk/0.24.0/lib/polyv-ir.umd.js"></script>
<script>
const { WelfareLottery } = window.PolyvIRSDK;
</script>
import 方式引入(推薦)
import { WelfareLottery } from '@polyv/interactions-receive-sdk';
const welfareLotterySdk = new WelfareLottery();
// 销毁 SDK 实例,清除逻辑
welfareLotterySdk.destroy();
使用流程
監聽「抽獎開始(START)」事件,即時獲取最新的抽獎活動
在發起端發起抽獎後(具體發起端請洽詢售後),本SDK內部會觸發 welfareLotterySdk.events.START 事件,接入方可監聽該事件,取得抽獎ID
welfareLotterySdk.on(welfareLotterySdk.events.START, function(msg) {
console.log(`抽奖开始:`, msg);
});
請求getPendantList介面取得最新的抽獎活動(用於在發起抽獎活動後才進入聊天室的情況)
welfareLotterySdk.getPendantList().then(data => {
console.info(data);
});
取得抽獎活動的ID後,請求getWelfareLotteryDetail介面取得具體的抽獎內容,可用於展示獎品資訊、活動時間、參與人數等資訊
welfareLotterySdk.getWelfareLotteryDetail().then(data => {
console.info(data);
});
完成評論抽獎,呼叫sendComment方法,自動發送評論完成條件。
// comment 关键词
// 自动发送关键词评论,并完成抽奖
welfareLotterySdk.sendComment(comment);
// 外部发言满足关键词,如聊天室内发送关键词评论,并完成抽奖。
if(welfareLotterySdk.isBooleanToCommentLottery(comment)) {
welfareLotterySdk.finishCommentLottery();
}
請求getTaskCondition介面取得目前使用者任務完成情況
welfareLotterySdk.getTaskCondition().then(data => {
console.info(data);
});
監聽「抽獎結束(END)」事件
在發起端結束抽獎後(具體發起端請洽詢售後),本SDK內部會觸發 welfareLotterySdk.events.END 事件,接入方可監聽該事件,為下一步展示結果做準備
welfareLotterySdk.on(welfareLotterySdk.events.END, function(msg) {
console.log(`抽奖结束:`, msg);
});
抽獎活動結束後,請求getWelfareLotteryDetail介面取得中獎使用者ID列表,根據列表判斷目前使用者是否中獎
welfareLotterySdk.getWelfareLotteryDetail().then(data => {
// 从data.winnerIds判断当前用户是否中奖
// ...
});
取得個人中獎列表 getLotteryWinList
welfareLotterySdk.getLotteryWinList({
keyword,
pageSize,
pageNumber
}).then(data => {
console.info(data);
});
中獎人請求getLotteryPrize取得獎品詳情,領取獎品方式、兌換碼會在此介面回傳
welfareLotterySdk.getLotteryPrize().then(data => {
console.info(data);
});
若領獎方式為提交表單,透過submitInfo介面提交中獎人資訊
welfareLotterySdk.submitInfo({
lotteryId,
winnerCode,
receiveInfo: [
{
field,
value
}
],
}).then(data => {
console.info(data);
});
注意
- 若開啟外部邀請且在行動裝置環境下,不再顯示開獎動效,將直接顯示開獎結果。
- 如果不再需要使用條件抽獎SDK時,請呼叫SDK實例的destroy方法來銷毀實例。
