core/homeassistant/components/freebox/const.py

97 lines
2.1 KiB
Python

"""Freebox component constants."""
from __future__ import annotations
import enum
import socket
from homeassistant.const import Platform
DOMAIN = "freebox"
SERVICE_REBOOT = "reboot"
APP_DESC = {
"app_id": "hass",
"app_name": "Home Assistant",
"app_version": "0.106",
"device_name": socket.gethostname(),
}
API_VERSION = "v6"
PLATFORMS = [
Platform.ALARM_CONTROL_PANEL,
Platform.BINARY_SENSOR,
Platform.BUTTON,
Platform.CAMERA,
Platform.DEVICE_TRACKER,
Platform.SENSOR,
Platform.SWITCH,
]
DEFAULT_DEVICE_NAME = "Unknown device"
# to store the cookie
STORAGE_KEY = DOMAIN
STORAGE_VERSION = 1
CONNECTION_SENSORS_KEYS = {"rate_down", "rate_up"}
# Icons
DEVICE_ICONS = {
"freebox_delta": "mdi:television-guide",
"freebox_hd": "mdi:television-guide",
"freebox_mini": "mdi:television-guide",
"freebox_player": "mdi:television-guide",
"ip_camera": "mdi:cctv",
"ip_phone": "mdi:phone-voip",
"laptop": "mdi:laptop",
"multimedia_device": "mdi:play-network",
"nas": "mdi:nas",
"networking_device": "mdi:network",
"printer": "mdi:printer",
"router": "mdi:router-wireless",
"smartphone": "mdi:cellphone",
"tablet": "mdi:tablet",
"television": "mdi:television",
"vg_console": "mdi:gamepad-variant",
"workstation": "mdi:desktop-tower-monitor",
}
ATTR_DETECTION = "detection"
# Home
class FreeboxHomeCategory(enum.StrEnum):
"""Freebox Home categories."""
ALARM = "alarm"
CAMERA = "camera"
DWS = "dws"
IOHOME = "iohome"
KFB = "kfb"
OPENER = "opener"
PIR = "pir"
RTS = "rts"
CATEGORY_TO_MODEL = {
FreeboxHomeCategory.PIR: "F-HAPIR01A",
FreeboxHomeCategory.CAMERA: "F-HACAM01A",
FreeboxHomeCategory.DWS: "F-HADWS01A",
FreeboxHomeCategory.KFB: "F-HAKFB01A",
FreeboxHomeCategory.ALARM: "F-MSEC07A",
FreeboxHomeCategory.RTS: "RTS",
FreeboxHomeCategory.IOHOME: "IOHome",
}
HOME_COMPATIBLE_CATEGORIES = [
FreeboxHomeCategory.ALARM,
FreeboxHomeCategory.CAMERA,
FreeboxHomeCategory.DWS,
FreeboxHomeCategory.IOHOME,
FreeboxHomeCategory.KFB,
FreeboxHomeCategory.PIR,
FreeboxHomeCategory.RTS,
]