How to send data from server.py
to specific client?
https://github.com/Pithikos/python-websocket-server
from websocket_server import WebsocketServer
# Called for every client connecting (after handshake)
def new_client(client, server):
print("New client connected and was given id %d" % client['id'])
server.send_message_to_all("Hey all, a new client has joined us")
# Called for every client disconnecting
def client_left(client, server):
print("Client(%d) disconnected" % client['id'])
# Called when a client sends a message
def message_received(client, server, message):
if len(message) > 200:
message = message[:200] + '..'
print("Client(%d) said: %s" % (client['id'], message))
PORT = 9001
server = WebsocketServer(PORT)
server.set_fn_new_client(new_client)
server.set_fn_client_left(client_left)
server.set_fn_message_received(message_received)
server.send_message_to_all("Hey all, a new client has joined us")
server.run_forever()
from websocket_server import WebsocketServer
import threading
# Called for every client connecting (after
# handshake)
def new_client(client, server):
print("New client connected and was given id
%d" % client['id'])
server.send_message_to_all("Hey all, a new
client has joined us")
d = threading.Thread(name='daemon',
target=_send_to_client , args=[client,
server])
d.setDaemon(True)
d.start()
# Called for a specific client when a server event
# such as a sensitive single is detected
def _send_to_client(client, server):
message = input()
print (message)
server.send_message(client,message)
d = threading.Thread(name='daemon',
target=_send_to_client , args=[client,
server])
d.setDaemon(True)
d.start()
# Called for every client disconnecting
def client_left(client, server):
print("Client(%d) disconnected" %
client['id'])
# Called when a client sends a message
def message_received(client, server, message):
if len(message) > 200:
message = message[:200]+'..'
print("Client(%d) said: %s" % (client['id'],
message))
PORT=9001
server = WebsocketServer(PORT)
server.set_fn_new_client(new_client)
server.set_fn_client_left(client_left)
server.set_fn_message_received(message_received)
server.run_forever()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.