Commit Graph

4054 Commits (7e0d9bc7095d9ba47def6f54f2970b35e7bf30ec)

Author SHA1 Message Date
Robbie Trencheny 86dad0c045 Add ZeroConf support to http.py 2016-04-06 13:51:26 -07:00
Josh Wright 29fb6faa40 Use whole degrees fahrenheit for thermostats
Users of fahrenheit generally expect to see whole degrees. The fahreneit

scale is suffiently precise that decimals aren't really useful in terms

of temperatures humans care about.



This change rounds fahrenheit values to whole degrees and celsius values

to one decimal place. It also renames the ThermostatDevice._convert()

method to _convert_for_display(), making its purpose more clear. It is

not useful for the min_temp() and max_temp() methods, as those relate to

the internal state of the ThermostatDevice object, and may use different

units. Adding optional source and target units to _convert() would have

added needless complexity, it's cleaner to just use convert() in those

methods.
2016-04-06 11:54:50 -07:00
Alexander Fortin e8efcd21df Increase sonos volume increment from 1 to 5 2016-04-06 11:32:27 -07:00
Daniel Høyer Iversen cfb318287d Refactor rfxtrx component 2016-04-06 10:34:51 -07:00
Fabian Affolter 2e44166854 Change to freegeoip.io and add a second service as fall-back 2016-04-06 10:25:40 -07:00
Paulus Schoutsen b4ddc86304 Fix speedtest with external installed package 2016-04-06 07:38:35 -07:00
Florian Holzapfel ecc440f459 add panasonic viera tv media player device 2016-04-05 22:51:55 -07:00
Jan Harkes dbbbed404c Detect duplicate keys in configuration.yaml. 2016-04-05 21:21:16 -07:00
Jan Harkes 3bb571b578 Bump rxv to 0.1.11.
Fixes socket read/write timeout issues.
2016-04-05 14:17:42 -04:00
Paulus Schoutsen 8ef542927f Add automation config validation
* Add automation config validation

* Remove unnecessary dict validator

* Downgrade voluptuous to 0.8.9

* Fix linting

* Address issues
2016-04-04 12:18:58 -07:00
Jan Harkes cbe9a7d2a3 Add case insensitive testing to boolean string validation. 2016-04-03 21:38:58 -07:00
Robbie Trencheny eb415d7b96 Allow passing in a dictionary of provider specific data 2016-04-03 17:54:58 -07:00
Justyn Shull c232242af0 Add support for monitoring nzbget
Calculate average download rate the same way as downloadrate



Add config option for choosing which nzbget variables to monitor, and provide a default



Pep8 fixes



Refactoring and changes based on @balloob's comments



Add nzbget.py to .coveragerc omit list.  Check if there are any http

errors (like bad auth) when creating the nzbgetapi class.   If there

are, the setup_platform() function will return false.  Exceptions are

logged as well.

When a new sensor is created, assign the initial value from the api

instead of simply using None until the first update call.
2016-04-03 15:57:50 -07:00
Robbie Trencheny d00e63486a This code never properly worked because the incorrect variable was used 2016-04-03 15:45:44 -07:00
Paulus Schoutsen e140e9b8ab Add script + extra config validators
* Add config validation and extra validators

* Address PR comments
2016-04-03 10:19:09 -07:00
Paulus Schoutsen 7ed5055fa2 Fix MQTT linting 2016-04-03 02:25:02 -07:00
Jan Harkes 9ce2081110 Coerce ascii flags in MQTT publish service call.
Also fixes a bug where the test when no payload is given succeeds only

because we run the jinja templating out of memory. Sending an empty

payload instead of trying to fix it through validation for now.
2016-04-03 00:54:05 -07:00
Fabian Affolter 24b7a7b964 Add source ip to log entry 2016-04-03 00:46:05 -07:00
Paulus Schoutsen f6d584af09 Allow platforms to specify PLATFORM_SCHEMA 2016-04-02 20:10:57 -07:00
Kai 4fba89b789 Add Z-Wave thermostat
based on @coteyr work and with a help from @turbokongen
2016-04-02 20:01:03 -07:00
Greg Dowling 61a9562811 Reconnect loopenergy
* Bump pyloopenergy version to handle disconnects. Round floats.

