Compare commits
1 Commits
separate_t
...
0.8.4
| Author | SHA1 | Date | |
|---|---|---|---|
|
f9df70cf68
|
15
apps/abstraction/vendors/hottis_pv_modbus.py
vendored
15
apps/abstraction/vendors/hottis_pv_modbus.py
vendored
@@ -23,17 +23,12 @@ def transform_relay_to_vendor(payload: dict[str, Any]) -> str:
|
||||
def transform_relay_to_abstract(payload: str) -> dict[str, Any]:
|
||||
"""Transform Hottis Modbus relay payload to abstract format.
|
||||
|
||||
Hottis Modbus sends JSON like:
|
||||
{"status": "Ok", "timestamp": "...", "state": false, "cnt": 528}
|
||||
|
||||
Transformations:
|
||||
- state: true -> power: 'on'
|
||||
- state: false -> power: 'off'
|
||||
Hottis Modbus sends plain text 'on' or 'off'.
|
||||
Example:
|
||||
- Hottis PV Modbus: 'on'
|
||||
- Abstract: {'power': 'on'}
|
||||
"""
|
||||
data = json.loads(payload)
|
||||
state = data.get("state", False)
|
||||
power = "on" if bool(state) else "off"
|
||||
return {"power": power}
|
||||
return {"power": payload.strip()}
|
||||
|
||||
|
||||
def transform_three_phase_powermeter_to_vendor(payload: dict[str, Any]) -> str:
|
||||
|
||||
Reference in New Issue
Block a user