1 """Base UptimeRobot entity."""
3 from __future__
import annotations
5 from pyuptimerobot
import UptimeRobotMonitor
11 from .
import UptimeRobotDataUpdateCoordinator
12 from .const
import ATTR_TARGET, ATTRIBUTION, DOMAIN
16 """Base UptimeRobot entity."""
18 _attr_attribution = ATTRIBUTION
19 _attr_has_entity_name =
True
24 coordinator: UptimeRobotDataUpdateCoordinator,
25 description: EntityDescription,
26 monitor: UptimeRobotMonitor,
28 """Initialize UptimeRobot entities."""
33 identifiers={(DOMAIN,
str(self.
monitormonitor.id))},
34 name=self.
monitormonitor.friendly_name,
35 manufacturer=
"UptimeRobot Team",
36 entry_type=DeviceEntryType.SERVICE,
37 model=self.
monitormonitor.type.name,
38 configuration_url=f
"https://uptimerobot.com/dashboard#{self.monitor.id}",
41 ATTR_TARGET: self.
monitormonitor.url,
44 self.
apiapi = coordinator.api
48 """Return all monitors."""
49 return self.coordinator.data
or []
53 """Return the monitor for this entity."""
65 """Returtn if the monitor is available."""
66 return bool(self.
monitormonitor.status == 2)
_attr_extra_state_attributes
UptimeRobotMonitor monitor(self)
None __init__(self, UptimeRobotDataUpdateCoordinator coordinator, EntityDescription description, UptimeRobotMonitor monitor)
list[UptimeRobotMonitor] _monitors(self)
bool monitor_available(self)