From 467602aec332add0f07e7d3fbaf4d216117a8bc2 Mon Sep 17 00:00:00 2001 From: Ziad-I <68874104+Ziad-I@users.noreply.github.com> Date: Thu, 13 Jun 2024 17:41:51 +0300 Subject: [PATCH] add sending messages to server in web tool --- src/blenderbim/blenderbim/tool/web.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/blenderbim/blenderbim/tool/web.py b/src/blenderbim/blenderbim/tool/web.py index 51a0602c6a..1fd2a95847 100644 --- a/src/blenderbim/blenderbim/tool/web.py +++ b/src/blenderbim/blenderbim/tool/web.py @@ -96,6 +96,18 @@ class Web(blenderbim.core.tool.Web): print("Webserver terminated successfully") + @classmethod + def send_webui_data(cls): + global ws_thread + data = cls.get_webui_data() + ws_thread.run_coro(cls.sio_send(data)) + + @classmethod + def get_webui_data(cls): + data = {} + data["ifc_file"] = bpy.context.scene.BIMProperties.ifc_file + return json.dumps(data) + @classmethod async def sio_connect(cls, url): await sio.connect(url, transports=["websocket"], namespaces="/blender") @@ -110,8 +122,8 @@ class Web(blenderbim.core.tool.Web): await sio.disconnect() @classmethod - async def sio_send(cls, message): - await sio.emit("data", {"from": "client"}, namespace="/blender") + async def sio_send(cls, data): + await sio.emit("data", data, namespace="/blender") @classmethod def set_is_running(cls, is_running): @@ -121,12 +133,6 @@ class Web(blenderbim.core.tool.Web): def set_is_connected(cls, is_connected): bpy.context.scene.WebProperties.is_connected = is_connected - @classmethod - def get_webui_data(cls): - data = {} - data["ifc_file"] = bpy.context.scene.BIMProperties.ifc_file - return json.dumps(data) - class AsyncioThread(threading.Thread): def __init__(self, *args, loop=None, **kwargs):