簽到
更新時間: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('签到失败');
});
