Quiero mostrar un mensaje enviado a todos los clientes conectados. Actualmente tengo que solo el remitente puede ver el mensaje enviado, pero todos deben verlo. ¿Alguien me puede ayudar? Aquí está mi código para el servidor y el sitio web.
const http = require('http'); const { Socket } = require('socket.io'); const WebSocketServer = require('websocket').server; const server = http.createServer(); console.log('Server is on port 3000') server.listen(3000); const wsServer = new WebSocketServer({ httpServer: server }); wsServer.on('request', function(request) { const connection = request.accept(null, request.origin); connection.on('message', function(message) { var test=message.utf8Data; console.log('Received Message:', test); connection.sendUTF(test); }); connection.on('close', function(reasonCode, description) { console.log('Client has disconnected.'); }); }); <?php ob_start() ?> <?php $titel="Chat"; ?> <div class="chat-main" id="text"></div> <form name='form' method='post' class="form"> <div class="form-group"> <input type="text" class="form-control" id="textbox" name="chat" placeholder="Chat"> <button type="button" class="btn btn-primary" name="gumb" id="gumb" onclick="Poslji()" autocomplete="off">Send</button> </div> </form> <script> function Poslji() { const ws = new WebSocket('ws://localhost:3000'); ws.onopen = function() { console.log('WebSocket Client Connected'); ws.send(document.getElementById('textbox').value); }; ws.onmessage = function(e) { console.log("Received: '" + e.data + "'"); document.getElementById('text').innerHTML=e.data; }; } </script> <?php $content=ob_get_clean(); require "layout.html.php"; ?>