Skip to content

Commit

Permalink
Update manifest.json
Browse files Browse the repository at this point in the history
  • Loading branch information
xirixiz authored and github-actions[bot] committed Oct 19, 2022
1 parent 1e2dc9e commit a58fa10
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 20 deletions.
47 changes: 30 additions & 17 deletions custom_components/afvalwijzer/collector/rd4.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@
from ..common.next_sensor_data import NextSensorData
from ..const.const import _LOGGER, SENSOR_COLLECTOR_RD4

RD4_API_TEMPLATE = "https://data.rd4.nl/api/v1/waste-calendar?postal_code={}&house_number={}&house_number_extension={}&year={}";
RD4_API_TEMPLATE = "https://data.rd4.nl/api/v1/waste-calendar?postal_code={}&house_number={}&house_number_extension={}&year={}"


class Rd4Collector(object):
def __init__(
Expand All @@ -32,12 +33,14 @@ def __init__(
if self.provider != SENSOR_COLLECTOR_RD4:
raise ValueError("Invalid provider: %s, please verify", self.provider)

TODAY_DT = datetime.today()
TODAY_DT = datetime.today()
TODAY_STR = TODAY_DT.strftime("%d-%m-%Y")
self.DATE_TODAY = datetime.strptime(TODAY_STR, "%d-%m-%Y")
self.DATE_TOMORROW = datetime.strptime(TODAY_STR, "%d-%m-%Y") + timedelta(days=1)
self.DATE_TOMORROW = datetime.strptime(TODAY_STR, "%d-%m-%Y") + timedelta(
days=1
)
self.YEAR_CURRENT = TODAY_DT.year
self.YEAR_NEXT = TODAY_DT.year+1
self.YEAR_NEXT = TODAY_DT.year + 1

(
self._waste_data_raw,
Expand All @@ -54,22 +57,30 @@ def __init__(

def get_waste_data_provider(self):

corrected_postal_code_parts = re.search(r"(\d\d\d\d) ?([A-z][A-z])", self.postal_code)
corrected_postal_code = corrected_postal_code_parts.group(1) + '+' + corrected_postal_code_parts.group(2).upper()
corrected_postal_code_parts = re.search(
r"(\d\d\d\d) ?([A-z][A-z])", self.postal_code
)
corrected_postal_code = (
corrected_postal_code_parts.group(1)
+ "+"
+ corrected_postal_code_parts.group(2).upper()
)

try:
url = RD4_API_TEMPLATE.format(
corrected_postal_code,
self.street_number,
self.suffix,
self.YEAR_CURRENT
self.YEAR_CURRENT,
)
waste_data_raw = requests.get(url).json()
except ValueError:
raise ValueError("Invalid and/or no JSON data received from " + url)

if(waste_data_raw["success"] != True):
raise ValueError("No waste data received from RD4: " + waste_data_raw["message"])
if waste_data_raw["success"] != True:
raise ValueError(
"No waste data received from RD4: " + waste_data_raw["message"]
)

try:
waste_data_with_today = {}
Expand All @@ -88,9 +99,9 @@ def get_waste_data_provider(self):
continue

temp["type"] = item["type"].strip().lower()
temp["date"] = datetime.strptime(
item["date"], "%Y-%m-%d"
).strftime("%Y-%m-%d")
temp["date"] = datetime.strptime(item["date"], "%Y-%m-%d").strftime(
"%Y-%m-%d"
)
waste_data_raw_formatted.append(temp)

# Try to get the dates of next year as well so we have a smooth transition into the next year
Expand All @@ -99,13 +110,15 @@ def get_waste_data_provider(self):
corrected_postal_code,
self.street_number,
self.suffix,
self.YEAR_NEXT
self.YEAR_NEXT,
)
waste_data_raw_next_year = requests.get(url).json()
except ValueError:
_LOGGER.info("No calendar is ready for the year %s yet", self.YEAR_NEXT)

if (waste_data_raw_next_year is not None) and (waste_data_raw_next_year["success"] == True):
if (waste_data_raw_next_year is not None) and (
waste_data_raw_next_year["success"] == True
):
data_raw_next_year = waste_data_raw_next_year["data"]["items"][0]

for item in data_raw_next_year:
Expand All @@ -118,9 +131,9 @@ def get_waste_data_provider(self):
continue

temp["type"] = item["type"].strip().lower()
temp["date"] = datetime.strptime(
item["date"], "%Y-%m-%d"
).strftime("%Y-%m-%d")
temp["date"] = datetime.strptime(item["date"], "%Y-%m-%d").strftime(
"%Y-%m-%d"
)
waste_data_raw_formatted.append(temp)

for item in waste_data_raw_formatted:
Expand Down
2 changes: 1 addition & 1 deletion custom_components/afvalwijzer/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"domain": "afvalwijzer",
"name": "Afvalwijzer",
"version": "2022.06.02",
"iot_class": "Cloud Polling",
"iot_class": "cloud_polling",
"documentation": "https://github.com/xirixiz/homeassistant-afvalwijzer/blob/master/README.md",
"issue_tracker": "https://github.com/xirixiz/homeassistant-afvalwijzer/issues",
"config_flow": false,
Expand Down
2 changes: 1 addition & 1 deletion custom_components/afvalwijzer/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@
MIN_TIME_BETWEEN_UPDATES,
PARALLEL_UPDATES,
SCAN_INTERVAL,
SENSOR_COLLECTOR_RD4,
SENSOR_COLLECTORS_AFVALWIJZER,
SENSOR_COLLECTORS_ICALENDAR,
SENSOR_COLLECTORS_OPZET,
SENSOR_COLLECTORS_XIMMIO,
SENSOR_COLLECTOR_RD4,
STARTUP_MESSAGE,
)
from .sensor_custom import CustomSensor
Expand Down
2 changes: 1 addition & 1 deletion custom_components/afvalwijzer/test/test_module.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@
# street_number = "2"


postal_code=postal_code.strip().upper()
postal_code = postal_code.strip().upper()

if provider in SENSOR_COLLECTORS_AFVALWIJZER:
collector = MijnAfvalWijzerCollector(
Expand Down

0 comments on commit a58fa10

Please sign in to comment.