Modules
A client for the local CLIP v2 API on Philips Hue bridges.
A live model of one bridge: an ETS-backed cache seeded by a full fetch and kept current by the eventstream.
Translates set options into a CLIP v2 request body, checking capabilities
against the cached resource first.
The ETS table behind Hue.Bridge, and every path that reads it.
Walks the resource graph to turn a target a human wrote into a resource this library can act on.
An identified bridge: where it is, which one it is, and the certificate that was pinned when it was first trusted.
Applies an eventstream delta to a cached resource.
Builds the two name indexes Hue.Bridge keeps beside its resources.
The process behind Hue.Bridge. Owns the ETS table; nothing else writes to it.
The pending-write queue: coalescing, and Hue's per-type rate limits.
A configured connection to one bridge.
Colour conversion for Hue lights.
The triangle of colours a particular light can actually produce.
Finds Hue bridges, by three methods, because no single one is sufficient.
A normalised failure from a Hue bridge.
One resource change.
Decodes the bridge's Server-Sent Events stream.
Lights, addressed by the name you gave them in the Hue app.
Obtains an application key from a bridge.
Generic access to every CLIP v2 resource type.
Rooms, addressed by name.
Scenes, addressed by name.
TLS for Hue bridges, which cannot be verified the ordinary way.
Zones, addressed by name.