-
-
Notifications
You must be signed in to change notification settings - Fork 33.8k
8000 Reinitialize upnp device on config change #49081
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
Reinitialize upnp device on config change #49081
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tests are failing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
Should we tag this for a patch release? |
Thank you for merging! I don't mind waiting for the next monthly release, as this means there is a longer testing period, right? Now that hass analytics shows me how 'popular' upnp is... :) I don't expect anything to break, just want to be on the safe side. |
Proposed change
UPnP devices can send advertisements when their configuration has changed.
async_upnp_client
is extended with a helper to monitor these advertisements and, if the configuration or location is updated, the device is reinitialized.A few devices change their address (specifically, TCP port) used serve clients, while this component previously only scanned for this address once during initialization and kept using that address. See #46822 for more information.
Type of change
Example entry for
configuration.yaml
:# Example configuration.yaml
Additional information
Checklist
black --fast homeassistant tests
)If user exposed functionality or configuration variables are added/changed:
If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running:
python3 -m script.hassfest
.requirements_all.txt
.Updated by running
python3 -m script.gen_requirements_all
..coveragerc
.The integration reached or maintains the following Integration Quality Scale:
To help with the load of incoming pull requests: