Vyhledávání na webu

typescript - Jak zkontrolovat, zda místnost existuje, než pošlete zprávu přes socket?


broadcastToSpecificUser(message: any): void {
    if(message.username){
        this.io.sockets.in(message.username).emit("eventArrived", message);
    }else{
        this.io.sockets.emit("eventArrived", message);
   }
}

Snažím se poslat zprávu pouze soketům určité místnosti. „message“ je objekt události, ve kterém je vlastnost nazvaná username, kterou používám k ověření, zda místnost existuje. Jak bych měl upravit výše uvedený kód?

Odpověď č. 1

Protože rooms je Map, io.sockets.adapter.rooms["název místnosti"] vrací undefined. Místo toho používám

io.sockets.adapter.rooms.get("room name")

Odpověď č. 2

zkus toto:

if(io.sockets.adapter.rooms["room name"])
{
     //if room exist
}