Jelajahi Sumber

First read of sensors

DebenOldert 6 bulan lalu
induk
melakukan
fde8294574

+ 1 - 1
custom_components/odido_klikklaar/__init__.py

@@ -16,7 +16,7 @@ from .coordinator import RouterCoordinator
 
 _LOGGER = logging.getLogger(__name__)
 
-PLATFORMS: list[Platform] = Platform.SENSOR
+PLATFORMS: list[Platform] = [Platform.SENSOR]
                              #[#Platform.BINARY_SENSOR,
                              #Platform.SENSOR,
                              #Platform.BUTTON,

+ 1 - 1
custom_components/odido_klikklaar/coordinator.py

@@ -120,7 +120,7 @@ class RouterCoordinator(DataUpdateCoordinator):
                     serial_number=['SerialNumber'],
                 )
 
-                return RouterAPIData(data)
+                return data
 
         except RouterAPIAuthError as err:
             _LOGGER.error(err)

+ 6 - 5
custom_components/odido_klikklaar/sensor.py

@@ -28,7 +28,7 @@ from .const import (DOMAIN,
                     EP_CELLINFO,
                     EP_DEVICESTATUS,
                     EP_LANINFO)
-from .coordinator import RouterDataUpdateCoordinator
+from .coordinator import RouterCoordinator
 
 
 @dataclass(kw_only=True, frozen=True)
@@ -88,7 +88,7 @@ DESCRIPTIONS: list[RouterSensorDescription] = [
     RouterSensorDescription(
         key='network_band',
         icon='mdi:signal-5g',
-        value_fn=lambda coordinator: coordinator.get_value(EP_CELLINFO, ["CellIntfInfo", "CurrentAccessTechnology"]),
+        value_fn=lambda coordinator: coordinator.get_value(EP_CELLINFO, ["CellIntfInfo", "X_ZYXEL_CurrentBand"]),
         translation_key='network_band',
         entity_registry_enabled_default=False,
     ),
@@ -108,7 +108,8 @@ async def async_setup_entry(
 ) -> None:
     """Set up Router sensors based on a config entry."""
     conf_name = entry.data.get(CONF_NAME)
-    coordinator = hass.data[DOMAIN][entry.entry_id]
+    coordinator = entry.runtime_data.coordinator
+    #coordinator = hass.data[DOMAIN][entry.entry_id]
 
     entities: list[RouterSensor] = []
 
@@ -125,7 +126,7 @@ async def async_setup_entry(
     async_add_entities(entities)
 
 
-class RouterSensor(CoordinatorEntity[RouterDataUpdateCoordinator], SensorEntity):
+class RouterSensor(CoordinatorEntity[RouterCoordinator], SensorEntity):
     """Defines a Router sensor."""
 
     _attr_has_entity_name = True
@@ -134,7 +135,7 @@ class RouterSensor(CoordinatorEntity[RouterDataUpdateCoordinator], SensorEntity)
     def __init__(
         self,
         conf_name: str,
-        coordinator: RouterDataUpdateCoordinator,
+        coordinator: RouterCoordinator,
         description: SensorEntityDescription,
     ) -> None:
         """Initialize Router sensor."""

+ 10 - 0
custom_components/odido_klikklaar/strings.json

@@ -37,5 +37,15 @@
         "title": "Example Integration Options"
       }
     }
+  },
+  "entity": {
+    "sensor": {
+      "rssi": { "name": "Received Signal Strength Indicator" },
+      "rsrq": { "name": "Received Signal Received Quality" },
+      "rsrp": { "name": "Received Signal Received Power" },
+      "sinr": { "name": "Signal To Noise Ratio" },
+      "network_technology": { "name": "Network Technology" },
+      "network_band": { "name": "Network Band" }
+    }
   }
 }

+ 10 - 0
custom_components/odido_klikklaar/translations/en.json

@@ -37,5 +37,15 @@
         "title": "Example Integration Options"
       }
     }
+  },
+  "entity": {
+    "sensor": {
+      "rssi": { "name": "Received Signal Strength Indicator" },
+      "rsrq": { "name": "Received Signal Received Quality" },
+      "rsrp": { "name": "Received Signal Received Power" },
+      "sinr": { "name": "Signal To Noise Ratio" },
+      "network_technology": { "name": "Network Technology" },
+      "network_band": { "name": "Network Band" }
+    }
   }
 }