Fix: Shelly Gen2 - filter unsupported sensors (#57065)
This commit is contained in:
parent
08cebb247f
commit
c8dc5d15ee
3 changed files with 31 additions and 21 deletions
|
@ -242,51 +242,56 @@ REST_SENSORS: Final = {
|
|||
RPC_SENSORS: Final = {
|
||||
"power": RpcAttributeDescription(
|
||||
key="switch",
|
||||
sub_key="apower",
|
||||
name="Power",
|
||||
unit=POWER_WATT,
|
||||
value=lambda status, _: round(float(status["apower"]), 1),
|
||||
value=lambda status, _: round(float(status), 1),
|
||||
device_class=sensor.DEVICE_CLASS_POWER,
|
||||
state_class=sensor.STATE_CLASS_MEASUREMENT,
|
||||
),
|
||||
"voltage": RpcAttributeDescription(
|
||||
key="switch",
|
||||
sub_key="voltage",
|
||||
name="Voltage",
|
||||
unit=ELECTRIC_POTENTIAL_VOLT,
|
||||
value=lambda status, _: round(float(status["voltage"]), 1),
|
||||
value=lambda status, _: round(float(status), 1),
|
||||
device_class=sensor.DEVICE_CLASS_VOLTAGE,
|
||||
state_class=sensor.STATE_CLASS_MEASUREMENT,
|
||||
default_enabled=False,
|
||||
),
|
||||
"energy": RpcAttributeDescription(
|
||||
key="switch",
|
||||
sub_key="aenergy",
|
||||
name="Energy",
|
||||
unit=ENERGY_KILO_WATT_HOUR,
|
||||
value=lambda status, _: round(status["aenergy"]["total"] / 1000, 2),
|
||||
value=lambda status, _: round(status["total"] / 1000, 2),
|
||||
device_class=sensor.DEVICE_CLASS_ENERGY,
|
||||
state_class=sensor.STATE_CLASS_TOTAL_INCREASING,
|
||||
),
|
||||
"temperature": RpcAttributeDescription(
|
||||
key="switch",
|
||||
sub_key="temperature",
|
||||
name="Temperature",
|
||||
unit=TEMP_CELSIUS,
|
||||
value=lambda status, _: round(status["temperature"]["tC"], 1),
|
||||
value=lambda status, _: round(status["tC"], 1),
|
||||
device_class=sensor.DEVICE_CLASS_TEMPERATURE,
|
||||
state_class=sensor.STATE_CLASS_MEASUREMENT,
|
||||
default_enabled=False,
|
||||
),
|
||||
"rssi": RpcAttributeDescription(
|
||||
key="wifi",
|
||||
sub_key="rssi",
|
||||
name="RSSI",
|
||||
unit=SIGNAL_STRENGTH_DECIBELS_MILLIWATT,
|
||||
value=lambda status, _: status["rssi"],
|
||||
device_class=sensor.DEVICE_CLASS_SIGNAL_STRENGTH,
|
||||
state_class=sensor.STATE_CLASS_MEASUREMENT,
|
||||
default_enabled=False,
|
||||
),
|
||||
"uptime": RpcAttributeDescription(
|
||||
key="sys",
|
||||
sub_key="uptime",
|
||||
name="Uptime",
|
||||
value=lambda status, last: get_device_uptime(status["uptime"], last),
|
||||
value=get_device_uptime,
|
||||
device_class=sensor.DEVICE_CLASS_TIMESTAMP,
|
||||
default_enabled=False,
|
||||
),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue