diff --git a/src/rtmt/rtmt.ts b/src/rtmt/rtmt.ts index 00c41cc..aa8ccdf 100644 --- a/src/rtmt/rtmt.ts +++ b/src/rtmt/rtmt.ts @@ -1,7 +1,8 @@ export type Bytes = Buffer -export type OnMessage = (clientID : string, message : Object) => any +export type OnMessage = (clientID: string, message: Object) => any -export interface RTMT{ - sendMessage : (clientID : string, channel : string, message : Object) => any - listenMessage : (channel : string, callback : OnMessage) => any +export interface RTMT { + sendMessage: (clientID: string, channel: string, message: Object) => any; + listenMessage: (channel: string, callback: OnMessage) => any; + isClientOnline(clientID: string): boolean; } \ No newline at end of file diff --git a/src/rtmt/rtmt_websocket.ts b/src/rtmt/rtmt_websocket.ts index 46e58fd..bb84d7f 100644 --- a/src/rtmt/rtmt_websocket.ts +++ b/src/rtmt/rtmt_websocket.ts @@ -126,4 +126,10 @@ export class RTMTWS implements RTMT { //@ts-ignore ws.isAlive = true; } + + isClientOnline(clientID: string): boolean { + const ws = this.clients.has(clientID); + //@ts-ignore + return ws && ws.isAlive; + } } \ No newline at end of file