1 | #!/usr/bin/env python
|
2 |
|
3 | # https://websockets.readthedocs.io/en/stable/intro.html#browser-based-example
|
4 |
|
5 | # simple slider example with socket server
|
6 |
|
7 | import asyncio
|
8 | import json
|
9 | import websockets
|
10 |
|
11 | async def receiver(websocket, path):
|
12 | try:
|
13 | message=await websocket.recv()
|
14 | async for message in websocket:
|
15 | data = json.loads(message)
|
16 | if data["action"] == "slider1":
|
17 | print('slider received')
|
18 | print(data)
|
19 | val=data['value']
|
20 |
|
21 | msg2browser = json.dumps({"type": "slider1", "value": val})
|
22 | await websocket.send(msg2browser)
|
23 |
|
24 | else:
|
25 | logging.error("unsupported event: %s", data)
|
26 | finally:
|
27 | print("error: nothing received")
|
28 |
|
29 |
|
30 | start_server = websockets.serve(receiver, "localhost", 6789)
|
31 |
|
32 | asyncio.get_event_loop().run_until_complete(start_server)
|
33 | asyncio.get_event_loop().run_forever()
|