* Add Beolink custom services
Add support for media player grouping via beolink
Give media player entity name
* Fix progress not being set to None as Beolink listener
Revert naming changes
* Update API
simplify Beolink attributes
* Improve beolink custom services
* Fix Beolink expandable source check
Add unexpand return value
Set entity name on initialization
* Handle entity naming as intended
* Fix "null" Beolink self friendly name
* Add regex service input validation
Add all_discovered to beolink_expand service
Improve beolink_expand response
* Add service icons
* Fix merge
Remove unnecessary assignment
* Remove invalid typing
Update response typing for updated API
* Revert to old typed response dict method
Remove mypy ignore line
Fix jid possibly used before assignment
* Re add debugging logging
* Fix coroutine
Fix formatting
* Remove unnecessary update control
* Make tests pass
Fix remote leader media position bug
Improve remote leader BangOlufsenSource comparison
* Fix naming and add callback decorators
* Move regex service check to variable
Suppress KeyError
Update tests
* Re-add hass running check
* Improve comments, naming and type hinting
* Remove old temporary fix
* Convert logged warning to raised exception for invalid media_player
Simplify code using walrus operator
* Fix test for invalid media_player grouping
* Improve method naming
* Improve _beolink_sources explanation
* Improve _beolink_sources explanation
* Fix tests
* Remove service responses
Fix and add tests
* Change service to action where applicable
* Show playback progress for listeners
* Fix testing
* Remove useless initialization
* Fix allstandby name
* Fix various casts with assertions
Fix comment placement
Fix group leader group_members rebase error
Replace entity_id method call with attribute
* Add syrupy snapshots for Beolink tests, checking entity states
Use test JIDs 3 and 4 instead of 2 and 3 to avoid invalid attributes in testing
* Add sections for fields using Beolink JIDs directly
* Fix typo
* FIx rebase mistake
* Sort actions alphabetically
* Add NASweb integration
* Fix DeviceInfo import
* Remove commented out code
* Change class name for uniquness
* Drop CoordinatorEntity inheritance
* Rename class Output to more descriptive: RelaySwitch
* Update required webio-api version
* Implement on-the-fly addition/removal of entities
* Set coordinator name matching device name
* Set entities with too old status as unavailable
* Drop Optional in favor of modern typing
* Fix spelling of a variable
* Rename commons to more fitting name: helper
* Remove redundant code
* Let unload fail when there is no coordinator
* Fix bad docstring
* Rename cord to coordinator for clarity
* Remove default value for pop and let it raise exception
* Drop workaround and use get_url from helper.network
* Use webhook to send data from device
* Deinitialize coordinator when no longer needed
* Use Python formattable string
* Use dataclass to store integration data in hass.data
* Raise ConfigEntryNotReady when appropriate
* Refactor NASwebData class
* Move RelaySwitch to switch.py
* Fix ConfigFlow tests
* Create issues when entry fails to load
* Respond when correctly received status update
* Depend on webhook instead of http
* Create issue when status is not received during entry set up
* Make issue_id unique across integration entries
* Remove unnecessary initializations
* Inherit CoordinatorEntity to avoid code duplication
* Optimize property access via assignment in __init__
* Use preexisting mechanism to fill schema with user input
* Fix translation strings
* Handle unavailable or unreachable internal url
* Implement custom coordinator for push driven data updates
* Move module-specific constants to respective modules
* Fix requirements_all.txt
* Fix CODEOWNERS file
* Raise ConfigEntryError instead of issue creation
* Fix entity registry import
* Use HassKey as key in hass.data
* Use typed ConfigEntry
* Store runtime data in config entry
* Rewrite to be more Pythonic
* Move add/remove of switch entities to switch.py
* Skip unnecessary check
* Remove unnecessary type hints
* Remove unnecessary nonlocal
* Use a more descriptive docstring
* Add docstrings to NASwebCoordinator
* Fix formatting
* Use correct return type
* Fix tests to align with changed code
* Remove commented code
* Use serial number as config entry id
* Catch AbortFlow exception
* Update tests to check ConfigEntry Unique ID
* Remove unnecessary form abort
* Fix bug in nest setup when the old key format does not exist
* Further simplify the entry.data check
* Update homeassistant/components/nest/api.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add new frame helper to clarify options available
* Adjust
* Improve
* Use report_usage in core
* Add tests
* Use is/is not
Co-authored-by: J. Nick Koston <nick@koston.org>
* Use enum.auto()
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Replace Supervisor resolution API calls with aiohasupervisor
* Use consistent types to avoid uuid issues
* Fix mocking in http test
* Changes from feedback
* Put hass first
* Fix typo
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>