抢答功能
功能概述
本功能只支持讲师,且不支持多角色实时同步操作。
支持设置倒计时时间。观众需要在倒计时结束前进行抢答。
支持提前结束。
可查询抢答排行榜。
代码示例
注意,在开始以下步骤前需要先进行全局初始化设置。可参考文档。
示例代码
const app = new RushAnswer();
// 抢答状态。
const appData = {
// 抢答题 id
rushAnswerId: '',
// 剩余时间。单位:秒。
overTime: 0,
// 提交人数。
answerNum: 0,
};
// 定时器。
let timer = 0;
// 清理定时器。
function clearTimer() {
if (!timer) return;
clearTimeout(timer);
timer = 0;
}
// 判断倒计时是否结束,未结束情况下每秒获取最新抢答状态。
async function updateStatus() {
clearTimer();
// 获取当前抢答状态
const { ongoingStatus, overTime, answerNum, rushAnswerId } = await app.getStatus();
// 是否正在进行抢答
if (ongoingStatus) {
appData = Object.assign(appData, { overTime, answerNum, rushAnswerId });
timer = setTimeout(updateStatus, 1000);
} else {
appData = Object.assign(appData, { overTime: 0 });
}
}
// 开始抢答。
const startResult = await app.start(30);
// 获取抢答状态。
updateStatus();
// 结束抢答。
app.stop(appData.rushAnswerId);
// 获取已回答的观众列表。
const result = await app.getAnswerList(appData.rushAnswerId);
流程图
Last updated