diff --git a/app/internal/command_endpoints/ha_ws.py b/app/internal/command_endpoints/ha_ws.py index 3a8a5c2..455efa8 100644 --- a/app/internal/command_endpoints/ha_ws.py +++ b/app/internal/command_endpoints/ha_ws.py @@ -104,12 +104,14 @@ async def cb_msg(self, msg): self.log.debug(self.connmap[id]) if self.app.wac_enabled: + if self.connmap[id]["final"]: + return wac_success, wac_command = wac_search(command) if wac_success: jsondata = self.connmap[id]["jsondata"] jsondata["text"] = wac_command - self.send(jsondata, ws) + self.send(jsondata, ws, True) self.connmap.pop(id) return else: @@ -130,11 +132,12 @@ async def cb_msg(self, msg): def parse_response(self, response): return None - def send(self, jsondata, ws): + def send(self, jsondata, ws, final=False): id = int(time.time() * 1000) if id not in self.connmap: self.connmap[id] = { + 'final': final, 'jsondata': copy(jsondata), 'ws': ws, }