Interface Library for QuickSmart Etherrain/8 irrigation controller
Project description
# Python3 API for QuickSmart Etherrain/8
The EtherRain/8 from [QuickSmart](http://www.quicksmart.com/qs_etherrain.html) is an Ethernet based irrigation controller with a custom web API. This is a simple Python3 API for talking to it.
## Limitations
* The ER8 maintains its authentication state by IP address. So if another process or client on your system has authenticated with the ER8, then the login() function will succeed even with an invalid password.
* Due to the above limitation, a client with an invalid username/password on the same host can issue watering commands and retrieve state, etc.
* This API Assumes an Etherrain/8 and doesn't anticipate anything as regards the Etherrain/7P
```Python
class EtherRain:
def __init__(self, addr, user, pw, timeout):
```
Class instantiation requires an IP address or hostname, username, and password with an optional timeout.
## API
* login() - Authenticate. Returns true or false
* stop() - Full stop to all watering operations
* update_status() - Call this before checking the operating status or any other status attributes.
* get_status() - Return the current operating status. Call ```update_status()``` first. Returns:
* BZ - Busy
* WT - Waiting
* RD - Ready
* rain() - Is the rain sensor reporting that it is wet?
* last_valve() - Returns which valve is currently turned on or has more recently been turned on. Returns 0-8
* irrigate(valve, time) - Turn on an irrigation valve. Time is in Minutes. Valve is 1-8.
The EtherRain/8 from [QuickSmart](http://www.quicksmart.com/qs_etherrain.html) is an Ethernet based irrigation controller with a custom web API. This is a simple Python3 API for talking to it.
## Limitations
* The ER8 maintains its authentication state by IP address. So if another process or client on your system has authenticated with the ER8, then the login() function will succeed even with an invalid password.
* Due to the above limitation, a client with an invalid username/password on the same host can issue watering commands and retrieve state, etc.
* This API Assumes an Etherrain/8 and doesn't anticipate anything as regards the Etherrain/7P
```Python
class EtherRain:
def __init__(self, addr, user, pw, timeout):
```
Class instantiation requires an IP address or hostname, username, and password with an optional timeout.
## API
* login() - Authenticate. Returns true or false
* stop() - Full stop to all watering operations
* update_status() - Call this before checking the operating status or any other status attributes.
* get_status() - Return the current operating status. Call ```update_status()``` first. Returns:
* BZ - Busy
* WT - Waiting
* RD - Ready
* rain() - Is the rain sensor reporting that it is wet?
* last_valve() - Returns which valve is currently turned on or has more recently been turned on. Returns 0-8
* irrigate(valve, time) - Turn on an irrigation valve. Time is in Minutes. Valve is 1-8.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
etherrain-0.6.tar.gz
(4.9 kB
view details)
Built Distribution
File details
Details for the file etherrain-0.6.tar.gz
.
File metadata
- Download URL: etherrain-0.6.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.15rc1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b55bdc60d15aa0b816d6c724ef5cfba28c039eb47d4be6c76b30796d2fa5684f |
|
MD5 | a6de9fca52300f7896b4cf8ffe6021b7 |
|
BLAKE2b-256 | ffd0863229bf6489f0a1dc37a4a246e6ee9451778c7d4619659c73e8f5a157c4 |
File details
Details for the file etherrain-0.6-py2.py3-none-any.whl
.
File metadata
- Download URL: etherrain-0.6-py2.py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.15rc1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08aafb71c7933fd95df5bb304fbb2373694f5ebc7e226adf53b5d71604ad521e |
|
MD5 | ce4877225a15c173cf56cc18f58bf530 |
|
BLAKE2b-256 | 5c1873b7f085cd54b46322396fe22cb8df5a8691b7ba9ed2e46b7948e5666df5 |