* Bump pyloopenergy version - to support reconnect.
2016-04-02 08:47:21 -07:00
Jan Harkes 5c753f8ffd Service validation for MQTT component.
* Service validation for MQTT component.

* Fixes for failing mqtt tests.

- Changed behaviour when both 'payload' and 'payload_template' are provided
  instead of silently ignoring the payload_template value.
- Have validation accept any type of payload and leave encoding to paho-mqtt.
2016-04-02 08:46:09 -07:00
sander76 ebd053824d changed scene name to unique powerview id's 2016-04-02 08:41:57 -07:00
Jan Harkes afd1e6a5cc Service validation for media_player component 2016-04-02 03:51:03 -04:00
Paulus Schoutsen 5c262753d4 Merge pull request #1677 from jaharkes/config-validation-nest
Config validation for Nest component
2016-04-01 08:07:31 -07:00
Paulus Schoutsen a0df7d9ff3 Merge pull request #1674 from jaharkes/group-order
Maintain group ordering across validation.
2016-04-01 08:06:01 -07:00
pavoni 6ee086c0bb Fix thread termination on exit. 2016-04-01 15:36:33 +01:00
Jan Harkes faebc9e2c4 Config validation for nest component 2016-04-01 10:31:39 -04:00
Jan Harkes d0b7f6cfb0 Bump pywemo version 2016-04-01 10:02:55 -04:00
Jan Harkes e5eb3b13c4 Maintain group ordering across validation. 2016-04-01 09:45:27 -04:00
Paulus Schoutsen deffbeb922 Update frontend 2016-04-01 00:37:30 -07:00
Paulus Schoutsen 7df8e010f3 Merge pull request #1665 from balloob/update-netdisco
Update netdisco dependency
2016-03-31 23:35:32 -07:00
Paulus Schoutsen ee91bcc601 Update netdisco dependency 2016-03-31 23:30:08 -07:00
Paulus Schoutsen c8e88d923a Merge pull request #1648 from balloob/yr_default_config
Add yr weather component to default config
2016-03-31 23:28:14 -07:00
Paulus Schoutsen 423d8be83f Merge pull request #1658 from balloob/add_loop_energy
Add loop Energy sensors.
2016-03-31 23:16:23 -07:00
Paulus Schoutsen b063fa3165 Merge pull request #1646 from balloob/rfxtrx
Fixed bug in rfxtrx sensor
2016-03-31 22:12:04 -07:00
Paulus Schoutsen 489c5b8188 bootstrap platform components: adjust instead of replace config 2016-03-31 21:11:14 -07:00
Jan Harkes b45bbbcecf Merge pull request #1661 from jaharkes/service-call-validation
Service call validation
2016-03-31 23:36:11 -04:00
Jan Harkes 6d914126fa Validate data read from light_profiles.csv 2016-03-31 23:29:07 -04:00
Jan Harkes 4f3dc2ce8b Coerce RGB and XY color values to tuples instead of lists. 2016-03-31 22:59:18 -04:00
Jan Harkes 017f47dd2c Service validation for light.turn_on/.turn_off/.toggle 2016-03-31 22:03:38 -04:00
Jan Harkes 5bd58351c7 Move service scheme validation into Service.__call__
Keeps where the schema is stored and validated close.
2016-03-31 21:13:40 -04:00
Alexander Fortin b304b77005 FIX enable volume commands for non-coordinators too 2016-03-31 21:36:58 +02:00
Jan Harkes 64030b9d48 Add validation schema as optional argument to service registration. 2016-03-31 14:59:36 -04:00
pavoni c41e63806c Add loop Energy sensors. 2016-03-31 17:00:43 +01:00
root 7b1ec418f2 Fix crash of Rfxtrx component when using config option fire_event 2016-03-30 16:20:19 +02:00
Daniel 00eda74c7e Add yr weather component to default config 2016-03-30 11:33:35 +02:00
Daniel c4062bf6ea Fixed bug in rfxtrx sensor 2016-03-30 10:57:26 +02:00
Charles Spirakis b8ea743843 Enable zwave test_network command.
Allows for testing the zwave network by sending
a no-op command to all the nodes. In theory,
this will also bring back nodes which have been
put in the "presumed dead" state.
2016-03-30 01:29:11 -07:00
Paulus Schoutsen 5b00919bed Merge branch 'pr/1643' into dev
Conflicts:
	requirements_all.txt
