Repository navigation
Conversation
kelvan
force-pushed
the
gardena/fs/local-client
branch
3 times, most recently
from
October 26, 2026 15:32
9a5640e to
2e9f2dd
Compare
Member
|
Can this be used by the examples? Does it make sense to do so? |
easybe
reviewed
Oct 26, 2026
kelvan
force-pushed
the
gardena/fs/local-client
branch
from
October 26, 2026 15:37
2e9f2dd to
e4a3da5
Compare
Member
Author
yes, that is the plan :) |
kelvan
force-pushed
the
gardena/fs/local-client
branch
from
October 26, 2026 15:41
e4a3da5 to
6e5726e
Compare
kelvan
force-pushed
the
gardena/fs/local-client
branch
4 times, most recently
from
October 26, 2026 17:10
dbca0e3 to
856329c
Compare
Integrations had to implement connecting, authenticating, reconnecting and request/reply correlation themselves, and duplicated it between a coordinator and a config flow. The client provides it once, pins the gateway certificate by fingerprint, and reports a rejected password instead of retrying it forever. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The examples had their own copy of the connection and reply handling, which the client now provides. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
kelvan
force-pushed
the
gardena/fs/local-client
branch
from
October 26, 2026 17:16
856329c to
139be03
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
GatewayClient, which owns the WebSocket to the gateway: connecting with Basic auth, reconnecting, and correlating requests with their replies, so callers don't have to implement that themselves. It works as an async context manager and has adiscover_devices()helper.Callbacks tell the caller about pushed events, (re)connects, lost connections and a rejected password. Messages that are not replies to a pending request can optionally be collected on an
eventsqueue. After connecting, the client exposes the gateway's certificate and its SHA-256 fingerprint, and it can pin that fingerprint on later connections. A rejected password raisesAuthenticationErroron the first connect and callson_auth_failedon a later reconnect, instead of retrying forever.The examples use the client in a second commit and no longer need the
websocketspackage.