"""Device handler for centralite 3157100.""" from zigpy.profiles import zha from zigpy.quirks import CustomDevice from zigpy.zcl.clusters.general import Basic, Identify, Ota, PollControl, Time from zigpy.zcl.clusters.homeautomation import Diagnostic from zigpy.zcl.clusters.hvac import Fan, Thermostat, UserInterface from zhaquirks import PowerConfigurationCluster from zhaquirks.centralite import CENTRALITE from zhaquirks.const import ( DEVICE_TYPE, ENDPOINTS, INPUT_CLUSTERS, MODELS_INFO, OUTPUT_CLUSTERS, PROFILE_ID, ) class CentraLite3157100(CustomDevice): """Custom device representing centralite 3157100.""" signature = { # MODELS_INFO: [ (CENTRALITE, "3157100"), ("Centralite", "3157100"), (CENTRALITE, "3157100-E"), ("Centralite", "3157100-E"), ], ENDPOINTS: { 1: { PROFILE_ID: zha.PROFILE_ID, DEVICE_TYPE: zha.DeviceType.THERMOSTAT, INPUT_CLUSTERS: [ Basic.cluster_id, PowerConfigurationCluster.cluster_id, Identify.cluster_id, Thermostat.cluster_id, Fan.cluster_id, UserInterface.cluster_id, PollControl.cluster_id, Diagnostic.cluster_id, ], OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id], } }, } replacement = { ENDPOINTS: { 1: { PROFILE_ID: zha.PROFILE_ID, DEVICE_TYPE: zha.DeviceType.THERMOSTAT, INPUT_CLUSTERS: [ Basic.cluster_id, PowerConfigurationCluster, Identify.cluster_id, Thermostat.cluster_id, Fan.cluster_id, UserInterface.cluster_id, PollControl.cluster_id, Diagnostic.cluster_id, ], OUTPUT_CLUSTERS: [Time.cluster_id, Ota.cluster_id], } } }