2016-03-29 23:23:45 -07:00
Paulus Schoutsen a4ffec341b Merge pull request #1633 from balloob/config-validation
Add initial config validation
2016-03-29 23:01:36 -07:00
Paulus Schoutsen ac28228e6b Either validate component config or platform config 2016-03-29 22:51:33 -07:00
Paulus Schoutsen d0e613194e Merge pull request #1644 from robbiet480/uber-fixes
Uber sensor breaking fix
2016-03-29 22:20:21 -07:00
Robbie Trencheny 56e64d477a Little fixes 2016-03-29 21:02:17 -07:00
Robbie Trencheny 55daf51108 Dont set default value for price_details to empty dict since we want to check price_details for is None 2016-03-29 20:42:15 -07:00
Robbie Trencheny 60b427accc Flake8 and Pylint fixes 2016-03-29 20:36:04 -07:00
Robbie Trencheny 0ac34aaa52 Fix for when you have an Uber product that doesnt give a price estimate 2016-03-29 20:14:27 -07:00
Daniel J. Kemp 86199c8277 Add onkyo receiver, and source select support
Added onkyo receiver component

Added support for input source selection to media players,
and do the onkyo receiver component.
2016-03-29 22:17:36 -04:00
Robbie Trencheny 9f5e192761 Uber Rides SDK has been updated upstream to support Python3. No need for this fork anymore! 2016-03-29 18:44:36 -07:00
Paulus Schoutsen 25269cdb6b Add tests for bootstrap config validation 2016-03-29 00:17:53 -07:00
Paulus Schoutsen a35173a5ff Surpress silly warnings 2016-03-28 23:46:19 -07:00
Paulus Schoutsen 5baa98b79f Add initial config validation 2016-03-28 23:46:12 -07:00
Paulus Schoutsen 0549bc0290 Merge pull request #1636 from srcLurker/zwave_polling
Zwave cleanup for startup and poll_intensity.
2016-03-28 14:12:10 -07:00
Charles Spirakis f28aa030e6 Zwave cleanup for startup and poll_intensity.
If the polling intensity is zero, specifically
disable polling for that device/sub device.

Have zwave startup wait until the zwave
nework is ready (defined by python openzwave docs):

https://python-openzwave.googlecode.com

SIGNAL_NETWORK_AWAKED : all awake nodes are queried. Some sleeping nodes may be missing.

and

You can safely ask node informations when state >= STATE_AWAKED

