Skip to main content

Async Python SDK for Aliste Smart Home devices.

Project description

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 uv instead of Poetry.
  • await hub.connect(username, password) replaces hub.init(...).
  • async with AlisteHub() or await hub.close() now manages HTTP and MQTT lifecycle cleanly.

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

aliste-2.5.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aliste-2.5.0-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file aliste-2.5.0.tar.gz.

File metadata

  • Download URL: aliste-2.5.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for aliste-2.5.0.tar.gz
Algorithm Hash digest
SHA256 5f15bc095b94dae5277d6d649ea0b4db1f37c2714acc793961203d9d5375a940
MD5 198315c1d834ebce5749566c66a3e605
BLAKE2b-256 6e42610e8f55132c684581ed57f5a4cec0c8ef38246c1913ba50f08c8bfe6c11

See more details on using hashes here.

File details

Details for the file aliste-2.5.0-py3-none-any.whl.

File metadata

  • Download URL: aliste-2.5.0-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for aliste-2.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e2b96e7332044d674818687644fb6443ce5c85d6a786ba4f15f39fca65bf8ac6
MD5 459d9b0f99341589efa833c2d1be8182
BLAKE2b-256 ff89f7ab3928a5e28da7351a34eb669e72e3dbf7c263a17ab5c76e5e13ba5b8d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page