|
12 | 12 |
|
13 | 13 | from ..api import NodeEvent, NodeType, PlugwiseNode, StickEvent |
14 | 14 | from ..connection import StickController |
15 | | -from ..constants import UTF8 |
16 | | -from ..helpers.util import validate_mac |
| 15 | +from ..constants import ENERGY_NODE_TYPES, UTF8 |
17 | 16 | from ..exceptions import CacheError, MessageError, NodeError, StickError, StickTimeout |
| 17 | +from ..helpers.util import validate_mac |
18 | 18 | from ..messages.requests import ( |
19 | 19 | CircleClockSetRequest, |
20 | 20 | CircleMeasureIntervalRequest, |
|
34 | 34 | from ..nodes import get_plugwise_node |
35 | 35 | from .registry import StickNetworkRegister |
36 | 36 |
|
37 | | -ENERGY_NODE_TYPES: tuple[int] = (1, 2, 9) |
38 | | - |
39 | 37 | _LOGGER = logging.getLogger(__name__) |
40 | 38 | # endregion |
41 | 39 |
|
@@ -596,10 +594,10 @@ def _validate_energy_node(self, mac: str) -> None: |
596 | 594 | """Validate node for energy operations.""" |
597 | 595 | if not validate_mac(mac): |
598 | 596 | raise NodeError(f"MAC '{mac}' invalid") |
599 | | - |
| 597 | + |
600 | 598 | if mac not in self._nodes: |
601 | 599 | raise NodeError(f"Node {mac} not present in network") |
602 | | - |
| 600 | + |
603 | 601 | if self._nodes[mac].node_info.node_type.value not in ENERGY_NODE_TYPES: |
604 | 602 | raise NodeError( |
605 | 603 | f"Energy operations not supported for {self._nodes[mac].node_info.node_type.name}" |
|
0 commit comments