From c7dbe8e8fea97c93ba1c05983f68cd2b9fe9f2d4 Mon Sep 17 00:00:00 2001 From: samson0v Date: Wed, 30 Oct 2024 09:01:43 +0200 Subject: [PATCH] Fixed adding metadata --- tb_device_mqtt.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tb_device_mqtt.py b/tb_device_mqtt.py index 50e4f47..a6c7a2c 100644 --- a/tb_device_mqtt.py +++ b/tb_device_mqtt.py @@ -837,13 +837,13 @@ def _send_request(self, _type, kwargs, timeout=DEFAULT_TIMEOUT, device=None, return self._client.unsubscribe(**kwargs) def __add_metadata_to_data_dict_from_device(self, data): - if isinstance(data, dict) and "metadata" in data: + if isinstance(data, dict) and ("metadata" in data and isinstance(data["metadata"], dict)): data["metadata"]["publishedTs"] = int(timestamp() * 1000) elif isinstance(data, list): current_time = int(timestamp() * 1000) for data_item in data: if isinstance(data_item, dict): - if 'ts' in data_item and 'metadata' in data_item: + if 'ts' in data_item and ('metadata' in data_item and isinstance(data_item["metadata"], dict)): data_item["metadata"]["publishedTs"] = current_time elif isinstance(data, dict): for key, value in data.items():