refactor(warnings): report raw signal only, align meta key naming
get_device_warnings() now returns only {code, meta} — severity, title,
message, and action are resolved centrally by netork's
WARNING_CATALOG (netork/core/device_warnings.py), not by the driver.
Also renames meta.version -> meta.latest_version for
firmware_update_available so it matches the netgear driver's shape and
the shared catalog message template.
This commit is contained in:
@@ -411,9 +411,7 @@ class FritzBoxDriver(ResidentialGatewayDriver):
|
|||||||
if ui_info.get("NewX_AVM-DE_UpdateState", "") == "Available":
|
if ui_info.get("NewX_AVM-DE_UpdateState", "") == "Available":
|
||||||
warnings.append({
|
warnings.append({
|
||||||
"code": "firmware_update_available",
|
"code": "firmware_update_available",
|
||||||
"severity": "info",
|
"meta": {"latest_version": ui_info.get("NewX_AVM-DE_Version", "")},
|
||||||
"action": None,
|
|
||||||
"meta": {"version": ui_info.get("NewX_AVM-DE_Version", "")},
|
|
||||||
})
|
})
|
||||||
except _OPTIONAL_SERVICE_ERRORS:
|
except _OPTIONAL_SERVICE_ERRORS:
|
||||||
pass
|
pass
|
||||||
@@ -424,12 +422,7 @@ class FritzBoxDriver(ResidentialGatewayDriver):
|
|||||||
# SNR margin is in dB×10; < 60 means < 6 dB — borderline line quality
|
# SNR margin is in dB×10; < 60 means < 6 dB — borderline line quality
|
||||||
snr_down = int(_to_float(info.get("NewDownstreamNoiseMargin")))
|
snr_down = int(_to_float(info.get("NewDownstreamNoiseMargin")))
|
||||||
if 0 < snr_down < 60:
|
if 0 < snr_down < 60:
|
||||||
warnings.append({
|
warnings.append({"code": "dsl_snr_low", "meta": {"snr_db_x10": snr_down}})
|
||||||
"code": "dsl_snr_low",
|
|
||||||
"severity": "warning",
|
|
||||||
"action": None,
|
|
||||||
"meta": {"snr_db_x10": snr_down},
|
|
||||||
})
|
|
||||||
except _OPTIONAL_SERVICE_ERRORS:
|
except _OPTIONAL_SERVICE_ERRORS:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user