|
@@ -33,13 +33,12 @@ console.log('SOCKET_USE_MSPACK', process.env.SOCKET_USE_MSPACK);
|
|
|
: '',
|
|
|
})
|
|
|
export class SocketGateway
|
|
|
- implements OnGatewayInit, OnGatewayDisconnect, OnGatewayConnection
|
|
|
-{
|
|
|
+ implements OnGatewayInit, OnGatewayDisconnect, OnGatewayConnection {
|
|
|
constructor(
|
|
|
@InjectRedis() private readonly redis: Redis,
|
|
|
private readonly roomService: RoomService,
|
|
|
private readonly delayService: DelayService,
|
|
|
- ) {}
|
|
|
+ ) { }
|
|
|
public readonly logger = new Logger('socketGateway');
|
|
|
@WebSocketServer() server: Server;
|
|
|
// public _loginLimit = new Map<string, string>();
|
|
@@ -126,6 +125,12 @@ export class SocketGateway
|
|
|
code: 306,
|
|
|
});
|
|
|
this.logger.warn(`306:${message.userId}`, 'repeat-login');
|
|
|
+ // 出现repeat-login 通过 delay 5min去全删除deviceId
|
|
|
+ socket.data.user = {
|
|
|
+ RoomId: message.roomId,
|
|
|
+ UserId: message.userId,
|
|
|
+ };
|
|
|
+ this.delayService.handleOffline(socket);
|
|
|
return Promise.resolve(true);
|
|
|
}
|
|
|
}
|