This appears to make the polling of nodes a bit more deterministic.
2016-03-28 10:49:58 -07:00
Paulus Schoutsen 69fd927656 Update frontend 2016-03-28 00:15:26 -07:00
Paulus Schoutsen e989c8a24a Merge pull request #1624 from balloob/http-11
Use HTTP 1.1
2016-03-27 23:21:52 -07:00
Paulus Schoutsen 9089f19165 Merge pull request #1627 from balloob/python-check
Fix broken Python check for Python 2
2016-03-27 22:41:24 -07:00
Paulus Schoutsen f30376443f Merge pull request #1623 from robbiet480/gtfs-sensor
GTFS sensor
2016-03-27 22:40:20 -07:00
Paulus Schoutsen fe73cbbcb6 Revert pyicloud upgrade 2016-03-27 22:14:51 -07:00
Paulus Schoutsen 79a2d40f4d Merge pull request #1590 from LucaSoldi/some-feature
Added Raspberry Pi Camera Component
2016-03-27 14:00:28 -07:00
Paulus Schoutsen 7cb69ae9d9 Make sure we always sent content-length header 2016-03-27 12:15:41 -07:00
Luca Soldi d0503cc021 Add feature
√ add file_path config
√ changed subprocess call
2016-03-27 20:49:04 +02:00
Paulus Schoutsen c63a3311f4 Fix broken Python check for Python 2 2016-03-27 08:44:15 -07:00
Fabian Affolter 2db49ebca5 Add connectivity to sensor classes 2016-03-27 11:48:48 +02:00
Paulus Schoutsen 4cbd49921f Use HTTP 1.1 2016-03-26 19:03:16 -07:00
Robbie Trencheny 2a194d8861 Use named string formatting for safety 2016-03-26 18:55:49 -07:00
Paulus Schoutsen d8121ed8b2 Merge pull request #1621 from balloob/fix-owntracks-acc-bug
Cast acc to float before comparison.
2016-03-26 18:55:11 -07:00
Robbie Trencheny dac3c9d1b5 Pylint and flake8 2016-03-26 18:53:21 -07:00
Robbie Trencheny 5a35e4a9ba Data source validation 2016-03-26 18:52:03 -07:00
Robbie Trencheny 1fd96296f7 Use parameterized queries when possible 2016-03-26 18:47:54 -07:00
Robbie Trencheny 116b83b53f Fix PyGTFS import errors 2016-03-26 18:25:49 -07:00
Robbie Trencheny f31ba11861 Lock SQLAlchemy 2016-03-26 18:05:34 -07:00
Robbie Trencheny 982baaba22 Annoying missing period 2016-03-26 17:59:38 -07:00
Robbie Trencheny 8fe1a9f008 Pylint and flake8 2016-03-26 17:53:46 -07:00
Robbie Trencheny 90f1b57ed8 Initial GTFS sensor 2016-03-26 17:41:09 -07:00
Fabian Affolter ee36c36783 Add support for sensor classes 2016-03-26 23:39:56 +01:00
pavoni c7e49f20d3 Cast acc to float before comparison. 2016-03-26 22:38:24 +00:00
Flyte ada561df30 Remove unused import and unnecessary DOMAIN constant from TCP components. 2016-03-26 17:33:18 +00:00
Ellis Percival 15303fd32d Remove unnecessary dependency from TCP binary sensor for #1617 2016-03-26 16:42:53 +00:00
Fabian Affolter 2c45d1f27d Upgrade pyowm to 2.3.1 2016-03-26 12:50:12 +01:00
Paulus Schoutsen 9d0b15421c Version bump to 0.17.0.dev0 2016-03-26 01:02:30 -07:00
Paulus Schoutsen e53adf003c Version bump to 0.16 2016-03-26 01:01:46 -07:00
Paulus Schoutsen 3df946aa9e Merge pull request #1598 from aoakeson/dev
Yamaha Receiver Support
2016-03-26 00:05:05 -07:00
Andrew 2285a6761c Initial Yamaha Receiver Implementation
Text Update

Additional additions and better support for volume, and mute.  Cleanup

Added rxv to requirements_all

Added yamaha.py to .coveragerc

Made uppercase, and removed tabs

Added requirements variable

Added doc string for lint

Removed global variable, and simplified state as per balloobs suggestion

Refactored the component with balloobs suggestions

-Added import in the method
- Only get receiver information on init
- A bit of cleanup

Remove up and down volume

Uneeded as this is handled by set volume instead

Fixed a lint build error

More lint fixes

Removed unused imports

Lint Fixes

Simplified if statement

Minor refactoring since the init calls update.

Fixed lint error

Just variable naming change

Added support for an optional name for the receiver.

Better error handling, a bit of refactoring based on balloobs suggestions

Fixed lint error.

Another lint error fix

Changed raise to return

Disable pylint error handling

Pylint broad exception

Made exception handling in the setup platform instead of the constructor.

Lint error fix

