|
1 | 1 | """Tuya temp and humidity sensors."""
|
2 | 2 |
|
3 |
| -from collections.abc import Callable |
4 |
| -from typing import Any, Optional, Union |
| 3 | +from typing import Any |
5 | 4 |
|
6 | 5 | from zigpy.profiles import zha
|
7 | 6 | from zigpy.quirks import CustomDevice
|
8 |
| -from zigpy.quirks.v2 import QuirkBuilder, QuirksV2RegistryEntry |
9 | 7 | from zigpy.zcl.clusters.general import Basic, Groups, Ota, Scenes, Time
|
10 | 8 | from zigpy.zcl.clusters.measurement import (
|
11 | 9 | RelativeHumidity,
|
|
23 | 21 | SKIP_CONFIGURATION,
|
24 | 22 | )
|
25 | 23 | from zhaquirks.tuya import TuyaLocalCluster, TuyaPowerConfigurationCluster2AAA
|
26 |
| -from zhaquirks.tuya.mcu import DPToAttributeMapping, TuyaMCUCluster |
| 24 | +from zhaquirks.tuya.mcu import DPToAttributeMapping, TuyaMCUCluster, TuyaQuirkBuilder |
27 | 25 |
|
28 | 26 |
|
29 | 27 | class TuyaTemperatureMeasurement(TemperatureMeasurement, TuyaLocalCluster):
|
@@ -336,65 +334,6 @@ class TuyaTempHumiditySensorVar04(CustomDevice):
|
336 | 334 | }
|
337 | 335 |
|
338 | 336 |
|
339 |
| -class TuyaQuirkBuilder(QuirkBuilder): |
340 |
| - """Tuya QuirkBuilder.""" |
341 |
| - |
342 |
| - tuya_attributes = TuyaMCUCluster.attributes.copy() |
343 |
| - tuya_data_point_handlers: dict[int, str] = {} |
344 |
| - tuya_dp_to_attribute: dict[int, DPToAttributeMapping] = {} |
345 |
| - |
346 |
| - def add_tuya_dp( |
347 |
| - self, |
348 |
| - dp_id: int, |
349 |
| - ep_attribute: str, |
350 |
| - attribute_name: Union[str, tuple], |
351 |
| - converter: Optional[ |
352 |
| - Callable[ |
353 |
| - [ |
354 |
| - Any, |
355 |
| - ], |
356 |
| - Any, |
357 |
| - ] |
358 |
| - ] = None, |
359 |
| - dp_converter: Optional[ |
360 |
| - Callable[ |
361 |
| - [ |
362 |
| - Any, |
363 |
| - ], |
364 |
| - Any, |
365 |
| - ] |
366 |
| - ] = None, |
367 |
| - endpoint_id: Optional[int] = None, |
368 |
| - dp_handler: str = "_dp_2_attr_update", |
369 |
| - ): |
370 |
| - """Add Tuya DP Converter.""" |
371 |
| - self.tuya_dp_to_attribute.update( |
372 |
| - { |
373 |
| - dp_id: DPToAttributeMapping( |
374 |
| - ep_attribute, |
375 |
| - attribute_name, |
376 |
| - converter=converter, |
377 |
| - dp_converter=dp_converter, |
378 |
| - endpoint_id=endpoint_id, |
379 |
| - ) |
380 |
| - } |
381 |
| - ) |
382 |
| - self.tuya_data_point_handlers.update({dp_id: dp_handler}) |
383 |
| - return self |
384 |
| - |
385 |
| - def add_to_registry(self) -> QuirksV2RegistryEntry: |
386 |
| - """Build the quirks v2 registry entry.""" |
387 |
| - |
388 |
| - class TuyaReplacementCluster(TuyaMCUCluster): |
389 |
| - """Replacement Tuya Cluster.""" |
390 |
| - |
391 |
| - data_point_handlers: dict[int, str] = self.tuya_data_point_handlers |
392 |
| - dp_to_attribute: dict[int, DPToAttributeMapping] = self.tuya_dp_to_attribute |
393 |
| - |
394 |
| - self.replaces(TuyaReplacementCluster) |
395 |
| - return super().add_to_registry() |
396 |
| - |
397 |
| - |
398 | 337 | (
|
399 | 338 | TuyaQuirkBuilder("_TZE284_aao3yzhs", "TS0601")
|
400 | 339 | .also_applies_to("_TZE284_sgabhwa6", "TS0601")
|
|
0 commit comments