Migrate Vulcan to has entity name (#99020)

This commit is contained in:
Joost Lekkerkerker 2023-10-09 14:41:30 +02:00 committed by GitHub
parent 6393171fa4
commit b9090452de
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 9 deletions

View File

@ -3,6 +3,7 @@ from __future__ import annotations
from datetime import date, datetime, timedelta
import logging
from typing import cast
from zoneinfo import ZoneInfo
from aiohttp import ClientConnectorError
@ -56,26 +57,27 @@ async def async_setup_entry(
class VulcanCalendarEntity(CalendarEntity):
"""A calendar entity."""
_attr_has_entity_name = True
_attr_translation_key = "calendar"
def __init__(self, client, data, entity_id) -> None:
"""Create the Calendar entity."""
self.student_info = data["student_info"]
self._event: CalendarEvent | None = None
self.client = client
self.entity_id = entity_id
self._unique_id = f"vulcan_calendar_{self.student_info['id']}"
self._attr_name = f"Vulcan calendar - {self.student_info['full_name']}"
self._attr_unique_id = f"vulcan_calendar_{self.student_info['id']}"
student_info = data["student_info"]
self._attr_unique_id = f"vulcan_calendar_{student_info['id']}"
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, f"calendar_{self.student_info['id']}")},
identifiers={(DOMAIN, f"calendar_{student_info['id']}")},
entry_type=DeviceEntryType.SERVICE,
name=f"{self.student_info['full_name']}: Calendar",
name=cast(str, student_info["full_name"]),
model=(
f"{self.student_info['full_name']} -"
f" {self.student_info['class']} {self.student_info['school']}"
f"{student_info['full_name']} -"
f" {student_info['class']} {student_info['school']}"
),
manufacturer="Uonet +",
configuration_url=(
f"https://uonetplus.vulcan.net.pl/{self.student_info['symbol']}"
f"https://uonetplus.vulcan.net.pl/{student_info['symbol']}"
),
)

View File

@ -51,5 +51,12 @@
}
}
}
},
"entity": {
"calendar": {
"calendar": {
"name": "[%key:component::calendar::title%]"
}
}
}
}