Refactored the way devices are found.  This allows for multiple receivers
2016-03-26 00:47:00 -06:00
Robbie Trencheny ce4933d637 Fill out services.yaml for media_player 2016-03-25 23:38:10 -07:00
Paulus Schoutsen de6fc771cb Merge pull request #1607 from fabaff/sensor-class-rest
Add support for sensor classes
2016-03-25 23:27:21 -07:00
Robbie Trencheny de68be06dd Misspelling fix 2016-03-25 22:57:28 -07:00
Robbie Trencheny 950cc9e618 Add play_media support to Sonos 2016-03-25 22:57:14 -07:00
Paulus Schoutsen a3d505f45e Merge pull request #1610 from robbiet480/gntp
Add GNTP notifier
2016-03-25 22:09:13 -07:00
Paulus Schoutsen befdecc3b0 Merge pull request #1602 from robbiet480/uber-sensor
Uber sensor
2016-03-25 21:51:03 -07:00
Paulus Schoutsen b92a51c1c3 Merge pull request #1603 from balloob/chore/template-race-condition
Clean up template platforms
2016-03-25 21:48:36 -07:00
Robbie Trencheny 20f8935b86 Clean up a lot of pep8 and syntax errors. 2016-03-25 19:32:49 -07:00
Robbie Trencheny 652c666d14 Add GNTP notifier 2016-03-25 18:39:08 -07:00
Fabian Affolter 9157bd38e8 Update docstrings 2016-03-25 20:35:38 +01:00
Fabian Affolter f0970f4104 Add support for sensor classes 2016-03-25 18:34:58 +01:00
Paulus Schoutsen 41f205e09d Clean up template platforms 2016-03-24 23:22:17 -07:00
Robbie Trencheny 5b18ea4237 Fix all pylint, flake8 and pydocstyle issues 2016-03-24 22:30:10 -07:00
Paulus Schoutsen 70ce179224 Merge pull request #1551 from w1ll1am23/command_line_assumed
Added assumed state to command_line switch
2016-03-24 21:54:36 -07:00
Robbie Trencheny 0b9699fd4b Uber sensor 2016-03-24 19:48:10 -07:00
Bart274 dd691a4684 upgrade pyicloud version 2016-03-24 17:22:44 +01:00
Fabian Affolter 40e17da415 Upgrade to python-forecastio 1.3.4 2016-03-24 16:42:25 +01:00
Fabian Affolter fef682b192 Revert "Upgrade pysnmp to 4.3.2"
This reverts commit 38e6f8fdab.
2016-03-24 16:23:57 +01:00
Fabian Affolter 369d234bda Remove wallet 2016-03-24 12:38:18 +01:00
Paulus Schoutsen 5085e337e5 Update frontend 2016-03-24 00:48:21 -07:00
Fabian Affolter 10cb8c0799 Upgrade python-telegram-bot to 3.4 2016-03-24 08:07:59 +01:00
Fabian Affolter 565ae8d30f Upgrade python-mpd2 to 0.5.5 2016-03-24 08:07:06 +01:00
Fabian Affolter 2c770164f2 Upgrade blockchain to 1.3.1 2016-03-24 08:00:05 +01:00
Fabian Affolter 38e6f8fdab Upgrade pysnmp to 4.3.2 2016-03-23 23:57:32 +01:00
Fabian Affolter a0be348f3a Upgrade psutil to 4.1.0 2016-03-23 22:44:05 +01:00
Fabian Affolter f7943d9448 Upgrade python-nmap to 0.6.0 (attempt to fix #1592) 2016-03-23 22:25:35 +01:00
Jan Harkes 2d91dce6d0 Assume we only run one Logitech Media server on a host.
Because the LMS discovery mechanism uses the SlimProto protocol to discover the
presence of a Logitech Media server which operates on port 3483/udp and
3483/tcp. But HA uses a different 'CLI' protocol that is typically on port
9090/tcp to query player state.

However the CLI port number is configurable and if someone runs the CLI on a
different port, and has the server configured in configuration.yaml, we get an
error in the logs when we try to connect to 9090/tcp when we find the server
through discovery. Because of the way local slim player discover the server
using SlimProto we can be fairly certain only a single server will run on a
given IP address so if one is already configured with a user defined port, we
should ignore the discovered one that assumes the default port.
2016-03-23 14:47:29 -04:00
Luca Soldi 65ef836313 Check raspistill exisance and check parameters in setup_platform 2016-03-22 22:35:09 +01:00
Paulus Schoutsen 015527aa5f Nest sensor - remove broken sensor types 2016-03-22 08:45:44 -07:00
Paulus Schoutsen 5bd004ee38 Merge pull request #1526 from tilutza/dev
Arduino switch: add support for default stat and negate port function…
2016-03-22 08:40:39 -07:00
Paulus Schoutsen 4792b9f40c Merge pull request #1583 from Cinntax/pulseaudio-loopback-switch
Pulseaudio loopback switch
2016-03-22 08:30:17 -07:00
Luca Soldi bf915cf3b4 Added Raspberry Pi Camera Component 2016-03-22 08:33:56 +01:00
Fabian Affolter 0490514d9e Merge pull request #1585 from jaharkes/wemo
Bump pywemo to new version.
2016-03-21 23:50:00 +01:00
Per Sandström ca788b6e4d bump vsure verisure 2016-03-21 20:39:03 +01:00
Jan Harkes fd7d6a9d53 Bump pywemo to new version. 2016-03-21 10:05:06 -04:00
Dan Cinnamon 6ee3ca8264 Creation of a new platform for the existing switch component. 2016-03-20 23:10:57 -05:00
dtila a8761e1ef8 Add support for having default state on arduino switch and negate functionality
Arduino switch: add support for default stat and negate port functionality

Travis changes

Arduino switch: add support for default stat and negate port functionality
Because Travis was configured to have maxiimum 5 arguments allowed in functions, I changed the function constructor signature too ... Paul, 6 parameters for a function is really ok

Arduino Switch: add default state config and negate functionality
2016-03-20 12:52:06 +02:00
Paulus Schoutsen 557dae7ab3 Fix typo in light docs 2016-03-19 19:44:20 -07:00
seedzero 59dc8da365 ZwaveDimmer turn_on brightness changed from float to integer 2016-03-20 13:14:59 +11:00
Fabian Affolter bb658412c4 Revert "Allow encrypted passwords"
This reverts commit 505b3b198e.
2016-03-19 22:19:08 +01:00
Fabian Affolter 505b3b198e Allow encrypted passwords 2016-03-19 22:15:23 +01:00
MartinHjelmare 4e4b24fcff Log error for servicecall without required data
* Log error for services called without required attributes, in
	media_player, notify and thermostat platforms.
* Add fan property and methods in thermostat demo component.
* Add tests for notify file and thermostat demo component.
* Increase coverage of tests for media_player, notify and thermostat
	platforms.
* Fix some PEP issues, but not all. Tests still have old linting
	errors.
2016-03-19 08:06:57 +01:00
joopert c6f66de16e log "unable to fetch kodi data" only once 2016-03-18 18:29:50 +01:00
joopert 0bbcc81285 wake on lan platform 2016-03-18 15:01:53 +01:00
Paulus Schoutsen 302f32eacd Merge pull request #1553 from florianholzapfel/notify-messagebird
provide sms notifications via messagebird
2016-03-17 22:02:08 -07:00
Paulus Schoutsen c093a2bf54 Merge pull request #1564 from balloob/fix_template_race_condition
Fix remaining race condition in template components.
2016-03-17 21:18:38 -07:00
Paulus Schoutsen 792954adc9 Merge pull request #1566 from jaharkes/squeezebox-discovery
Add discovery for squeezebox (logitech media) servers.
2016-03-17 21:12:13 -07:00
Paulus Schoutsen bb5c80b8f5 Merge pull request #1567 from jaharkes/wemo-color-lights
Update to new pywemo bridge API
2016-03-17 21:11:02 -07:00
Paulus Schoutsen 3f3bfbbb94 Merge pull request #1572 from balloob/update-netdisco
Update netdisco to 0.5.5
2016-03-17 21:08:48 -07:00
Paulus Schoutsen 8a38ba5954 Update netdisco to 0.5.5 2016-03-17 20:57:58 -07:00
William Scanlon 208a7c9e60 Added available method to all wink components 2016-03-17 15:57:26 -04:00
Jan Harkes 27aba5c834 Update to new pywemo bridge API
Support RGBW and tunable white lights.
2016-03-17 12:27:06 -04:00
William Scanlon a64726e321 Added assumed state to command_line switch 2016-03-17 10:41:26 -04:00
Jan Harkes c2204433bd Add discovery for squeezebox (logitech media) servers. 2016-03-17 09:38:56 -04:00
pavoni 4e7160139e Fix race condition in template components. 2016-03-17 12:10:19 +00:00
pavoni 47d5c4f437 Bump pywemo version. 2016-03-17 11:40:25 +00:00