Próbuję skonfigurować system z sails.js, aby serwer wysyłał wiadomości do zestawu klientów. Zasadniczo:Sails.js + socket.io: Wysyłanie wiadomości z serwera do klientów
- Klient w grupie A wysyła żądanie AJAX do serwera.
- Serwer przetwarza żądanie i wysyła komunikat przez gniazdo do wszystkich klientów grupy B.
- Klienci grupy B odbierają komunikat za pośrednictwem gniazda i wyświetlają coś.
Zgodnie z dokumentacją socket.io powinienem mieć możliwość, aby klienci w grupie B przyłączyli się do "pokoju", a następnie aby serwer był nadawany w tym konkretnym pomieszczeniu, ale po stronie klienta "socket" nie ma metody "socket.join ('room')". Tak, próbowałem tylko wysyłanie wyjątkowe wydarzenie dla wszystkich klientów:
socket.on("connect", function(){
console.log("Client Connected");
});
socket.on("my_event", function(data){
console.log("my_event received");
});
To działa prawidłowo, wykonując „sails.io.sockets.emit (” my_event „{...})” na stronie serwera, ale czy to nie jest wysyłanie wydarzenia do każdego klienta? Mogłem sprawić, by nazwa wydarzenia była niepowtarzalna, coś w rodzaju "my_event_000" z identyfikatorem do określenia grupy, ale nadal niepotrzebnie wysyłałby zdarzenia do każdego klienta.
Czy powinienem używać "pokoi"? A jeśli tak, to w jaki sposób?
Czy możesz podać bardziej konkretny przykład, proszę. Przyda się trochę więcej kodu. Nie można znaleźć rzeczy grupy w podanym linku. –
Grupa to nazwa modelu w przykładzie. W dokumentach są one wymienione jako 'Model.subscribe',' Model.publish' itd. – sgress454