Skip to content

Commit b3fe034

Browse files
authored
fix error handling pro+ (#2505)
1 parent 75ee8be commit b3fe034

6 files changed

Lines changed: 18 additions & 20 deletions

File tree

packages/modules/chargepoints/external_openwb/chargepoint_module.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def set_current(self, current: float) -> None:
4444
hostname=self.config.configuration.ip_address)
4545

4646
def get_values(self) -> None:
47-
with SingleComponentUpdateContext(self.fault_state, update_always=False):
47+
with SingleComponentUpdateContext(self.fault_state):
4848
with self.client_error_context:
4949
ip_address = self.config.configuration.ip_address
5050
num = self.config.id

packages/modules/chargepoints/openwb_pro/chargepoint_module.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,16 @@ def __init__(self, config: OpenWBPro) -> None:
3232
f"openWB/set/chargepoint/{self.config.id}/get/error_timestamp", CP_ERROR, hide_exception=True)
3333

3434
with SingleComponentUpdateContext(self.fault_state, update_always=False):
35-
with self.client_error_context:
36-
self.__session.post(
37-
'http://' + self.config.configuration.ip_address + '/connect.php',
38-
data={'heartbeatenabled': '1'})
35+
self.__session.post(
36+
'http://' + self.config.configuration.ip_address + '/connect.php',
37+
data={'heartbeatenabled': '1'})
3938

40-
def set_internal_context_handlers(self, internal_cp: InternalChargepoint, parent_hostname: str):
39+
def set_internal_context_handlers(self, hierarchy_id: int, internal_cp: InternalChargepoint, parent_hostname: str):
4140
self.fault_state = FaultState(ComponentInfo(
4241
self.config.id,
4342
"Ladepunkt "+str(self.config.id),
4443
"internal_chargepoint",
45-
parent_id=internal_cp.data.parent_cp,
44+
hierarchy_id=hierarchy_id,
4645
parent_hostname=parent_hostname))
4746
self.client_error_context = ErrorTimerContext(
4847
f"openWB/set/internal_chargepoint/{self.config.id}/get/error_timestamp", CP_ERROR, hide_exception=True)

packages/modules/common/fault_state.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ def __init__(self,
1717
name: str,
1818
type: str,
1919
hostname: str = "localhost",
20-
parent_id: Optional[int] = None,
20+
hierarchy_id: Optional[int] = None,
2121
parent_hostname: Optional[str] = None) -> None:
2222
self.id = id
2323
self.name = name
2424
self.type = type
2525
self.hostname = hostname
26-
self.parent_id = parent_id
26+
self.hierarchy_id = hierarchy_id
2727
self.parent_hostname = parent_hostname
2828

2929
@staticmethod
@@ -57,12 +57,11 @@ def store_error(self) -> None:
5757
topic_prefix = f"openWB/set/{topic}/{self.component_info.id}"
5858
pub.Pub().pub(f"{topic_prefix}/get/fault_str", self.fault_str)
5959
pub.Pub().pub(f"{topic_prefix}/get/fault_state", self.fault_state.value)
60-
if (self.component_info.parent_hostname and
61-
self.component_info.parent_hostname != self.component_info.hostname):
62-
pub.pub_single(f"openWB/set/{topic}/{self.component_info.parent_id}/get/fault_str",
63-
self.fault_str, hostname=self.component_info.parent_hostname)
64-
pub.pub_single(f"openWB/set/{topic}/{self.component_info.parent_id}/get/fault_state",
65-
self.fault_state.value, hostname=self.component_info.parent_hostname)
60+
if self.component_info.type == "internal_chargepoint":
61+
pub.pub_single(f"openWB/set/chargepoint/{self.component_info.hierarchy_id}/get/fault_str",
62+
self.fault_str)
63+
pub.pub_single(f"openWB/set/chargepoint/{self.component_info.hierarchy_id}/get/fault_state",
64+
self.fault_state.value)
6665
except Exception:
6766
log.exception("Fehler im Modul fault_state")
6867

packages/modules/internal_chargepoint_handler/chargepoint_module.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ def __init__(self, local_charge_point_num: int,
3131
hierarchy_id: int) -> None:
3232
self.local_charge_point_num = local_charge_point_num
3333
self.fault_state = FaultState(ComponentInfo(
34-
hierarchy_id,
34+
local_charge_point_num,
3535
"Ladepunkt "+str(local_charge_point_num),
3636
"internal_chargepoint",
37-
parent_id=internal_cp.data.parent_cp,
37+
hierarchy_id=hierarchy_id,
3838
parent_hostname=parent_hostname))
3939
self.store_internal = get_internal_chargepoint_value_store(local_charge_point_num)
4040
self.store = get_chargepoint_value_store(hierarchy_id)

packages/modules/internal_chargepoint_handler/internal_chargepoint_handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,10 +147,10 @@ def __init__(self,
147147
self.event_stop = event_stop
148148
self.heartbeat = False
149149
self.fault_state_info_cp0 = FaultState(
150-
ComponentInfo(hierarchy_id_cp0, "Interner Ladepunkt 0", "chargepoint", parent_id=parent_cp0,
150+
ComponentInfo(0, "Interner Ladepunkt 0", "internal_chargepoint", hierarchy_id=hierarchy_id_cp0,
151151
parent_hostname=global_data.parent_ip))
152152
fault_state_info_cp1 = FaultState(
153-
ComponentInfo(hierarchy_id_cp1, "Interner Ladepunkt 1", "chargepoint", parent_id=parent_cp1,
153+
ComponentInfo(1, "Interner Ladepunkt 1", "internal_chargepoint", hierarchy_id=hierarchy_id_cp1,
154154
parent_hostname=global_data.parent_ip))
155155
with SingleComponentUpdateContext(self.fault_state_info_cp0, reraise=True):
156156
self.init_gpio()

packages/modules/internal_chargepoint_handler/pro_plus.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def __init__(self, local_charge_point_num: int,
1818
self.old_chargepoint_state = None
1919

2020
super().__init__(OpenWBPro(configuration=OpenWBProConfiguration(ip_address="192.168.192.50")))
21-
super().set_internal_context_handlers(internal_cp, parent_hostname)
21+
super().set_internal_context_handlers(hierarchy_id, internal_cp, parent_hostname)
2222

2323
def get_values(self, phase_switch_cp_active: bool, last_tag: str) -> ChargepointState:
2424
def store_state(chargepoint_state: ChargepointState) -> None:

0 commit comments

Comments
 (0)