* Make sure values are updated regardles of manual or frontend update,
* Devices with set_switch command was not happy with fast updating.
* Binary triggersensors command was not happy with refreshed updating.
Fixes#2611
Adds a timeout kwarg to call_service and API.__call__ with default set
to 5 (as per previous behavior). Will not change existing behavior but
will allow remote Python API calls to specify a longer (or shorter)
timeout if they know that a script takes longer than 5 seconds to
return.
* Major rewrite of the KNX multi address device. This class wasn't used before, but the new class will be the base for the LNX thermostat module
* newer KNXIP version needed as the previous version had a serious bug
* Update knxip to later version
* Added thermostat module
* First implementation of a KNX thermostat module
* Minor cleanup
* Removed unsed code
* Update recorder.
models.py:
- Use scoped_session in models.py to fix shutdown error
__init__.py:
- Session _commit & retry method
- Single session var for purge_data
- Ensure single _INSTANCE
- repeat purge every 2 days
- show correct time in log_error
* _commit
* Restore models to old functionality, swap purge, remove _INSTANCE cleanup from tests, typing ignore Base class
* pylint
* Remove recorder from model unit test
* Fix deprecated(moved) import
* Add util/dt typing
* Green on mypy util/dt
* Fix some errors
* First part of yping util/yaml
* Add more typing to util/yaml
* Add __main__ type hints
* Fix most errors of __main__
* Add ignore for script.run()
* Add type annotations for from_config_dict and from_config_file
* Fix errors
* Fix requirement error
* Add mypy type check to tests
* Enable travis typing check
* Messed up the tox deps
* Laxer type checker
* Add power attribute to switch.
* Move device_state_attributes into base class.
* Fix imports following refactor.
* Bump pyvera version - should add contributed support for older (UI5) version dimmers and locks.
* Refactor device lookup to be based on vera classes, push category back into library.
* Add generic power attribute, fix inherited class order bug.
* Tidy.
* add media_player/clear_playlist and line-in/tv support to sonos
* add support source radio
* fix bug
* print TV/Line-In as media_title
* implement universal player
* add to demo platform
* Update demo.py
Better handling for demo object
* add unit tests
* fix unit test
* Allow owntracks entity for google travel times
* Added ability to use sensor state as location
* Added zone checks for google travel timesg
* Updated to use global constents and the location helper
* Fixed type in method name and removed redundant validation
* Changed domain condition to be a bit more elegant
* Updated to allow friendly name in any instance including the config
* Fixed bad python syntax and used helper methods
* add hvac mode support to radiotherm
off/cool/heat/auto modes are supported
* Moved STATE_AUTO to thermostat component, fix lint
Moved STATE_AUTO to thermostat platform. Fixed lint error.
* initial support for Join notifier
add more functions for Join
* rename to joaoapps_join
add message default in schema
move api_key check
* move special join services to their own component
update coveragerc and requirements_all
add icon and smallicon
* Clamp brightness between 0 and 255
Change to ensure that values over 255 supplied by the config will be
clamed to a max value of 255.
* Revert "Clamp brightness between 0 and 255"
This reverts commit c87238e8b5.
* Clamp brightness between 0 and 255
Change to ensure that values over 255 supplied by the config will be
clamed to a max value of 255.
* Imap unread email sensor
Checks the inbox of a imap account for unread emails. Tested against
gmail.
Example config:
```
sensor:
- platform: imap
name: gmail test
user: USER
password: PASSWORD
server: imap.gmail.com
port: 993
```
* added to .coveragerc
* Code cleanup and typo fix.
* Added port range validation
* Fix lint errors
* Implementation of a KNX platform driver and a KNX switch
* Starting working on a KNX thermostat implementation
* Removed KNX thermostat implementation from this branch again
* Make gateway parameter optional (can be auto-detected in many cases)
* Removed check for double initialisation
* KNX messages now will be handled internally and not send to the Home Assistant message bus
* Call update_ha_state only if should_poll is false
* Removed unused HASS variable
* knxip library version changed
* pylint optimization
* New Switch Platform: TPLink Switch (HS100 / HS110)
### Information
The TPLink switch platform allows you to control the state of your TPLink Wi-Fi Smart Plugs.
Supported devices (tested):
HS100 (UK)
It should also work with the HS110.
To use your D-Link smart plugs in your installation, add the following to your configuration.yaml file:
"""
# Example configuration.yaml entry
switch:
platform: tplink
host: IP_ADRRESS
name: TPLink Switch
"""
### Configuration variables:
host (Required): The IP address of your TPlink plug, eg. http://192.168.1.105
name (Optional): The name to use when displaying this switch.
* Update tplink.py
Bug fixes
* Separate to a standalone library
* Removed unnecessary imports
* Code cleanup and update reference library link
* TPLink switch support (#2453)
* updated requirements
* Update unifi.py
Add support for a site that is not the default within the Unifi Controller.
i.e. A controller with multiple sites:
- Home
- Friends
- Parents (default)
Supplying the identifier for 'Home' now means that the devices tracked will be associated with 'Home'.
* Update test_unifi.py
Fix test modules as well.
* Switch to SQLAlchemy for the Recorder component. Gives the ability to use MySQL or other.
* fixes for failed lint
* add conversion script
* code review fixes and refactor to use to_native() model methods and execute() helper
* move script to homeassistant.scripts module
* style fixes my tox lint/flake8 missed
* move exclusion up
Default behavior for warm/cold white channels is to assume the white
channel is mixed with the rgb. This is a sane default and should support
the Fibaro RGBW LED controller.
* Replace switch with lock
* Update docstrings
* Add link to docs
* Add link to docs and update docstrings
* Update docstring
* Update docstrings and fix typos
* Add link to docs
* Add link to docs
* Add link to docs and update docstrings
* Fix link to docs and update docstrings
* Remove blank line
* Add link to docs
* Support more types of 1wire sensors and bus masters
- Added support for DS18S20, DS1822, DS1825 and DS28EA00 temperature sensors
- Added support for bus masters which use fuse to mount device tree.
Mount can be specified by 'mount_dir' configuration parameter.
* Correct the lint problem
* Stick version numbers
* Move elevation to core config
* Migrate forecast test to requests-mock
* Migrate YR tests to requests-mock
* Add requests_mock to requirements_test.txt
* Move conf code from bootstrap to config
* More config fixes
* Fix some more issues
* Add test for set config and failing auto detect
* Depreciate ssl2/3
Following the best practices as defind here:
https://mozilla.github.io/server-side-tls/ssl-config-generator/
* Updated comment with better decription
Links to the rational rather than the config generator; explains link.
* add comment mentioning intermediate
* Fix move_up and move_down
I managed to switch up the zwave move_up and move_down commands.
This PR fixes it.
Thank you @nunofgs for bringing this to my attention :)
* Fix for aeotec 6 multisensor
This commit fixes an issue with the use of None in default values
for the config get() calls in __init__() of AsusWrtDeviceScanner.
These values are cast as strings and when a NoneType is cast it
returns the string "None" this broke the check for the existence
of these fields. This commit fixes the issue by changing the default
value to be an empty string '' which will conform with the behavior
expected by the ssh login code.
Closes#2343
* Add support for wind, battery, radio signals
* Fix indentation error
* second indentation fix
* Fix for pylint too many statements error
* Moving "pylint: disable=too-many-statements"
* Added Sony Bravia support to HA
* Improvements to make it work on my poor raspberry 1
* Just a typo
* A few fixes in order to pass pylint
* - Remove noqa: was due to the 80 characters max per line restriction
- Move communication logic to a separate library at https://github.com/aparraga/braviarc.git
- Added dependency and adapt the code according to that
* A few improvements
* Just a typo in a comment
* Rebase from HM/dev
* Update requirements by executing the script/gen_requirements_all.py
* More isolation level for braviarc lib
* Remove unnecessary StringIO usage
* Revert submodule polymer commit
* Small refactorization and clean up of unused functions
* Executed script/gen_requirements_all.py
* Added a missing condition to ensure that a map is not null
* Fix missing parameter detected by pylint
* A few improvements, also added an empty line to avoid the lint error
* A typo
* Basic implementation of Zwave Rollershutters
* Better filtering, by @wokar
* Fix typo
* Remove polling from component, and loop fix
* linter fix
* Filter to channel devices to correct component
* Remove overwriting of parent node name
* Created a new platform for envisalink-based alarm panels (Honeywell/DSC)
* Added a sensor component and cleanup
* Completed initial development.
* Fixing pylint issues.
* Fix more pylint issues
* Fixed more validation issues.
* Final pylint issues
* Final tweaks prior to PR.
* Fixed final pylint issue
* Resolved a few minor issues, and used volumptous for validation.
* Fixing final lint issues
* Fixes to validation schema and refactoring.
* Added template rendering to `shell_command` component
* Security upgrades to template rendering in shell_command.
* Added new unit tests for shell_command templates.
Better failure when template is invalid in shell_command
add option to name in config
fix const import
use plexapi
add myplex support for remote access
use first server if server not specified
use list comprehension
use dictionary comprehension
* Pandora cleanups and enhancements
Added media_content_type
reduced debug messages
made more robust station list
Eliminated auto-pause detection issue
* Added proper de-init of LIRC
* Now won't re-spawn Pandora client if turn_on command is sent twice
* Update frontend
Conflicts:
homeassistant/components/frontend/version.py
homeassistant/components/frontend/www_static/core.js.gz
homeassistant/components/frontend/www_static/frontend.html
homeassistant/components/frontend/www_static/frontend.html.gz
homeassistant/components/frontend/www_static/home-assistant-polymer
homeassistant/components/frontend/www_static/service_worker.js
homeassistant/components/frontend/www_static/service_worker.js.gz
* Add a default OPTIONS handler for wsgi (#2301)
When a browser makes a CORS request, it often makes a 'preflight'
options request in order to make sure the resource is valid, and that
it has the right CORS access. This adds a default OPTIONS handler for
all views. If a view needs to customize the OPTIONS handler for some
reason, it's free to, but this way CORS will work.
* Version bump to 0.21.2
When a browser makes a CORS request, it often makes a 'preflight'
options request in order to make sure the resource is valid, and that
it has the right CORS access. This adds a default OPTIONS handler for
all views. If a view needs to customize the OPTIONS handler for some
reason, it's free to, but this way CORS will work.
* Refactor Forecast.io
* Some more refactoring and code review workoff
* Dict switch refactor
* CamelCase for data lookup
* Fixing unit_of_measure update
* Better default return for unit_of_measurement
* Test fix
* Added Pandora media player utilizing the Pianobar client
* Added Pandora to .coveragerc ignore
* Fixes some docstring formats in Pandora
* More minor formatting tweaks for Pandora
* Eliminated non-portable assumption from Pandora component
* Updated Pandora to properly update currently-playing song.
* Docstring fixes in Pandora
* Added check to ensure Pianobar client is available in path for Pandora.
* Made Pandora client verification a function instead of method.
* Better handling of dependency verification in Pandora.
* Add mysensors IR switch device and service
* Add MySensorsIRSwitch as child class to MySensorsSwitch.
* Add platform specific service mysensors_send_ir_code. Only call
device method in service function if device is IR device.
* Add service and required attribute to state helper to support scenes.
* Move V_IR_SEND type from sensor.mysensors to switch.mysensors
platform.
* Populate switch.services.yaml with service descriptions.
* Fix check of entity_id in service function
Since multiple entity_ids can be passed as service data, and the
entity_id service attribute is forced to a list by the service
validation schema, the check in the service function should iterate
over any entity ids.
Previously experienced issues on routes where services operate in both
directions. The query picked up not just paths where service goes
from Origin -> Destination, but trips going Destination -> Origin,
and shown bogus results.
Ensure that this doesn't happen by requiring the origin station's
stop_sequence value to be lower than the destination station.
* WSGI based request handler
with a bit of polishing
Signed-off-by: eagleamon <joseph.piron@gmail.com>
* removed stale comment and fixed version, but failed tests do not seem to be related
* removing the wrapper hack
* added in requirements file
* Found the caved in lint error..
* Introducing the Netatmo component
As Netatmo is providing several type of device (sensor, camera), a new Netatmo
component needs to be created in order to centralize the Netatmo login data.
Currently this change only impacts the Netatmo Weather station
* Add new Netatmo library
This new API will provide access to the Welcome Camera
* Basic support for Netatmo Welcome camera
This change introduces support for Netatmo Welcome camera. Currently, it will
add all detected camera to Home Assistant, camera filtering (similar to the one
used for weather station modules) will be added later
* Remove useless REQUIREMENTS
* Fixes for Netatmo Welcome support
* Allow to filter Welcome cameras by name and/or home
* Update requirements for Netatmo components
* Fix multi-camera support for Welcome
* Fix pep8 error/warning
* This commit also adds improved logging for bad credentials
* Add Throttle decorator for Welcome update function
As the update function updates the data for all cameras, we should prevent this
function to be called several time during an interval
Previously experienced issues on routes where services operate in both
directions. The query picked up not just paths where service goes
from Origin -> Destination, but trips going Destination -> Origin,
and shown bogus results.
Ensure that this doesn't happen by requiring the origin station's
stop_sequence value to be lower than the destination station.
* Removed webcolors dependency in favor of dictionary lookup.
* Fixed code style errors.
* Moved color dictionary to module per suggestion.
* Removed try/except per suggestion.
A new configuration option `turn_off_action` is added to kodi. It may be
one of: none, quit, hibernate, suspend, reboot, or poweroff. The
appropriate command is sent to kodi when the turn_off action is
requested. Default value is none.
Kodi will only report turn_off supported if it is configured to
something other than none.
Unfortunately, Ubiquiti changed their (supposedly versioned) API in
3.2.0 which causes us to have to refer to cameras by id instead of
UUID. The firmware for 3.2.x also changed the on-camera login procedures
and snapshot functionality significantly.
This bumps the requirement for uvcclient to 0.9.0, which supports the
newer API and makes the tweaks necessary to interact properly.
This is useful to vaoid having several graph for the same type of data
According to wikipedia:
Units derived from the bar include the megabar (symbol: Mbar),
kilobar (symbol: kbar), decibar (symbol: dbar), centibar (symbol: cbar),
and millibar (symbol: mbar or mb).