Aliste Smart Home SDK for Python
aliste 2.0 is an async-first SDK for discovering and controlling Aliste smart home devices from Python.
Requirements
- Python 3.11 or newer
- An Aliste account with at least one configured home
Install
uv add aliste
For a plain pip install:
pip install aliste
Development
uv sync --group dev
uv run ruff check .
uv run mypy aliste
uv build --no-sources
Quickstart
import asyncio
from aliste import AlisteHub
async def main() -> None:
async with AlisteHub() as hub:
await hub.connect("+91xxxxxxxxxx", "your-password")
if hub.home is None:
return
print(f"Connected to {hub.home.name}")
living_room_light = hub.home.get_device("device-id")
if living_room_light is not None:
await living_room_light.turn_on()
asyncio.run(main())
Live Smoke Test
List the first few devices on a real account:
ALISTE_USERNAME="+91xxxxxxxxxx" ALISTE_PASSWORD="your-password" \
uv run python scripts/test_live.py --action list
Toggle a specific device:
ALISTE_USERNAME="+91xxxxxxxxxx" ALISTE_PASSWORD="your-password" \
uv run python scripts/test_live.py --action toggle --device-id your-device-id
2.0 Migration Notes
- The minimum supported Python version is now 3.11.
- Packaging and local development use
uvinstead of Poetry. await hub.connect(username, password)replaceshub.init(...).async with AlisteHub()orawait hub.close()now manages HTTP and MQTT lifecycle cleanly.
Release files for aliste 2.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aliste-2.5.1.tar.gz | 11.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aliste-2.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.4 kB
Release files / aliste-2.5.1.tar.gz
| Download URL | aliste-2.5.1.tar.gz |
|---|---|
| Size | 11.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9cd40fec658027447a2d57f11108d8ea3da9e096c33e507454837126a00b8f26
|
|
BLAKE2b-256 checksum How to use checksums |
10856b70d04798caafa0f74070ad6c93e6603cb3b8e567ae623dabcddaac2e51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / aliste-2.5.1-py3-none-any.whl
| Download URL | aliste-2.5.1-py3-none-any.whl |
|---|---|
| Size | 15.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ebfc2d2cdd3138d288b1daa16fdb0a915d7f8eb17293f34229ba6cab248aebc8
|
|
BLAKE2b-256 checksum How to use checksums |
12e913f8508d413c8f17ef51b9ca70da038ec080d64ee480552d2843bf48db4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|