From f5353698644cedcdd881cd4976810a98e087d163 Mon Sep 17 00:00:00 2001 From: zbeacon Date: Wed, 5 Jan 2022 19:42:13 +0200 Subject: [PATCH] Updated requirements list, updated configurable parameter "handleDeviceRenaming" --- setup.py | 4 +++- thingsboard_gateway/config/tb_gateway.yaml | 1 + .../gateway/tb_gateway_service.py | 23 +++++++++++-------- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/setup.py b/setup.py index 435d5285..48dfb9b1 100644 --- a/setup.py +++ b/setup.py @@ -59,7 +59,9 @@ setup( 'requests', 'PyInquirer', 'pyfiglet', - 'termcolor' + 'termcolor', + 'grpcio', + 'protobuf' ], download_url='https://github.com/thingsboard/thingsboard-gateway/archive/%s.tar.gz' % VERSION, entry_points={ diff --git a/thingsboard_gateway/config/tb_gateway.yaml b/thingsboard_gateway/config/tb_gateway.yaml index 4ee7ea31..b44671e9 100644 --- a/thingsboard_gateway/config/tb_gateway.yaml +++ b/thingsboard_gateway/config/tb_gateway.yaml @@ -6,6 +6,7 @@ thingsboard: statsSendPeriodInSeconds: 3600 minPackSendDelayMS: 0 checkConnectorsConfigurationInSeconds: 60 + handleDeviceRenaming: true security: accessToken: PUT_YOUR_GW_ACCESS_TOKEN_HERE qos: 1 diff --git a/thingsboard_gateway/gateway/tb_gateway_service.py b/thingsboard_gateway/gateway/tb_gateway_service.py index d8b4a820..01297a38 100644 --- a/thingsboard_gateway/gateway/tb_gateway_service.py +++ b/thingsboard_gateway/gateway/tb_gateway_service.py @@ -339,17 +339,20 @@ class TBGatewayService: self.__load_persistent_devices() def __process_renamed_gateway_devices(self, renamed_device: dict): - log.info("Received renamed gateway device notification: %s", renamed_device) - old_device_name, new_device_name = renamed_device.popitem() - if old_device_name in list(self.__renamed_devices.values()): - device_name_key = TBUtility.get_dict_key_by_value(self.__renamed_devices, old_device_name) - else: - device_name_key = new_device_name - self.__renamed_devices[device_name_key] = new_device_name + if self.__config.get('handleDeviceRenaming', True): + log.info("Received renamed gateway device notification: %s", renamed_device) + old_device_name, new_device_name = renamed_device.popitem() + if old_device_name in list(self.__renamed_devices.values()): + device_name_key = TBUtility.get_dict_key_by_value(self.__renamed_devices, old_device_name) + else: + device_name_key = new_device_name + self.__renamed_devices[device_name_key] = new_device_name - self.__save_persistent_devices() - self.__load_persistent_devices() - log.debug("Current renamed_devices dict: %s", self.__renamed_devices) + self.__save_persistent_devices() + self.__load_persistent_devices() + log.debug("Current renamed_devices dict: %s", self.__renamed_devices) + else: + log.debug("Received renamed device notification %r, but device renaming handle is disabled", renamed_device) def __process_remote_configuration(self, new_configuration): if new_configuration is not None and self.__remote_configurator is not None: