diff --git a/homeassistant/components/android_ip_webcam/icons.json b/homeassistant/components/android_ip_webcam/icons.json new file mode 100644 index 00000000000..9fa537705e2 --- /dev/null +++ b/homeassistant/components/android_ip_webcam/icons.json @@ -0,0 +1,62 @@ +{ + "entity": { + "sensor": { + "audio_connections": { + "default": "mdi:speaker" + }, + "battery_temperature": { + "default": "mdi:thermometer" + }, + "light": { + "default": "mdi:flashlight" + }, + "motion": { + "default": "mdi:run" + }, + "pressure": { + "default": "mdi:gauge" + }, + "proximity": { + "default": "mdi:map-marker-radius" + }, + "sound": { + "default": "mdi:speaker" + }, + "video_connections": { + "default": "mdi:eye" + } + }, + "switch": { + "exposure_lock": { + "default": "mdi:camera" + }, + "ffc": { + "default": "mdi:camera-front-variant" + }, + "focus": { + "default": "mdi:image-filter-center-focus" + }, + "gps_active": { + "default": "mdi:crosshairs-gps" + }, + "motion_detect": { + "default": "mdi:flash" + }, + "night_vision": { + "default": "mdi:weather-night" + }, + "overlay": { + "default": "mdi:monitor" + }, + "torch": { + "default": "mdi:white-balance-sunny" + }, + "whitebalance_lock": { + "default": "mdi:white-balance-auto" + }, + "video_recording": { + "default": "mdi:record-rec" + } + } + } +} diff --git a/homeassistant/components/android_ip_webcam/sensor.py b/homeassistant/components/android_ip_webcam/sensor.py index d7a821d956a..e55112b7259 100644 --- a/homeassistant/components/android_ip_webcam/sensor.py +++ b/homeassistant/components/android_ip_webcam/sensor.py @@ -42,8 +42,8 @@ class AndroidIPWebcamSensorEntityDescription( SENSOR_TYPES: tuple[AndroidIPWebcamSensorEntityDescription, ...] = ( AndroidIPWebcamSensorEntityDescription( key="audio_connections", + translation_key="audio_connections", name="Audio connections", - icon="mdi:speaker", state_class=SensorStateClass.TOTAL, entity_category=EntityCategory.DIAGNOSTIC, value_fn=lambda ipcam: ipcam.status_data.get("audio_connections"), @@ -59,8 +59,8 @@ SENSOR_TYPES: tuple[AndroidIPWebcamSensorEntityDescription, ...] = ( ), AndroidIPWebcamSensorEntityDescription( key="battery_temp", + translation_key="battery_temperature", name="Battery temperature", - icon="mdi:thermometer", state_class=SensorStateClass.MEASUREMENT, entity_category=EntityCategory.DIAGNOSTIC, value_fn=lambda ipcam: ipcam.get_sensor_value("battery_temp"), @@ -76,48 +76,48 @@ SENSOR_TYPES: tuple[AndroidIPWebcamSensorEntityDescription, ...] = ( ), AndroidIPWebcamSensorEntityDescription( key="light", + translation_key="light", name="Light level", - icon="mdi:flashlight", state_class=SensorStateClass.MEASUREMENT, value_fn=lambda ipcam: ipcam.get_sensor_value("light"), unit_fn=lambda ipcam: ipcam.get_sensor_unit("light"), ), AndroidIPWebcamSensorEntityDescription( key="motion", + translation_key="motion", name="Motion", - icon="mdi:run", state_class=SensorStateClass.MEASUREMENT, value_fn=lambda ipcam: ipcam.get_sensor_value("motion"), unit_fn=lambda ipcam: ipcam.get_sensor_unit("motion"), ), AndroidIPWebcamSensorEntityDescription( key="pressure", + translation_key="pressure", name="Pressure", - icon="mdi:gauge", state_class=SensorStateClass.MEASUREMENT, value_fn=lambda ipcam: ipcam.get_sensor_value("pressure"), unit_fn=lambda ipcam: ipcam.get_sensor_unit("pressure"), ), AndroidIPWebcamSensorEntityDescription( key="proximity", + translation_key="proximity", name="Proximity", - icon="mdi:map-marker-radius", state_class=SensorStateClass.MEASUREMENT, value_fn=lambda ipcam: ipcam.get_sensor_value("proximity"), unit_fn=lambda ipcam: ipcam.get_sensor_unit("proximity"), ), AndroidIPWebcamSensorEntityDescription( key="sound", + translation_key="sound", name="Sound", - icon="mdi:speaker", state_class=SensorStateClass.MEASUREMENT, value_fn=lambda ipcam: ipcam.get_sensor_value("sound"), unit_fn=lambda ipcam: ipcam.get_sensor_unit("sound"), ), AndroidIPWebcamSensorEntityDescription( key="video_connections", + translation_key="video_connections", name="Video connections", - icon="mdi:eye", state_class=SensorStateClass.TOTAL, entity_category=EntityCategory.DIAGNOSTIC, value_fn=lambda ipcam: ipcam.status_data.get("video_connections"), diff --git a/homeassistant/components/android_ip_webcam/switch.py b/homeassistant/components/android_ip_webcam/switch.py index bae84739079..d2a40cb619a 100644 --- a/homeassistant/components/android_ip_webcam/switch.py +++ b/homeassistant/components/android_ip_webcam/switch.py @@ -36,80 +36,80 @@ class AndroidIPWebcamSwitchEntityDescription( SWITCH_TYPES: tuple[AndroidIPWebcamSwitchEntityDescription, ...] = ( AndroidIPWebcamSwitchEntityDescription( key="exposure_lock", + translation_key="exposure_lock", name="Exposure lock", - icon="mdi:camera", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("exposure_lock", True), off_func=lambda ipcam: ipcam.change_setting("exposure_lock", False), ), AndroidIPWebcamSwitchEntityDescription( key="ffc", + translation_key="ffc", name="Front-facing camera", - icon="mdi:camera-front-variant", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("ffc", True), off_func=lambda ipcam: ipcam.change_setting("ffc", False), ), AndroidIPWebcamSwitchEntityDescription( key="focus", + translation_key="focus", name="Focus", - icon="mdi:image-filter-center-focus", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.focus(activate=True), off_func=lambda ipcam: ipcam.focus(activate=False), ), AndroidIPWebcamSwitchEntityDescription( key="gps_active", + translation_key="gps_active", name="GPS active", - icon="mdi:crosshairs-gps", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("gps_active", True), off_func=lambda ipcam: ipcam.change_setting("gps_active", False), ), AndroidIPWebcamSwitchEntityDescription( key="motion_detect", + translation_key="motion_detect", name="Motion detection", - icon="mdi:flash", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("motion_detect", True), off_func=lambda ipcam: ipcam.change_setting("motion_detect", False), ), AndroidIPWebcamSwitchEntityDescription( key="night_vision", + translation_key="night_vision", name="Night vision", - icon="mdi:weather-night", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("night_vision", True), off_func=lambda ipcam: ipcam.change_setting("night_vision", False), ), AndroidIPWebcamSwitchEntityDescription( key="overlay", + translation_key="overlay", name="Overlay", - icon="mdi:monitor", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("overlay", True), off_func=lambda ipcam: ipcam.change_setting("overlay", False), ), AndroidIPWebcamSwitchEntityDescription( key="torch", + translation_key="torch", name="Torch", - icon="mdi:white-balance-sunny", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.torch(activate=True), off_func=lambda ipcam: ipcam.torch(activate=False), ), AndroidIPWebcamSwitchEntityDescription( key="whitebalance_lock", + translation_key="whitebalance_lock", name="White balance lock", - icon="mdi:white-balance-auto", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.change_setting("whitebalance_lock", True), off_func=lambda ipcam: ipcam.change_setting("whitebalance_lock", False), ), AndroidIPWebcamSwitchEntityDescription( key="video_recording", + translation_key="video_recording", name="Video recording", - icon="mdi:record-rec", entity_category=EntityCategory.CONFIG, on_func=lambda ipcam: ipcam.record(record=True), off_func=lambda ipcam: ipcam.record(record=False),