Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Used the dump_home_json.py to view the output of the Nexia service for my new ux360 thermostat and noticed that the response from the API included detailed information about endpoints. An example with house details redacted are in doc/dump_home_example.ux360.*
From that information I added several URL overrides in zone.py and thermostat.py. To support the PUT method that the API calls for, I also duplicated the post_url as put_url changing the method used.
I also updated the main.py to enable testing with my specific system and to validate the updates that I made.
Its possible that the way the current API returns the JSON data from Nexia the code could be updated for all thermostats available through the service using the action URL information in the JSON.
This is also my first contribution to a python project, so there may be better code methodologies that could be used. I'm hopeful this will be accepted or at least triggers eventual support for the UX360 thermostat since my ultimate goal is to get this working with Home Assistant.
This version has been tested with a copy of Home Assistants Nexia integration for basic functionality and appears to work.