Starchik1 commited on
Commit
3be1591
·
verified ·
1 Parent(s): 8314535

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -0
app.py ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import asyncio
2
+ import websockets
3
+
4
+ clients = set()
5
+
6
+ async def handler(websocket, path):
7
+ clients.add(websocket)
8
+ try:
9
+ while True:
10
+ data = await websocket.recv()
11
+ if data:
12
+ # Рассылаем полученные данные всем подключенным клиентам
13
+ await asyncio.wait([client.send(data) for client in clients])
14
+ except websockets.exceptions.ConnectionClosed:
15
+ pass
16
+ finally:
17
+ clients.remove(websocket)
18
+
19
+ async def main():
20
+ server = await websockets.serve(handler, "0.0.0.0", 12345)
21
+ print("WebSocket сервер запущен на порту 12345")
22
+ await server.wait_closed()
23
+
24
+ if __name__ == "__main__":
25
+ asyncio.run(main())