Skip to content

Commit 64fdaee

Browse files
committed
Improve
1 parent 15f4340 commit 64fdaee

File tree

1 file changed

+13
-25
lines changed

1 file changed

+13
-25
lines changed

plugwise_usb/nodes/circle.py

Lines changed: 13 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
CircleClockGetRequest,
3636
CircleClockSetRequest,
3737
CircleEnergyLogsRequest,
38+
CircleMeasureIntervalRequest,
3839
CirclePowerUsageRequest,
3940
CircleRelayInitStateRequest,
4041
CircleRelaySwitchRequest,
@@ -1253,13 +1254,19 @@ async def energy_reset_request(self) -> None:
12531254

12541255
_LOGGER.warning("Energy reset for Node %s successful", self._mac_in_bytes)
12551256
# Follow up by an energy-intervals (re)set
1256-
network = StickNetwork()
1257-
if not (
1258-
await network.set_energy_intervals(
1259-
mac, DEFAULT_CONS_INTERVAL, NO_PRODUCTION_INTERVAL
1257+
request = CircleMeasureIntervalRequest(
1258+
self._send,
1259+
self._mac_in_bytes,
1260+
DEFAULT_CONS_INTERVAL,
1261+
NO_PRODUCTION_INTERVAL,
1262+
)
1263+
if (response := await request.send()) is None:
1264+
raise NodeError("No response for CircleMeasureIntervalRequest.")
1265+
1266+
if response.response_type != NodeResponseType.POWER_LOG_INTERVAL_ACCEPTED:
1267+
raise MessageError(
1268+
f"Unknown NodeResponseType '{response.response_type.name}' received"
12601269
)
1261-
):
1262-
_LOGGER.warning("Failed enery-intervals (re)set after an energy-reset")
12631270

12641271
# Clear the cached energy_collection
12651272
if self._cache_enabled:
@@ -1275,22 +1282,3 @@ async def energy_reset_request(self) -> None:
12751282
_LOGGER.warning("Node info update failed after energy-reset")
12761283
else:
12771284
_LOGGER.warning("Node info update after energy-reset successful")
1278-
1279-
1280-
async def energy_reset_request(self, mac: str) -> bool:
1281-
"""Send an energy-reset request to a Node."""
1282-
_LOGGER.debug("Resetting energy logs for %s", mac)
1283-
try:
1284-
await self._network.energy_reset_request(mac)
1285-
except (MessageError, NodeError) as exc:
1286-
raise NodeError(f"{exc}") from exc
1287-
1288-
# Follow up by an energy-intervals (re)set
1289-
if (
1290-
result := await self.set_energy_intervals(
1291-
mac, DEFAULT_CONS_INTERVAL, NO_PRODUCTION_INTERVAL
1292-
)
1293-
):
1294-
return result
1295-
1296-
return False

0 commit comments

Comments
 (0)