签到

功能概述

本模块主要用于接收和处理讲师、助教和管理员等用户发起的签到操作。

初始化及销毁

在实例化该模块并进行使用之前,需要对SDK进行初始化配置,详细见参考文档

在线文件引入方式

// script 标签引入,根据版本号引入JS版本。
<script src="https://websdk.videocc.net/interactions-receive-sdk/0.24.0/lib/polyv-ir.umd.js"></script>

<script>
    const { CheckIn } = window.PolyvIRSDK;
</script>

import 方式引入(推荐)

import { CheckIn } from '@polyv/interactions-receive-sdk';

const checkInSdk = new CheckIn();
// ...
// 销毁 SDK 实例,清除逻辑
checkInSdk.destroy();

使用流程

监听 “开始签到” 事件

在讲师/助教等发起端,发起一次签到之后,checkInSdk.events.SIGN_IN 事件会被触发,事件参数中包含签到总时长等信息,接入方可以监听该事件,并且根据这些信息,展示签到倒计时等界面。

checkInSdk.on(checkInSdk.events.SIGN_IN, function(msg) {
  console.log(`开始签到,签到时长:`, msg.data.limitTime, `签到提示:`, msg.data.message);
});

监听 “签到中止” 事件

在预设倒计时结束前,发起端若主动结束签到,checkInSdk.events.STOP_SIGN_IN 事件会被触发,此后观众将无法提交签到信息,因此在收到此事件时接入方应展示签到终止提示,不再允许用户进行签到。

checkInSdk.on(checkInSdk.events.STOP_SIGN_IN, function(msg) {
  console.log('签到已终止');
});

监听 “签到时间结束” 事件

在预设签到时间结束后,checkInSdk.events.SIGN_IN_FINISH 事件会被触发。类似于 checkInSdk.events.STOP_SIGN_IN 事件,接入方需要展示类似签到已结束的提示。

checkInSdk.on(checkInSdk.events.SIGN_IN_FINISH, function(msg) {
  console.log('签到已结束');
});

监听 “计时更新” 事件

在签到开始后,SDK 内部会启动倒计时处理逻辑,每当签到剩余时间更新时, checkInSdk.events.SIGN_IN_TIME_UPDATED 事件都会被触发(每秒更新后触发一次),接入方除了自行处理“签到开始”时间中的时间,也可以直接监听此事件进行相应时间处理和展示。

checkInSdk.on(checkInSdk.events.SIGN_IN_TIME_UPDATED, function(msg) {
  console.log('剩余签到时间(毫秒):', msg.totalMsecs);
});

进行签到

在签到开始后,可以使用 checkInSdk.toCheckIn() 进行用户签到,签到成功后将触发相应事件。

监听 “签到成功” 事件

checkInSdk.on(checkInSdk.events.SIGN_IN_SUCCESS, function() {
  console.log('签到成功');
});

注意

如果不需要再使用签到SDK时,请调用SDK实例的destroy方法去销毁实例。

Last updated