Skip to content

Clarify that a rejected unapproved client is still presented - #308

Open
arturpragacz wants to merge 1 commit into
mainfrom
ap/clarify-presenting-rejected-clients-for-pairing
Open

arturpragacz wants to merge 1 commit into
mainfrom
ap/clarify-presenting-rejected-clients-for-pairing

Conversation

@arturpragacz

@arturpragacz arturpragacz commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Clarify that a rejected unapproved client is still presented.

This was already the intended reading of the spec, but let's make it completely clear.

Closes #296.

@kahrendt

Copy link
Copy Markdown
Contributor

Going back to this now, I can see that basically all my questions/issues in #296 were addressed in some form in the spec, I just missed it. So, I'm fine with actually leaving it as is without this clarification.

I think the issue was just how aiosendspin/MA handled it; e.g., it wouldn't let you try to connect to a client to pair when it previously got the concurrent attempt rejection.

@kahrendt kahrendt left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The change is good, but may not be necessary. So, if you want the clarification in go ahead and merge!

maximmaxim345 added a commit to Sendspin/aiosendspin that referenced this pull request Oct 15, 2026
# What does this implement/fix?

<!-- Quick description and explanation of changes. -->

With two servers, a device held by one server turned the other one away
with `concurrent_attempt`. The other server then redialed it on every
mDNS update and forgot it after three minutes, so its player went
unavailable and then disappeared.

The server now keeps such a client like after `another_server`: it fires
`ClientAddedEvent` for it, stops its playback on this server, and only
dials it again on a reclaim or when its mDNS record goes away and comes
back.

**Related issue or spec PR (if applicable):**

- Sendspin/spec#308

## Types of changes

<!--
Tick exactly one box. CI (.github/workflows/pr-labels.yaml) applies the
matching label, and the release notes use it to sort this change.
-->

- [x] Bugfix (non-breaking change which fixes an issue): `bugfix`
- [ ] New feature (non-breaking change which adds functionality):
`new-feature`
- [ ] Enhancement to an existing feature: `enhancement`
- [ ] Breaking change (changes the public API or the protocol in a way
that is not backwards compatible): `breaking-change`
- [ ] Refactor (no behavior change): `refactor`
- [ ] Documentation only: `documentation`
- [ ] Maintenance / chore: `maintenance`
- [ ] CI / workflow change: `ci`
- [ ] Dependencies bump: `dependencies`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Servers can't pair a device another server holds after connecting idle

2 participants