Added Alexa Music

This commit is contained in:
2026-07-17 10:12:15 -04:00
parent 92c5268dc8
commit 28a8cb98f6
757 changed files with 151171 additions and 85450 deletions
+23 -7
View File
@@ -35,6 +35,7 @@ from homeassistant.const import (
UnitOfVolumetricFlux,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.device_registry import DeviceEntryType, DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import DiscoveryInfoType, StateType
from homeassistant.util import dt as dt_util
@@ -44,6 +45,7 @@ from .const import (
DEFAULT_SCAN_INTERVAL,
DOMAIN,
ENTRY_WEATHER_COORDINATOR,
MANUFACTURER,
PW_PLATFORM,
PW_PLATFORMS,
PW_PREVPLATFORM,
@@ -631,6 +633,15 @@ SENSOR_TYPES: dict[str, PirateWeatherSensorEntityDescription] = {
icon="mdi:weather-sunny",
forecast_mode=["currently", "hourly", "daily"],
),
"air_quality_index": PirateWeatherSensorEntityDescription(
key="air_quality_index",
name="Air Quality Index",
device_class=SensorDeviceClass.AQI,
state_class=SensorStateClass.MEASUREMENT,
suggested_display_precision=0,
icon="mdi:air-filter",
forecast_mode=["currently", "hourly", "daily"],
),
"cape": PirateWeatherSensorEntityDescription(
key="cape",
name="Convective Available Potential Energy",
@@ -1020,6 +1031,7 @@ async def async_setup_entry(
conditions = domain_data[CONF_MONITORED_CONDITIONS]
forecast_days = domain_data[CONF_FORECAST]
forecast_hours = domain_data[CONF_HOURLY_FORECAST]
service_id = config_entry.unique_id or config_entry.entry_id
# Round Output
outputRound = domain_data[PW_ROUND]
@@ -1051,6 +1063,7 @@ async def async_setup_entry(
description=sensorDescription,
requestUnits=requestUnits,
outputRound=outputRound,
service_id=service_id,
)
)
@@ -1070,6 +1083,7 @@ async def async_setup_entry(
description=sensorDescription,
requestUnits=requestUnits,
outputRound=outputRound,
service_id=service_id,
)
)
@@ -1089,6 +1103,7 @@ async def async_setup_entry(
description=sensorDescription,
requestUnits=requestUnits,
outputRound=outputRound,
service_id=service_id,
)
)
@@ -1113,6 +1128,7 @@ class PirateWeatherSensor(SensorEntity):
description: PirateWeatherSensorEntityDescription,
requestUnits: str,
outputRound: str,
service_id: str,
) -> None:
"""Initialize the sensor."""
self.client_name = name
@@ -1124,13 +1140,12 @@ class PirateWeatherSensor(SensorEntity):
self._attr_unique_id = unique_id
self._attr_name = name
# self._attr_device_info = DeviceInfo(
# entry_type=DeviceEntryType.SERVICE,
# identifiers={(DOMAIN, unique_id)},
# manufacturer=MANUFACTURER,
# name=DEFAULT_NAME,
# )
self._attr_device_info = DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={(DOMAIN, service_id)},
manufacturer=MANUFACTURER,
name=name,
)
self.forecast_day = forecast_day
self.forecast_hour = forecast_hour
@@ -1370,6 +1385,7 @@ class PirateWeatherSensor(SensorEntity):
"fire_index",
"fire_index_max",
"uv_index",
"air_quality_index",
"wind_speed",
"wind_gust",
"visibility",