Component/Switch/Sensor for QuickSmart Etherrain/8 network irrigation#8900
Component/Switch/Sensor for QuickSmart Etherrain/8 network irrigation#8900hpeyerl wants to merge 15 commits into
Conversation
The etherrain/8 will only take commands from the last IP that logged in to it. So if a different host on the network is also issuing commands to the ER/8, then our commands will fail. There is obviously a bit of a race condition here. This at least somewhat mitigates the problem.
|
Hello @hpeyerl, When attempting to inspect the commits of your pull request for CLA signature status among all authors we encountered commit(s) which were not linked to a GitHub account, thus not allowing us to determine their status(es). The commits that are missing a linked GitHub account are the following:
Unfortunately, we are unable to accept this pull request until this situation is corrected. Here are your options:
We apologize for this inconvenience, especially since it usually bites new contributors to Home Assistant. We hope you understand the need for us to protect ourselves and the great community we all have built legally. The best thing to come out of this is that you only need to fix this once and it benefits the entire Home Assistant and GitHub community. Thanks, I look forward to checking this PR again soon! ❤️ |
|
|
||
| def turn_off(self): | ||
| """Turn a valve off.""" | ||
| # We should first check the state and if it's "BZ" and the valve_id matches, |
| @@ -0,0 +1,172 @@ | |||
| """. | |||
|
|
||
| Support for Etherrain/8. | ||
|
|
||
| """ |
There was a problem hiding this comment.
Please follow the file header style of the other files.
| ER = {} | ||
|
|
||
| conf = config[DOMAIN] | ||
| schema = 'http' |
There was a problem hiding this comment.
Looks superfluous as there is only support for http.
|
|
||
| def setup(hass, config): | ||
| """Set up the Etherrain component.""" | ||
| global ER |
| # ergetcfg.cgi?lu=admin\&lp=deadbeef | ||
| url = '{0}/ergetcfg.cgi?lu={1}&lp={2}'.format( | ||
| ER['server_origin'], ER['username'], ER['password']) | ||
| req = requests.get(url, timeout=DEFAULT_TIMEOUT) |
| def setup_platform(hass, config, add_devices, discovery_info=None): | ||
| """Set up the Etherrain irrigation platform.""" | ||
| valve_id = config.get("valve_id") | ||
| valve_name = config.get("name") |
There was a problem hiding this comment.
Must go through the configuration validation as optional.
| """Set up the Etherrain irrigation platform.""" | ||
| valve_id = config.get("valve_id") | ||
| valve_name = config.get("name") | ||
| duration = config.get("duration") |
|
|
||
|
|
||
| # pylint: disable=no-member | ||
| def login(): |
There was a problem hiding this comment.
Move the communication with the EtherRain API to a Python module, publish it on PyPI, and make it a requirement.
|
This PR seems to have gone stale. Closing it. You can reopen it when you're ready to finish it. |
|
Yes. Life got in the way. I've got the above changes made on my own branch and working but have not gone through enough integration testing to resubmit. Now irrigation season is over so maybe next year. |
Description:
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.io#3155
Example entry for
configuration.yaml(if applicable):Checklist:
If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
toxrun successfully. Your PR cannot be merged unless tests passREQUIREMENTSvariable (example).requirements_all.txtby runningscript/gen_requirements_all.py..coveragerc.If the code does not interact with devices:
toxrun successfully. Your PR cannot be merged unless tests pass