노드와 소켓 io를 사용하여 실시간 응용 프로그램을 구축하고 있습니다.방의 클라이언트 세트에만 소켓 이벤트를 내 보냅니다.
내 질문은 : 내 클라이언트 측에
내 서버 측에서
socket.emit('adduser', username);
이 지금
socket.on('adduser', function(username) {
io.sockets.in(socket.room).socket.emit('user-added', somedata);
}
그리고이 다시 한 사용자가 클라이언트 측에 오는 추가 수신자
socket.on('user-added', function(somedata) {
// get shit done!
}
이제 3 개의 클라이언트가 연결되어 있고 모두 동일한 스크립트를 공유한다고 가정합니다. 소켓 io에 대한 나의 이해에 따르면, 내가 io.sockets.in(socket.room).socket.emit
라고 말하면 이벤트는 특정 방의 모든 연결된 클라이언트에게 방출 될 것입니다.
말 예를 들어, 난 단지 클라이언트 1 클라이언트 (3)이 'user-added'
이벤트
듣고 싶은 어떻게 이것을 달성합니까?
하지만 소켓 (socketid)은 특정 소켓에만 방출됩니다. 방에 3 명의 클라이언트가 있다면, 클라이언트 1과 클라이언트 3에게 내 보내려합니다. – Ajey
글쎄 그것은 방출 된 소켓으로 방출하고 싶지 않은 것 같습니다. 클라이언트 2가 발광 소켓이고 클라이언트 1과 3이 있습니다. 다른 두 개의 소켓이 같은 방에 연결되어 있다면 'socket.broadcast.to (socket.room) .emit ('user-added ', {data : yourData});' –