import asyncio import websockets counter = 0 connected_clients = set() async def counter_server(websocket, path): global counter connected_clients.add(websocket) try: await websocket.send(str(counter)) async for message in websocket: if message == 'increment': counter += 1 # Отправляем обновление счетчика всем клиентам await asyncio.gather(*[client.send(str(counter)) for client in connected_clients]) finally: connected_clients.remove(websocket) def run_server(): PORT = 8765 start_server = websockets.serve(counter_server, "178.44.100.206", PORT) asyncio.get_event_loop().run_until_complete(start_server) print(f'Server started on ws://http://178.44.100.206/:{PORT}') asyncio.get_event_loop().run_forever() if __name__ == '__main__': run_server()