@@ -63,7 +63,6 @@ def __init__(
6363 websession ,
6464 )
6565
66- self ._cooling_present = False
6766 self ._elga = False
6867 self ._is_thermostat = False
6968 self ._last_active : dict [str , str | None ] = {}
@@ -74,6 +73,7 @@ def __init__(
7473 self ._smile_api : SmileAPI | SmileLegacyAPI
7574 self ._stretch_v2 = False
7675 self ._target_smile : str = NONE
76+ self .cooling_present = False
7777 self .gw_data : GatewayData = {}
7878 self .smile_fw_version : Version | None = None
7979 self .smile_hostname : str = NONE
@@ -89,14 +89,29 @@ def __init__(
8989
9090 @property
9191 def gateway_id (self ) -> str :
92- """Return the Smile gateway-id."""
92+ """Return the gateway-id."""
9393 return self .gw_data ["gateway_id" ]
9494
9595 @property
9696 def heater_id (self ) -> str :
97- """Return the Smile heater-id."""
97+ """Return the heater-id."""
9898 return self .gw_data ["heater_id" ]
9999
100+ @property
101+ def item_count (self ) -> int :
102+ """Return the item-count."""
103+ return self .gw_data ["item_count" ]
104+
105+ @property
106+ def notifications (self ) -> dict [str , dict [str , str ]]:
107+ """Return the Plugwise notifications."""
108+ return self .gw_data ["notifications" ]
109+
110+ @property
111+ def reboot (self ) -> bool :
112+ """Return the reboot capability."""
113+ return self .gw_data ["reboot" ]
114+
100115 async def connect (self ) -> Version | None :
101116 """Connect to the Plugwise Gateway and determine its name, type, version, and other data."""
102117 result = await self ._request (DOMAIN_OBJECTS )
@@ -136,7 +151,7 @@ async def connect(self) -> Version | None:
136151 self ._smile_api = (
137152 SmileAPI (
138153 self ._request ,
139- self ._cooling_present ,
154+ self .cooling_present ,
140155 self ._elga ,
141156 self ._is_thermostat ,
142157 self ._last_active ,
@@ -251,7 +266,7 @@ async def _smile_detect(self, result: etree, dsmrmain: etree) -> None:
251266 locator_1 = "./gateway/features/cooling"
252267 locator_2 = "./gateway/features/elga_support"
253268 if result .find (locator_1 ) is not None :
254- self ._cooling_present = True
269+ self .cooling_present = True
255270 if result .find (locator_2 ) is not None :
256271 self ._elga = True
257272
0 commit comments