diff options
author | Sonja Galovic <galovicsonja@gmail.com> | 2022-04-13 22:44:06 +0200 |
---|---|---|
committer | Sonja Galovic <galovicsonja@gmail.com> | 2022-04-13 22:44:06 +0200 |
commit | 5d856cf20177711074b473cc2d2133b85826fe63 (patch) | |
tree | c7029d75af6d53e40bf806c51f1f4fcfc2136104 /backend/microservice/ml_socket.py | |
parent | 3c4bfb16f55aa51a50ee99327caca639e072cdab (diff) | |
parent | 3cb8b60ed4e36f39187e64270479f472e08fb615 (diff) |
Merge branch 'dev' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into dev
Diffstat (limited to 'backend/microservice/ml_socket.py')
-rw-r--r-- | backend/microservice/ml_socket.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/backend/microservice/ml_socket.py b/backend/microservice/ml_socket.py new file mode 100644 index 00000000..c624ffaa --- /dev/null +++ b/backend/microservice/ml_socket.py @@ -0,0 +1,31 @@ +import asyncio +import websockets +import json + +def get_or_create_eventloop(): + try: + return asyncio.get_event_loop() + except RuntimeError as ex: + if "There is no current event loop in thread" in str(ex): + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) + return asyncio.get_event_loop() + +# create handler for each connection +async def handler(websocket, path): + #data = json.loads(await websocket.recv()) + #print(data['test']) + msg = await websocket.recv() + print(msg) + +async def start(): + start_server = websockets.serve(handler, "localhost", 5027) + print('Websocket starting...') + get_or_create_eventloop().run_until_complete(start_server) + get_or_create_eventloop().run_forever() + + +async def send(msg): + print("WS sending message:") + print(msg) + await websocket.send(msg) |