* Improve site selection
* Reauth flow and tests
Add **kwargs to mock_aiohttp_client create_session to support inputting verify_ssl and cookie_jar
* Update homeassistant/components/unifi/config_flow.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Minor improvements
* Improve coverage
Co-authored-by: J. Nick Koston <nick@koston.org>
* Discover devices from device_trackers with router sources
* Update homeassistant/components/dhcp/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* fix stop being called on the wrong context
* clean
* move it to base
* cleanup was too agressive
* Update homeassistant/components/dhcp/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* coverage
* revert legacy changes
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
With 250 clients, there were about 18000 timers updated every
minute. To avoid this, we check which entities should be set
to not_home only once every second.
* Added UniFi Uptime sensor
Added the UniFi uptime data as a sensor. Untested.
* Update sensor.py
Updated code as a result of the tests.
* Changed timestamp format and device class
Converted state to iso timestamp and changed device class to DEVICE_CLASS_TIMESTAMP.
* Updated unit of measurement to None
* Added import
* Update homeassistant/components/unifi/sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Removed whitespace
* Added the uptime sensors option to the config flow
* All the unit tests should be there now
* Whoops
* Fixed translation
* Properly formatted the code
* Flake8 really has angel eyes
* Black should also be satisfied now
* Should have satisfied all static code analysis tools
* Fixed add uptime sensor function
* Fixed overintendation
* Fixed unit tests
* Made a spelling mistake during editing of unit tests
* Test verifies if utc time is correct
* Converted to iso format
* Converted unit test to iso format
* Unit test sensor json had the wrong uptime name
* Added options_updated handler
* Fixed remove sensors unit test
* Update homeassistant/components/unifi/sensor.py
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Update homeassistant/components/unifi/sensor.py
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Update test_device_tracker.py
Removed uptime from the devices
* Fixed black formatting issue
* I think the code coverage should be good now
* Trying to add the sensors again
* Using signals to hopefully trigger the controller to add them again
* Forgot import
* Sorted components
* fixed isort comments
* Removed CLASS and DEVICE_CLASS
* Added TYPE again
* Removed double underscores
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
* Improve client tracker to be more comprehensible and streamlined
Improve block switches
Improve tests
* Small clean up
* Add descriptions on ssid test
* Improve test
* Make polling default off, only POE clients left to verify
* Minor improvements
* On removal cancel scheduled updates
* POE works without polling now
* Combine else and if to an elif
* Move removal of sensor entities into a base class
* Fix martins comments on sensors
* Reflect sensor changes on device_tracker platform
* Reflect sensor changes on switch platform
* Improve layering
* Make sure to clean up entity and device registry when removing entities
* Fix martins comments
* Allow disable wired bug work around
* Move small improvements from closed PR #34065
* Fix failing test
* Add new test
* Some extra logging
* Harmonize log outputs
* Add config flow string
* Fix Balloobs comments
* Rewrite UniFi integration to use push messaging
* Add signalling for new clients/devices
* Update list of known wireless clients when we get events of them connecting
* Reconnection logic for websocket
* Fix failing tests
* Bump requirement to v12
* Add new tests
* Update homeassistant/components/unifi/controller.py
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
* Add controls to catch when client goes offline and UniFi bug marks client as wired
* Device trackers shouldn't jump between going away and home
* POE control shouldn't add normally wireless clients as POE control switches
* Move ignoring logic to entity registry enabled default
* Handle config to option import better
* Properly enable and disable entity registry entries on changes from config entry options
* Fix balloobs comments
* Fix some tests
* Fix tests
* Simplify updating disable on entities
* Simplify device tracker update function
* Local entity disabled replaced on rebase
* Only alter entities with changed options
* Proper tracking of changed options
* Back to straightforward updating of disabled
* Move device tracker to use config entry
* Remove monitored conditions attributes based on ADR0003
* Add support for import of device tracker config to be backwards compatible
* Remove unnecessary configuration options from device tracker
* Add component configuration support
* Moved climate components with tests into platform dirs.
* Updated tests from climate component.
* Moved binary_sensor components with tests into platform dirs.
* Updated tests from binary_sensor component.
* Moved calendar components with tests into platform dirs.
* Updated tests from calendar component.
* Moved camera components with tests into platform dirs.
* Updated tests from camera component.
* Moved cover components with tests into platform dirs.
* Updated tests from cover component.
* Moved device_tracker components with tests into platform dirs.
* Updated tests from device_tracker component.
* Moved fan components with tests into platform dirs.
* Updated tests from fan component.
* Moved geo_location components with tests into platform dirs.
* Updated tests from geo_location component.
* Moved image_processing components with tests into platform dirs.
* Updated tests from image_processing component.
* Moved light components with tests into platform dirs.
* Updated tests from light component.
* Moved lock components with tests into platform dirs.
* Moved media_player components with tests into platform dirs.
* Updated tests from media_player component.
* Moved scene components with tests into platform dirs.
* Moved sensor components with tests into platform dirs.
* Updated tests from sensor component.
* Moved switch components with tests into platform dirs.
* Updated tests from sensor component.
* Moved vacuum components with tests into platform dirs.
* Updated tests from vacuum component.
* Moved weather components with tests into platform dirs.
* Fixed __init__.py files
* Fixes for stuff moved as part of this branch.
* Fix stuff needed to merge with balloob's branch.
* Formatting issues.
* Missing __init__.py files.
* Fix-ups
* Fixup
* Regenerated requirements.
* Linting errors fixed.
* Fixed more broken tests.
* Missing init files.
* Fix broken tests.
* More broken tests
* There seems to be a thread race condition.
I suspect the logger stuff is running in another thread, which means waiting until the aio loop is done is missing the log messages.
Used sleep instead because that allows the logger thread to run. I think the api_streams sensor might not be thread safe.
* Disabled tests, will remove sensor in #22147
* Updated coverage and codeowners.
* First commit
* Feature complete?
* Add dependency
* Move setting poe mode logic to library
* Use guard clauses
* Bump requirement to 2
* Simplify saving switches with poe off
* Store and use poe mode
* Fix indentation
* Fix flake8
* Configuration future proofing
* Bump dependency to v3
* Add first test
* Proper use of defaults with config flow (thanks helto)
* Appease hound
* Make sure there can't be duplicate entries of combination host+site
* More tests
* More tests
* 98% coverage of controller
* Fix hound comments
* Config flow step init not necessary
* Use async_current_entries to check if host and site for controller is used
* Remove storing/restoring poe off devices to slim PR
* First batch of switch tests
* More switch tests.
* Small improvements and clean up
* Make tests pass
Don't name device in device registry
* Dont process clients that belong to non-UniFi POE switches
* Allow selection of site from a list in config flow
* Fix double blank lines in method
* Update codeowners