Я новичок в websocket, используя pywebsocket, в основном пытаюсь создать простое приложение для чата с помощью websocket и pywebsocket. До сих пор я не буду делать с следующий сценарийСоедините двух клиентов в websocket с PyWebSocket
if ("WebSocket" in window)
{
//alert("WebSocket is supported by your Browser!");
// Let us open a web socket
var ws = new WebSocket("ws://192.168.1.3:9998/echo");
ws.onopen = function()
{
// Web Socket is connected, send data using send()
console.log("Channel opened");
//ws.send("Message to send");
//alert("Message is sent...");
//console.log("Message is sent...");
};
ws.onmessage = function (evt)
{
var received_msg = evt.data;
//alert("Message is received..."+received_msg);
console.log("message : "+received_msg);
};
ws.onclose = function()
{
// websocket is closed.
//alert("Connection is closed...");
console.log("connection closed");
};
}
else
{
// The browser doesn't support WebSocket
alert("WebSocket NOT supported by your Browser!");
}
function sendmessage(){
msg=document.getElementById("chat").value;
console.log(msg);
ws.send(msg);
document.getElementById("chat").value="";
}
Теперь проблема заключается в сообщения, отправленные эхом в самой системе, если другой клиент подключиться к тому же каналу его сообщения вторил себе, они отправляются другому клиенту, который подключен к одному каналу.
pywebsocket инициализируется следующим питона standalone.py -p 9998 -w ../example/
Итак, как я могу соединить две системы и разрешить чат. Заранее спасибо
похоже, что вы не храните список соединений в любом месте. Вы отправляете данные в одно и то же соединение. Некоторые py-коды могут быть полезными, но в основном вам нужно поддерживать все соединения в каком-то месте и отвечать на каждый – cox