From 9f94e8cb6bf5239278d6d32426bba042f321ebc1 Mon Sep 17 00:00:00 2001 From: gluap Date: Sat, 1 Jan 2022 15:10:07 +0100 Subject: [PATCH] Zeroconf browser (which we use to find the ess) seems to run more reliably when called synchronously. --- pyess/essmqtt.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pyess/essmqtt.py b/pyess/essmqtt.py index 853eca8..51e5c0d 100644 --- a/pyess/essmqtt.py +++ b/pyess/essmqtt.py @@ -104,7 +104,8 @@ def main(arguments=None): # .run(_main, arguments) -async def _main(arguments=None): +async def _main( arguments=None): + loop = asyncio.get_event_loop() parser = configargparse.ArgumentParser(prog='essmqtt', description='Mqtt connector for pyess', add_config_file_help=True, default_config_files=['/etc/essmqtt.conf', '~/.essmqtt.conf'], @@ -130,7 +131,7 @@ async def _main(arguments=None): args = parser.parse_args(arguments) if args.ess_host is None: - ip, name = autodetect_ess() + ip, name = await loop.run_in_executor(None, autodetect_ess) else: ip, name = args.ess_host, args.ess_host