Skip to content

Commit 5a72652

Browse files
authored
Fix: Handle missing Connection-Size (#162)
1 parent 4b7ac55 commit 5a72652

File tree

3 files changed

+19
-10
lines changed

3 files changed

+19
-10
lines changed

custom_components/iec/coordinator.py

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -642,21 +642,30 @@ async def _estimate_bill(self, contract_id, device_number, is_private_producer,
642642
phase_count = None
643643
connection_size = None
644644

645-
if not is_private_producer or not last_meter_read:
645+
if is_private_producer or not last_meter_read:
646646
last_meter_reading = await self._get_last_meter_reading(self._bp_number, contract_id,
647647
device_number)
648648
last_meter_read = last_meter_reading.reading
649649
last_meter_read_date = last_meter_reading.reading_date.date()
650650

651651
account_id = await self._get_account_id()
652652
connection_size = await self._get_connection_size(account_id)
653-
phase_count_str = connection_size.split("X")[0] \
654-
if connection_size.find("X") != -1 else "1"
655-
phase_count = int(phase_count_str)
653+
if connection_size:
654+
phase_count_str = connection_size.split("X")[0] \
655+
if connection_size.find("X") != -1 else "1"
656+
phase_count = int(phase_count_str)
656657

657-
distribution_tariff = await self._get_distribution_tariff(phase_count)
658-
delivery_tariff = await self._get_delivery_tariff(phase_count)
659-
power_size = await self._get_power_size(connection_size)
658+
if connection_size:
659+
power_size = await self._get_power_size(connection_size)
660+
else:
661+
_LOGGER.warning("Couldn't get Connection Size")
662+
663+
if phase_count:
664+
distribution_tariff = await self._get_distribution_tariff(phase_count)
665+
delivery_tariff = await self._get_delivery_tariff(phase_count)
666+
else:
667+
if connection_size:
668+
_LOGGER.warning("Couldn't get Phase Count")
660669

661670
return self._calculate_estimated_bill(device_number, future_consumption,
662671
last_meter_read, last_meter_read_date,

custom_components/iec/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
"iot_class": "cloud_polling",
1111
"issue_tracker": "https://github.com/guykh/iec-custom-component/issues",
1212
"loggers": ["iec_api"],
13-
"requirements": ["iec-api==0.4.2"],
14-
"version": "0.0.33"
13+
"requirements": ["iec-api==0.4.3"],
14+
"version": "0.0.33-b2"
1515
}

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
colorlog>=6.8.2
22
homeassistant==2024.2.0
3-
iec-api==0.4.2
3+
iec-api==0.4.3
44
pip>=21.0
55
ruff>=0.5.6

0 commit comments

Comments
 (0)