Skip to content

Commit 25ad6e4

Browse files
committed
Add reset_node() function
1 parent bf14d06 commit 25ad6e4

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

plugwise_usb/nodes/node.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
from ..constants import SUPPRESS_INITIALIZATION_WARNINGS, TYPE_MODEL, UTF8
3333
from ..exceptions import FeatureError, NodeError
3434
from ..helpers.util import version_to_model
35-
from ..messages.requests import NodeInfoRequest, NodePingRequest
35+
from ..messages.requests import NodeInfoRequest, NodePingRequest, NodeResetRequest
3636
from ..messages.responses import NodeInfoResponse, NodePingResponse
3737
from .helpers import raise_not_loaded
3838
from .helpers.cache import NodeCache
@@ -641,6 +641,20 @@ async def get_state(self, features: tuple[NodeFeature]) -> dict[NodeFeature, Any
641641

642642
return states
643643

644+
async def reset_node(self) -> None:
645+
"""Reset node present in the current Plugwise network."""
646+
timeout = 4
647+
request = NodeResetRequest(
648+
self._send, self._mac_in_str, self.node_type, timeout
649+
)
650+
response = await request.send()
651+
if response is None or response.ack_id != NodeType.NODE_RESET_ACK:
652+
_LOGGER.warning(
653+
"Node %s reset response is None or wrong ack_id %s received",
654+
self._mac_in_str,
655+
response.ack_id,
656+
)
657+
644658
async def unload(self) -> None:
645659
"""Deactivate and unload node features."""
646660
if not self._cache_enabled:

0 commit comments

Comments
 (0)