An async Python library for interacting with Konnected home automation controllers (see https://konnected.io)
Project description
Konnected Python library
This is a simple Python library to talk to a Konnected device. Konnected is an open-source software for ESP8266 devices that enables simple wired binary sensors and actuators to talk to home automation frameworks such as Home Assistant and SmartThings. The most popular use case for Konnected is to connected a wired home alarm system to your Smart Home hub.
This library was written to support Home Assistant integration.
For more information see konnected.io
Usage
import aiohttp
import asyncio
import konnected
async def fetch(session, url):
async with session.get(url) as response:
return await response.text()
async def main():
async with aiohttp.ClientSession() as session:
k = konnected.Client('192.168.86.10', '17000', session)
# Sync settings to the device
print(await k.put_settings(sensors=[{"pin":1}], actuators=[], auth_token='secureToken', endpoint='http://example.com'))
# True
# Get status of each input pin
print(await k.get_device())
# [{'state': 0, 'pin': 1}, {'state': 1, 'pin': 2}]
# Get status of a single input pin
print(await k.get_device(2))
# [{'state': 1, 'pin': 2}]
# Actuate an output pin
print(await k.put_device(pin=8, state=1))
# {'state': 1, 'pin': 8}
# Get status of each input zone
print(await k.get_zone())
# [{'state': 0, 'zone': 1}, {'state': 1, 'zone': 2}]
# Get status of a single input zone
print(await k.get_zone(2))
# [{'state': 1, 'zone': 2}]
# Actuate an output zone
print(await k.put_zone(zone=8, state=1))
# {'state': 1, 'zone': 8}
# Get device status
await k.get_status()
# {'mac': '2c:3a:e8:43:8a:38', 'gw': '192.168.86.1', 'hwVersion': '2.0.5', 'rssi': -31, 'nm': '255.255.255.0', 'ip': '192.168.86.10', 'actuators': [{'trigger': 1, 'pin': 8}], 'port': 12426, 'uptime': 2349, 'heap': 23904, 'swVersion': '2.1.3', 'sensors': [{'state': 0, 'pin': 1}]}
if __name__ == '__main__':
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
Python version
This library was designed to work with Python 3.5 and above.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file konnected-1.2.0.tar.gz
.
File metadata
- Download URL: konnected-1.2.0.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8b4e15c3228b01c9fad3651e09fea1654357ae8c333096e759a1b7d0eb4e789 |
|
MD5 | fd6b1fdd25e8be80148e2424d3e02e9a |
|
BLAKE2b-256 | 365efbecfc52432d7c819fc8a4424ca32a2fe08b8e9338548705785c06efb769 |
File details
Details for the file konnected-1.2.0-py3-none-any.whl
.
File metadata
- Download URL: konnected-1.2.0-py3-none-any.whl
- Upload date:
- Size: 4.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41ff41fef147902a5e41c8acf4506ea991a845310ccbe47121050a9681277df1 |
|
MD5 | d790441a792466b5dca3ffe26d73383d |
|
BLAKE2b-256 | 5740bc5043ac6e4c98d5fc39623474fc0bb212b8b92247504c535c51fb4831c6 |