* Move cisco me to new layout
* Add docstring
* Move items out of init method and pass the controller instance to the scanner in get_scanner
* Update homeassistant/components/cisco_mobility_express/device_tracker.py
Co-Authored-By: fbradyirl <fbradyirl@users.noreply.github.com>
* Update homeassistant/components/cisco_mobility_express/device_tracker.py
Co-Authored-By: fbradyirl <fbradyirl@users.noreply.github.com>
* Update homeassistant/components/cisco_mobility_express/device_tracker.py
Co-Authored-By: fbradyirl <fbradyirl@users.noreply.github.com>
* Update homeassistant/components/cisco_mobility_express/device_tracker.py
Co-Authored-By: fbradyirl <fbradyirl@users.noreply.github.com>
* Fix build error
* Cleanup based on comments.
* Add Time of Flight Sensor using VL53L1X
* Fix issues found by bot
* Fix issues from bot
* Remove extra logs
* Keep removing logs dependencies not used
* Remove log from update
* Add logger info to async_update
* Fix over-indented line
* Fix pylint error
* Remove logger reporting successful operation
* Update requirements
* Update requirements_all.txt
* Update requirements_test_all.txt
* Used isort to keep imports and added STMicroelectronics to docstring
* Replace time.sleep by asyncio.sleep
* Add requirements to COMMENT_REQUIREMENTS and fix typo
* Using async_add_executor_job to schedule the call in the pool
* Fix typo
* Optimize async_update
* Updated requirements files
* Group and schedule calls that should be run sequentially
* Fix lint errors
* Revision showing development history
* Cleaning and typos
* Cleaning and typos
* Fix wrong-import-order
* Fix gen_requirements_all
* Schedule rpi_gpio I/O on the executor thread pool
* Fix partial parameters
* Fix bot error - add blank line
* Fix lint error
* Remove dependencies from requirements
* Review initial commits
* Move all device I/O to async_update
* Update requirements_all.txt
* Revised header with no url to the docs
* Use async_added_to_hass to add and initialize the sensor
* Add docstring to init()
* Move sensor.open() to async_setup_platform
* Remove logging and async
* Fix typo
* Move sensor.open to safe initialization
* Fix typo
* Fix typo
* Add the new tof module to .coveragerc
* Move the sensor platform under a tof package
* Update .coveragerc and requirements_all for tof package
* Added updating alarm state after start of the HA. Still rough and dirty.
* Fixed initialization of the panel and binary sensor. Before cleanup.
* Added alarm clearing, linting fixes.
* Removed dead code, added style changes.
* Updated requirements
* Fixed linting errors.
* Fixed linting errors
* Fixed linter errors.
* Fixed hopefully last linter errors.
* Fixes after code review, imports sorted.
* Removed init debugging
* Serialize snapshot commands and bump amcrest package to 1.2.4
Attempting to send a snapshot command when a previous one hasn't finished will result in warnings and/or errors. This can happen when the camera picture is clicked on in the frontend, resulting in the thread that updates the thumbnail in the background every 10 seconds to sometimes collide with the thread that updates the large picture in the foreground quickly. An automation that calls the camera.snapshot service in yet another thread can make the situation worse. Fix by adding a thread lock to serialize snapshot commands. Also bump the amcrest package to 1.2.4 which fixes error handling in the command method and improves performance by reusing requests sessions.
* Update amcrest package to 1.2.4
* mvp basic temperature sensor support
* support for DHT temperature & humidity
* add support for ds18b20 sensors
* improve resolution of device settings
* update requirements_all.txt
* re-organize new file
* don't use filter(lambda: syntax
* set unique_id on entities to allow renaming in the UI
* leverage base Entity module to do C to F conversion
* add option for setting poll_interval
* use handler pattern to handle updates from Konnected device
* cleanups from code review
* Change dependency to pyvesync-v2 for vesync switch
* Update requirements_all.txt
* Update Version - Wall Switch Support
Update required version for vesync outlets and switches. Eliminate API call for energy usage for wall switches that do not have that feature
* fix name convention
* Initial pass of a mobile_app component
* Fully support encryption, validation for the webhook payloads, and other general improvements
* Return same format as original API calls
* Minor encryption fixes, logging improvements
* Migrate Owntracks to use the superior PyNaCl instead of libnacl, mark it as a requirement in mobile_app
* Add mobile_app to .coveragerc
* Dont manually b64decode on OT
* Initial requested changes
* Round two of fixes
* Initial mobile_app tests
* Dont allow making registration requests for same/existing device
* Test formatting fixes
* Add mobile_app to default_config
* Add some more keys allowed in registration payloads
* Add support for getting a single device, updating a device, getting all devices. Also change from /api/mobile_app/register to /api/mobile_app/devices
* Change device_id to fingerprint
* Next round of changes
* Add keyword args and pass context on all relevant calls
* Remove SingleDeviceView in favor of webhook type to update registration
* Only allow some properties to be updated on registrations, rename integration_data to app_data
* Add call service test, ensure events actually fire, only run the encryption tests if sodium is installed
* pylint
* Fix OwnTracks test
* Fix iteration of devices and remove device_for_webhook_id
* Register 'media_player.firetv_adb_cmd' service
* Wrap the 'firetv_adb_cmd' service with 'adb_decorator'
* Address reviewer comments
* Move firetv to its own platform
* Move 'adb_command' service description
* Rename DOMAIN to FIRETV_DOMAIN
* Import KEYS in __init__ method
* Change 'self.KEYS' to 'self.keys'
* Update firetv in .coveragerc
* 'homeassistant.components.media_player.firetv' -> 'homeassistant.components.firetv'
* 'homeassistant.components.firetv' -> 'homeassistant.components.firetv.media_player'
* 🚜 Rewrite of Toon component
* 🔥 Removed manual state from list
* 👕 Addresses code review comments
* 🔥 Removes a log line that should not have been left behind
* 👕 Addresses linting warnings
* 👕 Addresses Hound CI warning
* 👕 Fixes small code styling issues
* ✨ Sets an appropriate SCAN_INTERVAL
* ✨ Sets min/max temperature for climate platform
* 👕 Makes imports more consistent with codebase
* 🚑 Fixes incorrect SCAN_INTERVAL value in climate platform
* 🚑 Uses OrderedDict for config_flow schema
* 👕 Adds return types for min/max temp
* 🚜 Refactors entities into their actual devices
* ⬆️ Updates toonapilib to 3.0.7
* 🚜 Refactors binary sensor state inversion
* 🚑 Fixes states of OpenTherm connection and Hot Tap Water
* ✨ Adds Boiler Preheat binary sensor
* ✨ Adds Toon Thermostat Program binary sensor
* ✨ Adds Boiler Modulation Level sensor
* ✨ Adds Daily Power Cost sensor
* 🔥 Cleanup of Toon Thermostat climate attributes
* 🚜 Adjusts config_flow with Tenant selection
* 🙋 Adds myself to codeowners file as maintainer
* ⬆️ Gen requirements
* ⬆️ Updates toonapilib to 3.0.9
* ☔ Adds config_flow tests
* Bump firetv to 1.0.8
* Update the 'update' function for Fire TV
* Return None for properties when unavailable
* Remove 'self.adb_lock' attribute
* Remove threading import
* Update configuration for Fire TV component
* Clarify 'python-adb' vs. 'pure-python-adb'
* Rename '__adb_decorator' to '_adb_exception_catcher'
* Don't check 'self._available' in properties
* Bump firetv to 1.0.9
* Move iperf3 sensor to a standalone component
* Split out iperf3 into a component with a sensor platform
* Update coverage and requirements
* Add services.yaml
* Clean up a little bit
* Lint
* Lint
* * bump pip module version.
* moved named tuple into the module.
* pass SSL bool into the object init.
* support get_extra_attributes
* Update homeassistant/components/device_tracker/luci.py
* {switch,light}.tplink: use deviceid as unique id, fetch name from the device during initialization
* raise PlatformNotReady when no device is available
* Use mac instead of deviceid
* remove name option as obsolete
* Add support for configuration flow / integration
Allows activating automatic discovery of supported devices from the configuration
* Fix linting, update requirements_all.txt
* start cleaning up tplink component based on feedback
* add device info, improve config handling
* Allow overriding detected devices via configuration file
* Update requirements.txt
* Remove debug logging
* make hound happy
* Avoid I/O during init and simplify the code, remove remains of leds_on
* Fix issues based on feedback, use consistent quotation marks for device info
* add async_setup_platform emiting a deprecation warning
* Avoid blocking the I/O, check for None on features
* handle some Martin's comments, schema-validation is still missing
* use async_create_task instead of async_add_job, let core validate the schema
* simplify configuration handling by storing the configuration data separately from initialized instances
* add default values to schema, make hound happy
* with defaults set by schema, simplify the checks. add async_unload_entry
* Use constant for data structure access
* REWORD add a short note about async_unload_entry
* handle feedback from Martin, config_data is checked against Noneness
* use pop to remove the domain on unload
* First steps to add tests for the new tplink component
* embed platforms under the component directory
* Fix tests by mocking the pyhs100 internals
* Fix linting
* Test against multiple instances of devices, tidy up
* (hopefully) final linting round
* Add pyHS100 to test requirements
* log always the warnings occured during an update to make them easy to see
* revert back the warning behavior (requirement for silver level in IQS)
* Unload only when an entry is being loaded and add tests for that
Thanks @MartinHjelmare for pointing this out!
* Fix linting
* Bump the upstream lib, fixes most prominently the HSV setting on bulbs
* Test unloading for all platforms, clear the data storage instead of popping it out, making it possible to reconfigure after removal without restarting hass first
* Use class variables instead of instance variables for bulb states, required for HS220
* Use new-style format string
* Fix indenting, uppercase the mock constant
* Run black on test_init, hopefully that will finally fix the weird formatting (pycharm, pylint and hound seems to have different opinions...)
* Add a prompt if bridge update is available.
* Change logger warning for light update
The self.light.swupdatestate only checks for updates of that specific light, it does not check for updates of the bridge.
Theirfore the warning message schould be updated.
* add space
* fix tests
* rename to swupdate2_bridge_state
* update aiohue to v1.9.1
* update aiohue to v1.9.1
* update aiohue to v1.9.1
* Add traccar monitored_conditions option
User defined additional parameters to track from the traccar platform
* Version bump for pytraccar client
* Update traccar.py
* Remove default value
* Update homeassistant/components/device_tracker/traccar.py
Co-Authored-By: lapy <lapy@users.noreply.github.com>
* Update traccar.py
* Improve component setup error logging/notification
* Prevent capabilities from being represented my multiple platforms
* Improved logging of received updates
* Updates based on review feedback
* Add switch platform for Danfoss Air and additional sensors.
* Solve lint issues.
* Correct style.
* Minor changes
* Minor changes
* Minor changes
* Update file header
* Remove space
* Remove space
* Added work so far.
* Change interval so nobody drains their battery when I put this online
* Added the warning notice.
* Async setup
* Still broken, but we're getting there.
* Back to synchronous, moved refresh stuff into DataStore
* Functional sensors!
* Added working switches, tweaked intervals a bit
* Fixed turn off result
* Moved plug status to binary_sensor, added smart intervals
* Documentation and car nickname stuff
* Syntax fixes and coveragerc additions
* Style fixes
* Fixing the final line length
* Fixed an issue with newer models and bad climate data
* Forgot to check my line endings.
* New icons for most of the components
* Hotfix for handling Nissan's awful servers
* Merge in fixes made by Phil Cole
Remove invalid FIXMEs and update TODOs
Fixes for pylint and test for CarwingsError exception rather than Exception
Flake8 fixes
Add pycarwings2 to requirements_all.txt
Add extra configuration documentation.
Use pycarwings2 from pip. Check server dates between requests.
Add sensor device class for battery.
Async conversion fixes
flake8 fixes and docstrings
Non-async charging is OK
Handle multiple cars in the configuration
Convert to async. Better imports for platforms
Fix scanning interval & prevent extra refreshes. async switchover
Check discovery_info to prevent load of platforms
Ensure update frequency is always above a minimum interval (1 min).
Platforms don't have return values
Use values() instead of items() when not using key
Use snake_case (LeafCore becomes leaf_core)
commit 418b6bbcc49cf2909aac85869440435410abf3fd
* Add pycarwings2 to requirements_all.txt
* Make stopping charge error an 'info'. Remove TODO.
* Request update from car after sending start charging command.
* Delay initial (slow) update for 15 seconds and make async
* Flake8 line length fixes
* Try to fix D401 'imperative mood' git diff tox errors
* Try to fix more D401 'imperative mood' tox errors
* Default interval of an hour in code, to match comments.
* Update to pycarwings2 2.3
* Update to pycarwings2 2.3 in requirements_all.txt
* Remove documentation, instead refering to home-assistant.io
* Remove unneeded dispatcher_send()
* Remove unneeded requirements comments
* Combine excess debugging.
* Remove single line method signal_components()
* Bump to version 2.4 of pycarwings2
* Remove unused dispatcher_send
* Simplify logging of LeafEntity registration
* Update requirements_all.txt
* Multiple changes
Increase timeout to 30 seconds
Only consider battery_status
Fix plugged in status
Better attempts at try/exception handling
* Fix line length
* Use pycarwings 2.5
* Remove pointless 'is True'
* Remove unnecessary 'is True/False'
* Remove unnecessary 'is True/False'
* Use LENGTH_MILES and LENGTH_KILOMETERS
* Remove excess logging in setup_platform()
* Remove unnecessary 'is True'
* Use pycarwings2 version 2.6
* Require pycarwings2 version 2.7.
* Increase sleep delay for climate and location reponses.
* Remove unnecessary 'is True'
* Increase frequent polling warning to _LOGGER.warning()
* Use DEVICE_CLASS_BATTERY
* Remove extraneous 'is True'.
* Move icon strings to constants.
* Remove unneeded key.
* LeafRangeSensor ac_on property is internal.
* Flake8 missing line
* Remove homebridge attributes.
* Remove round battery % and range to whole numbers
* Use pycarwings2 2.8
* Move to embedded component model
* Reduce maximum attempts to 10 (5 mins)
* Include attempt count in 'waiting' log message
* Use await instead of yield. Remove @asyncio.coroutine decorators.
* Add @filcole as nissan_leaf codeowner
* Fix checking for if not data returned from vehicle. Don't double send signal on location update.
* Exposed updated_on, update_in_progress and next_update attributes.
* Add nissan_leaf.update service that triggers an update.
* Flake8 line fixes
* Remove excess and double logging.
* Add updated_on attribute for device tracker.
* Fix crash if pycarwings2 doesn't provide cruising ranges.
* Minor changes
* Minor changes
* Minor changes
* Minor changes
* Minor changes
* initial working example of alarm_control
* fixes for alarm_control
* arm home is the same as arm away
* updated documentation
* final fixes
* pypoint version up
* fixes for Martin
* new weather component for meteofrance
* linting
* upgrade meteofrance package version
* Update .coveragerc
* Remove updates to the weather component architecture
* Rewrite Météo-France as a component
* Update .coveragerc
* Update requirements_all.txt
* remove Weather Card option
* Update conf name
Changing conf name to something more universal for worldwide weather forecast (postal code was only relevent for France)
* Update meteofrance pypi package
* fix line too long
* Update requirements_all.txt
* prevent from calling an API endpoint if not in monitored conditions
* fix stale url and remove blank line
* Insure that all cities are unique
* rename CONF_ATTRIBUTION
* Updating data from component setup
* fix missing extra lines
* Add Rejseplanen danish public transport sensor component
* Removed commented out code and fixed style errors
* Use rjpl pypi package for API calls.
* Fix platform schema config and code cleanup.
* Use updated rjpl library with specific exceptions
* API error message is now logged, unknown state attributes excluded
* KNX: Bumped version to 0.9.4 and added support for tunable white and color temperature for lights.
* Updated to the latest changes
* return None when ct value is unknown
- return None instead of default value when ct is unknown
- remove DEFAULT_COLOR_TEMPERATURE
* use Kelvin as base for relative color temperature
use Kelvin as base for relative color temperature instead of Mireds
* moved fallback value tests for clarity
* Update request from oliverblaha
Co-Authored-By: marvin-w <marvin@fam-wichmann.de>
* Address suggested changes
* Update homeassistant/components/knx/light.py
Co-Authored-By: marvin-w <marvin@fam-wichmann.de>
* Update homeassistant/components/knx/light.py
Co-Authored-By: marvin-w <marvin@fam-wichmann.de>
* added xs1 main component
added implementations for switch, sensor, climate and binary_sensor
* updated code
fixed styling
added comments
removed binary_sensor (wasn't working)
* ran "gen_requirements_all.py" script
* fixed linting issues
* added config options for port and ssl
small fixes
* use already defined config constants instead of defining new ones
* avoid passing in hass to the entity
* use async keyword and proper asyncio calls
limit updates with a global lock to prevent overwhelming the gateway with concurrent requests
change info logger calls to debug
* update dependency
* removed unneeded constant
* fix lint issues
* updated requirements
* removed unused imports
* fixed some flake8 errors
* fixed some flake8 errors
* changed imports to absolute paths
* fixed some lint errors
* fixed some lint errors
* fix update of attached sensor
* reordered imports
added config defaults
check if platform is available
changed docstring
* lint fix
* review fixes
* isort
* import fix
* review fix
* review fix
* review fix
* removed unused imports
* lint fix
* lint fix
* climate fix
exclude sensors that will be used in climate component from default sensor category
* .coveragerc fix
* lint fix
* moved platform to it's own package
* use async_call_later for update
* no need to timeout
* fixes
* move init tasks to hass.loop
* version bump of tellduslive
* fixes for @MartinHjelmare
* fixes task cancel
* don't return from new client
* Add ffmpeg version
* Add ffmpeg stream content type
* Change ffmpeg camera stream content type
* Change ffmpeg stream content type
* Lint
* Add a none guard
* Fix
* Fix
* Update onvif.py
* Fix version match regrex
* Fix regrex
* Upgrade ha-ffmpeg to 1.11
* Lint
* Get ffmpeg version in ffmpeg component setup
* Move sensor.speedtest to the new speedtestdotnet component.
* Split out speedtest.net into a component and sensor platform
* Remove the throttle and add async_track_time_interval
* Add should_poll and cleanup
* Update requirements_all.txt
* Move time interval tracking out of the data class and into the setup method
* Add now=None argument to update
* Change foscam python library to pyfoscam, which is more up to date and has several critical bug fixes.
* Update requirements_all.txt to match.
* Inserting automatically generated requirements.txt
* Revert changes until pyfoscam captures recent bug fixes. The pyfoscam version pulled by pip is currently broken.
* Updated requirements_all.txt based on changing pyfoscam back to libpyfoscam.
* Split out fastdotcom into a component and a sensor platform
* Update .coveragerc
* Switching to async and using a Throttle
* Add the async_track_time_interval call
* Remove the throttle
* Reorder sensor methods and add should_poll property
* Support for new velux api, added cover.velux
* More steps on new velux covers.
* correct position handling of velux windows
* Following suggestion from hound.
* bumped version
* added cover stop
* bumped version of pyvlx
* Bumped version to 0.2.8
* removed log_frames parameter
* Add component for googlehome
* Add missing name in CODEOWNERS
* Linting issues
* googledevices version bump
* Use NAME from component instead of DOMAIN
* Cleaner handling of accepted devices in for loop
* Fixes one linting issue
* Validate device_types
* Fixes one linting issue
* Fixes linting issue
* Revert 0abb642 and import DOMAIN as GOOGLEHOME_DOMAIN
* Return false if discovery_info is None
* Combine if's in for loop
* Use async_load_platfrom
* Fix line length
* Add error message to user
* Shorter log message
* error -> warning, remove period
* Update .coveragerc
* Move to correct place
* Added SmartThings component and switch platform
* Corrected comment typos.
* Embedded switch platform.
* Replaced custom view usage with webhook component.
* Replaced urls with tokens in strings.
* Fixed line length.
* Use generated webhook id instead of static one.
* Reuse core constant instead of defining again.
* Optimizations in anticipation of future platforms.
* Use async_generate_path instead of hard-coded path.
* Fixed line length.
* Updates per review feedback.
* Updates per latest review feedback.
* Adding sensor for SolarEdge Monitoring API support
* Adding support for Rova garbage calendar
* Added Rova platform to retrieve garbage pickup times
* Update async to new syntax
Added async_update to sensor class
Added Throttle to Rova update function
Minor code style changes
* Small style fixes
* Removed domain
* Update debug to error messages
Change CONF_MONITORED_VARIABLES to CONF_MONITORED_CONDITIONS
Update async update call to normal update
* Update requirements to rova v0.0.2
Add address check to see if ROVA collects in the given area
* Rename entity names to English
Add json_key to Sensor entities
* Add device_class to the RovaSensor
* Fix pylint and flake8 messages
* Add check for None in case collection date is unknown
* Return device class constant
* New Transmission component and interaction
First commit for New Transmission component and interaction
* Fix commit
* Fix commit
* Fix + Switch checkin
Fix according to failed build and request, first checkin for Turtle Mode Switch in Transmission, still have to figure it out why it's not working.
* Bugfixing
* Fix commit
Multiple fix
* Fix
* fix for missing config
* Update on requirements_all.txt
* Fix in requirements_all.txt
* Fix
* Fix for build
* fix
* Fix
* Fix (again)
* Fix
* Fix indentation
* Fix indentation
* Fix Throttle
* Update .coveragerc
* Fix import and coveragerc
* Added Recollect Waste Curbside Collection sensor for tracking next collection date and for which types of waste.
* Added missing schema attributes.
* Adding requirements and coverage entries for Recollect Waste platform.
* Added exception handling, some other fixes and suggestions from code review.
* Fixed reference to incorrect exception type.
* Updated requirements_all.txt with new version of recollect-waste.
* Added true to add_entities. Created constant for default time interval. Used different pylint exclusion comment.
* Using HA's CONF_SCAN_INTERVAL now. Unique_id is now set in @property.
* Changed parameter of timedelta from seconds to days.
* Added test run of recollect client during setup_platform. Using built in SCAN_INTERVAL now.
* Return nothing in setup_platform if there is an exception.
* Moving existing sensor file
* Initial functionality in place
* Added test for config flow
* Updated coverage and CODEOWNERS
* Linting
* Linting
* Member comments
* Hound
* Moving socket disconnect on HASS stop
* Member comments
* Removed unnecessary dispatcher call
* Config entry fix
* Added support in config flow for good accounts with no devices
* Hound
* Updated comment
* Member comments
* Stale docstrings
* Stale docstring
* Change foscam python library to pyfoscam, which is more up to date and has several critical bug fixes.
* Update requirements_all.txt to match.
* Inserting automatically generated requirements.txt
* Add nilu air_pollutants platform
* Code Review - validation, DRYs, rm state override, new attr
- Repeated code moved to own method.
- Removed override of state property.
- New attr for showing nilu pollution recommendations.
- More validation of stations input.
- Minor fixes and typos.
* Removed unused prop
* Check for none result from client before entity add
* Moved platform to air_quality component
* Updated outdated docstrings
* Minor changes
* Add a test for a homekit_controller switch
* Add a test for a homekit_controller lightbulb
* Add a test for homekit_controller thermostat
* Changes from review
* Patch utcnow to known time in HK tests
* Neater fixture use per review
* Split out dovado to a component and sensor platform
* Lint
* Address code review comments (#20339)
* Switch to using a notify platform for dovado SMS (#20339)
* Optimizing imports
* Remove return on `setup_platform`.
* Clean up unneeded constants