php - Pass socket.io room with socket_write? -
i curently using socket_write
open websocket , pass data node.js socket.io server. sending bits of html so:
private function opensocketconnection($address = 'localhost', $port = 5600) { $socket = socket_create(af_inet, sock_stream, sol_tcp); socket_connect($socket, $address, $port); return $socket; } $socket = $this->opensocketconnection(); socket_write($socket, $html, strlen($html));
this works fine , sends data node.js socket.io server catch so:
socket.on('data', (msg) => {});
but want send data specific room instead of general socket.io room. there way setup can specify room?
perhaps when using socket_create()
or something? prevent pass room name on every socket_write
if possible.
clients can send data server itself. if want send message users in specific room, create message client can send tell server on behalf of client.
// client-side socket.emit("sendtoroom", {room: "someroom", data: "hello"});
and, on server:
socket.on('sendtoroom', function(msg) { // send clients in room except socket client socket.broadcast.to(msg.room, msg.data); });
if client in 1 room, can have client send message broadcast current room , have server room it's in. way, client not have send room every time.
Comments
Post a Comment