Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SSDP matching improvements #28285

Merged
merged 2 commits into from
Nov 2, 2019
Merged

SSDP matching improvements #28285

merged 2 commits into from
Nov 2, 2019

Conversation

scop
Copy link
Member

@scop scop commented Oct 28, 2019

Breaking Change:

ssdp in manifest.json has changed; it is now a list of dicts, and as we now match using the UPnP device description fields directly, device_type has to be renamed to deviceType. Not sure if custom integrations support this stuff in the first place, but if they do, they need to adjust accordingly. No included integrations use it at the moment, nor are they broken by this change.

Description:

Per discussion in #28214 (comment)

  • support multiple match groups per domain
  • require matches on all, not any item in a group
  • support matching on all UPnP device description data

Matching on all UPnP device description data is consistent with providing all of it, ditto the ssdp data structure in manifest.json to the corresponding provided discovery_info, see #28197

Related issue (if applicable): #28214

Pull request with documentation for developer docs: home-assistant/developers.home-assistant#341

Example entry for configuration.yaml (if applicable):

Checklist:

  • The code change is tested and works locally.
  • Local tests pass with tox. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly. Update and include derived files by running python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt by running python3 -m script.gen_requirements_all.
  • Untested files have been added to .coveragerc.

If the code does not interact with devices:

  • Tests have been added to verify that the new code works.

- support multiple match groups per domain
- require matches on all, not any item in a group
- support matching on all UPnP device description data
@scop scop changed the title SSDP matching improvements WIP: SSDP matching improvements Oct 29, 2019
@scop
Copy link
Member Author

scop commented Oct 29, 2019

This has some issues still, will address, marking as WIP meanwhile.

@scop scop changed the title WIP: SSDP matching improvements SSDP matching improvements Oct 29, 2019
@scop
Copy link
Member Author

scop commented Oct 29, 2019

WIP lifted, hopefully got it right now.

@balloob balloob merged commit 1679ec3 into home-assistant:dev Nov 2, 2019
@balloob
Copy link
Member

balloob commented Nov 2, 2019

🎉

@scop scop deleted the ssdp-match-all branch November 2, 2019 19:46
@scop
Copy link
Member Author

scop commented Nov 2, 2019

Thanks!

@lock lock bot locked and limited conversation to collaborators Nov 3, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants