签到
更新时间:2025-02-27 15:22:36
一、功能概述
本模块主要用于接收和处理讲师、助教和管理员等用户发起的签到操作。
二、Api 方法
2.1 获取签到信息
说明: 获取当前用户的签到状态信息
Api 方法: getCheckInInfo(): Promise<CheckInStatusSocketData>
返回值说明: 签到状态数据,Promise<CheckInStatusSocketData> 类型,详细类型说明如下
| 属性名 | 说明 | 类型 |
|---|---|---|
code |
状态码,200 签到成功,201 未签到 | number |
data |
签到状态数据 | CheckInStatusData[] |
示例:
const res = await watchCore.checkIn.getCheckInInfo();
if (res.code === 200) {
console.log('创建时间', res.data[0].createTime);
console.log('签到状态', res.data[0].checked);
console.log('签到ID', res.data[0].checkinId);
console.log('签到场次ID', res.data[0].sessionId);
}
2.2 执行签到操作
说明: 执行签到操作,签到成功会触发 SIGN_IN_SUCCESS 事件,失败触发 SIGN_IN_FAIL 事件
Api 方法: toCheckIn(): Promise<void>
示例:
await watchCore.checkIn.toCheckIn();
三、模块事件
3.1 签到开始事件
说明: 当讲师/助教发起签到时触发,包含签到的详细信息
Event 事件: CheckInEvents.SIGN_IN
回调参数: Object 对象,详细类型说明如下
| 属性名 | 说明 | 类型 |
|---|---|---|
roomId |
频道号 | string |
checkInData |
签到数据 | CheckInData |
示例:
watchCore.checkIn.eventEmitter.on(CheckInEvents.SIGN_IN, (data) => {
console.log('签到开始', data.checkInData);
});
3.2 签到结束事件
说明: 当签到被手动结束时触发
Event 事件: CheckInEvents.STOP_SIGN_IN
示例:
watchCore.checkIn.eventEmitter.on(CheckInEvents.STOP_SIGN_IN, () => {
console.log('签到已结束');
});
3.3 签到成功事件
说明: 当用户成功完成签到时触发
Event 事件: CheckInEvents.SIGN_IN_SUCCESS
示例:
watchCore.checkIn.eventEmitter.on(CheckInEvents.SIGN_IN_SUCCESS, () => {
console.log('签到成功');
});
3.4 签到失败事件
说明: 当用户签到失败时触发
Event 事件: CheckInEvents.SIGN_IN_FAIL
示例:
watchCore.checkIn.eventEmitter.on(CheckInEvents.SIGN_IN_FAIL, () => {
console.log('签到失败');
});
