计时器

功能概述

  • 仅支持由讲师角色发起倒计时,发起后所有角色为嘉宾或讲师的用户都会收到倒计时消息。

  • 在开始倒计时时可以设置是否可超时。如果可超时,在倒计时结束后会继续开始正计时。

代码示例

注意,在开始以下步骤前需要先进行全局初始化设置。可参考文档

基本流程

const app = new Timer();

// 订阅事件监听。
app
  .on('start', () => {})
  .on('stop', () => {})
  .on('end', () => {})
  .on('restart', () => {});

// 开始倒计时。操作成功后,'start' 事件会被触发。
app.start({ time: 30, enableTimeOut: true });

// 定时器每秒更新一次计时状态
let timer = 0;
function clearTimer() {
  if (!timer) return;
  clearTimeout(timer);
  timer = 0;
}
async function updateStatus() {
  app.getTimerStatus();
  clearTimer();
  timer = setTimeout(updateStatus, 1000);
}
updateStatus();

// 暂停倒计时。操作成功后,'stop' 事件会被触发。
app.stop();
// 重新开始倒计时。操作成功后,'restart' 事件会被触发。
app.restart();
// 结束倒计时。操作成功后,'end' 事件会被触发。
app.end();

Last updated