API for Sprinkl sprinkler controller
Project description
sprinkl-async: A Simple Python Library for Sprinkl™ Controllers
sprinkl-async
is a Python library for interacting with Sprinkl™ Control SR-400
Python Versions
The python test suite requires Python 3.6 or higher; tests run on Python 3.5 will fail.
sprinkl-async
is currently supported on:
- Python 3.5
- Python 3.6
- Python 3.7
Installation
pip install sprinkl_async
Examples
Get controller and zones
import asyncio
from aiohttp import ClientSession
from sprinkl_async import Client
async def main() -> None:
"""Create client and login"""
async with ClientSession() as session:
# Create sprinkl-async client
client = Client(session)
# login
auth = await client.login(email="email", password="secret")
asyncio.get_event_loop().run_until_complete(main())
Developing
- Install developer environment:
make init
- Use virtual environment for development:
pipenv shell
- Write code/tests and be happy
- Update
README.MD
with examples
Testing
- Write new tests for the functionality added
- Run tests and ensure 100% coverage:
make coverage
- Ensure no lint errors:
make lint
- Ensure no typing errors:
make type
Contributing
Follow the developing/testing flows and follow CONTRIBUTING.MD for details.
License
Apache 2.0; see LICENSE for details.
Inspiration
The API for Sprinkl-async follow the same design principals as Regenmaschine
Disclaimer
This project is not an official Google project. It is not supported by Google and Google specifically disclaims all warranties as to its quality, merchantability, or fitness for a particular purpose.