Python interface for Kwikset Smart Locks
Project description
aiokwikset - Python interface for the Kwikset API
Python library for communicating with the Kwikset Smart Locks via the Kwikset cloud API.
WARNING
- This library only works if you have signed up for and created a home/had a home shared with you from the Kwikset Application.
- IOS
- Android
NOTE:
- This library is community supported, please submit changes and improvements.
- This is a very basic interface, not well thought out at this point, but works for the use cases that initially prompted spitting this out from.
Supports
- locking/unlocking
- retrieving basic information
Installation
pip install aiokwikset
Examples
import asyncio
from aiokwikset import API
async def main() -> None:
"""Run!"""
#initialize the API
api = API("<EMAIL>")
#start auth
#<CODE_TYPE> = [phone, email]
pre_auth = await api.authenticate('<PASSWORD>','<CODE_TYPE>')
#MFA verification
await api.verify_user(pre_auth, input("Code:"))
# Get user account information:
user_info = await api.user.get_info()
# Get the homes
homes = await api.user.get_homes()
# Get the devices for the first home
devices = await api.device.get_devices(homes[0]['homeid'])
# Get information for a specific device
device_info = await api.device.get_device_info(devices[0]['deviceid'])
# Lock the specific device
lock = await api.device.lock_device(device_info, user_info)
# Set led status
led = await api.device.set_ledstatus(device_info, "false")
# Set audio status
audio = await api.device.set_audiostatus(device_info, "false")
# Set secure screen status
screen = await api.device.set_securescreenstatus(device_info, "false")
asyncio.run(main())
Known Issues
- not all APIs supported
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
aiokwikset-0.2.2a1.tar.gz
(18.4 kB
view hashes)
Built Distribution
Close
Hashes for aiokwikset-0.2.2a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49ac7204419966aada224a8e7f72a727a67b1bba3bb27e114ea074ba5b18d12d |
|
MD5 | 3d1ea4863f8fd9602c251b17d82f8d9b |
|
BLAKE2b-256 | 588390c693fd141c36d632f111ab7c2f8e5d97dd00497394f776d6f6c5cd5150 |