mirror of
https://github.com/sascha-hemi/hacs_waste_collection_schedule.git
synced 2026-03-21 04:06:03 +01:00
Added City of Ryde, Australia (#2579)
* New source - City of Ryde, uses same API as Campbelltown, with City of Ryde URL prepended * Updated source and added doc * Added City of Ryde to sources * Removed hardcoded 'NSW' from query to fix API lookup * Added City of Ryde * Updated per PR #2579 comments * Used requests for param encoding * Added exception for address lookup failure * reformatting + ./update_docu_links.py --------- Co-authored-by: 5ila5 <5ila5@users.noreply.github.com>
This commit is contained in:
61
doc/source/ryde_nsw_gov_au.md
Normal file
61
doc/source/ryde_nsw_gov_au.md
Normal file
@@ -0,0 +1,61 @@
|
||||
# City of Ryde (NSW)
|
||||
|
||||
Support for schedules provided by [City of Ryde](https://www.ryde.nsw.gov.au/Environment-and-Waste/Waste-and-Recycling).
|
||||
|
||||
## Configuration via configuration.yaml
|
||||
|
||||
```yaml
|
||||
waste_collection_schedule:
|
||||
sources:
|
||||
- name: ryde_nsw_gov_au
|
||||
args:
|
||||
post_code: POST_CODE
|
||||
suburb: SUBURB
|
||||
street_name: STREET_NAME
|
||||
street_number: STREET_NUMBER
|
||||
```
|
||||
|
||||
### Configuration Variables
|
||||
|
||||
**post_code**
|
||||
*(string) (required)*
|
||||
|
||||
**suburb**
|
||||
*(string) (required)*
|
||||
|
||||
**street_name**
|
||||
*(string) (required)*
|
||||
|
||||
**street_number**
|
||||
*(string) (required)*
|
||||
|
||||
## Example
|
||||
|
||||
```yaml
|
||||
waste_collection_schedule:
|
||||
sources:
|
||||
- name: ryde_nsw_gov_au
|
||||
args:
|
||||
post_code: 2112
|
||||
suburb: Ryde
|
||||
street_name: Victoria Road
|
||||
street_number: 504
|
||||
```
|
||||
|
||||
## How to get the source arguments
|
||||
|
||||
Visit the [City of Ryde Waste and Recycling](https://www.ryde.nsw.gov.au/Environment-and-Waste/Waste-and-Recycling) page, follow the quick link to *Check my collection day*, and search for your address. The street address arguments used to configure hacs_waste_collection_schedule should exactly match the street address shown in the autocomplete result.
|
||||
|
||||
## How this integration uses City of Ryde's APIs
|
||||
Two API calls are currently needed to retrieve waste collection schedule results from Campbelltown Council:
|
||||
1. The address search API at https://www.ryde.nsw.gov.au/api/v1/myarea/search
|
||||
2. The waste services API at https://www.ryde.nsw.gov.au/ocapi/Public/myarea/wasteservices
|
||||
|
||||
This integration does the following:
|
||||
1. Calls the address search API to retrieve the "location ID" for the given location. Eg. https://www.ryde.nsw.gov.au/api/v1/myarea/search?keywords=504+Victoria+Road%2C+Ryde
|
||||
2. Retrieves waste/collection info from the waste services API using the "location ID" retrieved in step #1. Eg. https://www.ryde.nsw.gov.au/ocapi/Public/myarea/wasteservices?geolocationid=619ef4ca-45e2-4866-a55b-165e6d563943&ocsvclang=en-AU
|
||||
3. Parses the HTML returned by the waste services API in step #2 to extract the data
|
||||
|
||||
# Similarities with other sources
|
||||
|
||||
For future work it's good to note that City of Ryde uses the same APIs as Campbelltown City Council & Blacktown City Council, to the point I was able to copy and paste their files with minimal modification.
|
||||
Reference in New Issue
Block a user