A Swift client for the HomeAssistant WebSocket API.
Add the following lines to your Package.swift
or use Xcode's "Add Package Dependency…" menu.
// `Package.swift`
dependencies: [
// ...
.package(url: "https://github.com/c-st/HAClient.git"),
// ...
]
let url = "ws://homeassistant.raspberrypi.localdomain/api/websocket"
let client = HAClient(messageExchange: WebSocketClient(url))
// Authenticate
let token = "insert long-lived access token"
try await client.authenticate(token: token)
// Make API requests
let areas = try await client.listAreas()
let devices = try await client.listDevices()
let entities = try await client.listEntities()
let states = try await client.retrieveStates()
link |
Stars: 2 |
Last commit: 1 year ago |
Initial release of HAClient
Requires Swift 5.5 and macOS Monterey as it uses some of Swift's new concurrency features.
Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics