* Rewrite parts of upnp component
* Linting
* Add SCAN_INTERVAL
* Get values simultaneously
* Move to time related constants, as per #32065
* Linting
* Move constant KIBIBYTE to homeassistant.const
* Simplify code
* Fix tests for #33344
* Changes after review
* Update homeassistant/components/upnp/sensor.py
* Changes after review
* Formatting
* Formatting
* Use ST from discovery info to avoid swapping device_types if device advertises multiple versions
* Linting
* Requirements for upnp + dlna_dmr components
* Linting
* Regen requirements
* Changes after review by @MartinHjelmare
* Changes after review by @MartinHjelmare
* Formatting
* Linting
* Changes after review by @MartinHjelmare
* Changes after review by @MartinHjelmare
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Use local_ip from config to discover IGD device
In case of multi-homed server UPNP discovery finds IGD device on some "default" interface. WIth this modification discovery will be performed from 'local_ip'.
* Update device.py
* Changed version of async_upnp_client in requirements
* Used aysnc_upnp_client==0.14.0
* Changed requirement to async_upnp_client==0.14.0.dev0
* Changed requirement to async_upnp_client==0.14.0.dev0
* Changed requirement to async_upnp_client==0.14.0.dev0
* Fixed code style
* Fixed code style
* Changed version of async_upnp_client in requerements
* Changed version of async_upnp_client in requirements
* Regenerated requirements (new async_upnp_client)
* Regenerated requirements (new async_upnp_client)
* Changed requirement to async_upnp_client=0.14.1
* Changed requirement to async_upnp_client=0.14.1
* Updated requirements
* Updated requirements.txt
* Corrected requirements
* Corrected import of DeviceState
* Constants changed according new async_upnp_client
* Upgraded for async_upnp_client==0.14.2
* Disable creating port mappings from UI, add discovery from component
* Remove unused constant
* Upgrade to async_upnp_client==0.13.6 and use manufacturer from device
* Upgrade to async_upnp_client==0.13.7
* Fix discovery-dependency for upnp
* Only delete port mappings on EVENT_HOMEASSISTANT_STOP + refactoring MockDevice
* Call and store local_ip from async_setup
* Don't depend on http-component
* Remove discovery dependency
* Validate ports as port
Better than just a positive integer since it limits the range from 1 to 65535.
* Validate port for Axis
* Validate port for Xiaomi Home Camera
* Validate port for Modbus
* Validate port for Yamaha MusicCast Receivers
* Update zhong_hong.py
Validate port as a port, the gateway address as positive_int
Also moved the default values to their variable
* Validate port for the Asterisk Voicemail interface
* Fix lint
* Validate port for Xiaomi Cameras