| 1234567891011121314151617181920212223242526 |
- import { pubClient } from "../connection/redis.js";
- import { logger } from "../core/logger.js";
- import { io } from "../core/io.js";
- import { FROMTYPE } from "../enum/index.js";
- const passiveLeave = async (roomId, userId, socket) => {
- setTimeout(async () => {
- const isExistUser = await pubClient.exists(userId);
- if (isExistUser === 1) {
- const baseUser = await pubClient.hGetAll(userId);
- const user = baseUser[FROMTYPE.MiniAPP];
- if (user && user.isConnected) {
- const isConnected = typeof user.isConnected === "string" ? JSON.parse(String(user.isConnected.toLowerCase())) : user.isConnected;
- const from = user.from;
- logger.info("passiveLeave", { userId, isConnected, from });
- if (!isConnected && Number(from) === FROMTYPE.MiniAPP) {
- console.log("10秒离开");
- }
- }
- }
- }, 10000);
- };
- export async function watchRoomService(roomId, userId, socket) {
- passiveLeave(roomId, userId, socket);
- }
|