pysmarthq
Async Python client for the GE Appliances SmartHQ APIs.
The client covers three hosts:
Identity and Access Management (
https://accounts.brillion.geappliances.com) for OAuth 2.0 authorization and tokens.Digital Twin (
https://client.mysmarthq.com) for devices, services, commands, and HTTPS/SNS pubsub.Event stream over the WebSocket URL returned by
GET /v2/websocket.
The OpenAPI and AsyncAPI documents in the repository specs/ directory are the wire contract. The SmartHQ documentation fills in flows those specs leave out, including token lifetimes, WebSocket keep-alive, and the difference between WebSocket and HTTPS/SNS delivery.
The package follows the Home Assistant API library guidance: asyncio, aiohttp, no Home Assistant dependency, authentication separated from the API models, and model properties named after the API fields. The caller persists tokens. async_connect() opens one socket; the caller schedules the next connection.