switch added
This commit is contained in:
20
apps/abstraction/vendors/zigbee2mqtt.py
vendored
20
apps/abstraction/vendors/zigbee2mqtt.py
vendored
@@ -161,6 +161,24 @@ def transform_temp_humidity_sensor_to_abstract(payload: str) -> dict[str, Any]:
|
||||
return payload
|
||||
|
||||
|
||||
def transform_switch_to_vendor(payload: dict[str, Any]) -> str:
|
||||
"""Transform abstract switch payload to zigbee2mqtt format.
|
||||
|
||||
Switches are read-only, so this should not be called for SET commands.
|
||||
"""
|
||||
logger.warning("Switches are read-only - SET commands should not be used")
|
||||
return json.dumps(payload)
|
||||
|
||||
|
||||
def transform_switch_to_abstract(payload: str) -> dict[str, Any]:
|
||||
"""Transform zigbee2mqtt switch payload to abstract format.
|
||||
|
||||
Passthrough - zigbee2mqtt provides action, battery, linkquality directly.
|
||||
"""
|
||||
payload = json.loads(payload)
|
||||
return payload
|
||||
|
||||
|
||||
def transform_relay_to_vendor(payload: dict[str, Any]) -> str:
|
||||
"""Transform abstract relay payload to zigbee2mqtt format.
|
||||
|
||||
@@ -204,6 +222,8 @@ HANDLERS = {
|
||||
("temp_humidity_sensor", "to_abstract"): transform_temp_humidity_sensor_to_abstract,
|
||||
("temp_humidity", "to_vendor"): transform_temp_humidity_sensor_to_vendor,
|
||||
("temp_humidity", "to_abstract"): transform_temp_humidity_sensor_to_abstract,
|
||||
("switch", "to_vendor"): transform_switch_to_vendor,
|
||||
("switch", "to_abstract"): transform_switch_to_abstract,
|
||||
("relay", "to_vendor"): transform_relay_to_vendor,
|
||||
("relay", "to_abstract"): transform_relay_to_abstract,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user