Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
218 commits
Select commit Hold shift + click to select a range
ff3a463
Version bump to 0.52.0.dev0
fabaff Aug 10, 2017
d427063
Update python-wink version to fix Dome water valve bug. (#8923)
Aug 11, 2017
0999e2d
Update roombapy to 1.3.1 to avoid installing all the mapping dependen…
pschmitt Aug 11, 2017
49733b7
Remove not needed call to update (#8930)
MartinHjelmare Aug 12, 2017
c4550d0
Add version sensor (#8912)
fabaff Aug 12, 2017
489a02b
Fix hue lights for Philips and non-philips lights (#8905)
groth-its Aug 12, 2017
369caee
fixing emulated hue issue and testing it (#8928)
cribbstechnologies Aug 12, 2017
fbb6782
Fix SET_TEMPERATURE_SCHEMA in climate component (#8879)
MartinHjelmare Aug 12, 2017
4a98b32
Update frontend
balloob Aug 12, 2017
79f45b5
Fixed cert_expiry sensor to delay firing on HA startup (#8920)
arsaboo Aug 13, 2017
73d6227
Remove spaces from Xiami switch attributes (#8952)
syssi Aug 13, 2017
c92e5c1
fix DeviceException handling when updating xiaomi vacuum (#8954)
azogue Aug 13, 2017
811fdc5
Add service to alarm control panel for night mode arming (#8614)
schmittx Aug 13, 2017
cbe5225
Fix call to ha_send_commands (#8956)
MartinHjelmare Aug 13, 2017
4b3a932
Sabnzbd: do not assume discovery info is a dict (#8951)
balloob Aug 13, 2017
74adebc
fix issue #8948 in pushbullet (#8965)
balloob Aug 13, 2017
23273d3
Fix zwave power_consumption attribute (#8968)
andrey-git Aug 14, 2017
a0ddb24
Turn foscam verbose mode off (#8967)
andrey-git Aug 14, 2017
8fcec03
Update frontend
balloob Aug 14, 2017
19d1d74
Add support for Automatic OAuth2 authentication (#8962)
emlove Aug 14, 2017
e2920ce
Nello.io lock support (#8957)
pschmitt Aug 14, 2017
5309006
Added continue-on-errors, added value template (#8971)
iamjackg Aug 14, 2017
1892eb6
Is_allowed_path raise for None path (#8953)
Danielhiversen Aug 15, 2017
6507cc1
Fix #8960 - Decora Wi-Fi Switch unable to set brightness (#8989)
tlyakhov Aug 15, 2017
eb42d59
Adds port/SSL config options for RainMachine (#8986)
bachya Aug 15, 2017
95c5741
Automatic device tracker remove password (#9002)
emlove Aug 16, 2017
2dab239
Add scripts editor backend (#8993)
balloob Aug 16, 2017
0fb281c
Update frontend
balloob Aug 16, 2017
3342db3
MQTT Switch - Add configurable availability payload (#8934)
Aug 16, 2017
e7ce110
Buienradar newconditions (#8897)
mjj4791 Aug 16, 2017
f114263
Pushbullet, fix multiple messages sent when url param is set (#9006)
karlkar Aug 16, 2017
95663f8
Update to pyenvisalink 2.2, and remove range validation on zonedump i…
Cinntax Aug 16, 2017
b75ce4f
Fix #9010 - Swiss Public Transportation shows departure time in the p…
hertg Aug 16, 2017
3765f88
Add HipChat notify service. (#8918)
BioSehnsucht Aug 16, 2017
55234a7
Update onkyo-eiscp to 1.2.3 (#9019)
especially-relative Aug 17, 2017
427d7ee
Check if album image(s) exist in spotify (#9024)
Tommatheussen Aug 17, 2017
c278209
Update ffmpeg to 1.7 to fix severals problems (#9029)
pvizeli Aug 17, 2017
b282167
Add state_with_unit property to state objects in templates (#9014)
balloob Aug 18, 2017
6215e27
Fix Geizhals index issue when not 4 prices available (#9035)
celeroll Aug 18, 2017
ecc249a
Refactor USPS into component with Sensors+Camera (#8679)
mezz64 Aug 18, 2017
7ac1e46
Set password after connecting. Fixes #8983 (#9039)
StevenLooman Aug 19, 2017
597f53a
Update iOS sensor (battery icon fix and format updates) (#9032)
schmittx Aug 19, 2017
9837056
Adds London_air component (#9020)
robmarkcole Aug 19, 2017
a748b5e
Update pwmled to 1.2.1. (#9040)
soldag Aug 19, 2017
bf66019
Configurable timeout for webostv. (#9042)
soldag Aug 19, 2017
84025e4
Update ios.py (#9041)
schmittx Aug 19, 2017
5d52993
Support Windows in UPNP discovery (#8936)
kabongsteve Aug 19, 2017
0f9ae88
Upgrade python-pushover to 0.3 (#9045)
fanaticDavid Aug 19, 2017
d153ee0
Add speeds to fan dropdown in ISY fan component (#9004)
boojew Aug 19, 2017
c059dfd
Update Fitbit sensor (icons, formatting, client update) (#9031)
schmittx Aug 19, 2017
b3d16e8
Add Abode home security component (#9030)
arsaboo Aug 20, 2017
fee89d8
LIFX: avoid rare NoneType errors (#9054)
amelchio Aug 20, 2017
ebd64cd
Bump dlib face_recognition to 0.2.2 (#9060)
arsaboo Aug 20, 2017
c3d548a
Update fitbit.py (#9064)
schmittx Aug 21, 2017
3c9e09c
Upgrade sendgrid to 5.0.0 (#9062)
fabaff Aug 21, 2017
fe7384a
Upgrade slacker to 0.9.60 (#9065)
fabaff Aug 21, 2017
97e6a69
Add support for Prowl notifications. (#9028)
mbrrg Aug 21, 2017
f7daefd
Upgrade onkyo-eiscp to 1.2.4 (fixes #8995) (#9068)
fabaff Aug 21, 2017
7c38058
Workday sensor offset (#8824)
LaStrada Aug 21, 2017
4bb7809
eliqonline: channel id is an integer (#9072)
molobrakos Aug 21, 2017
bc549e9
Use builtin constants for Abode alarm_control_panel (#9059)
arsaboo Aug 21, 2017
54f01f3
bump python-ecobee-api version to 0.0.8 (#9074)
nkgilley Aug 21, 2017
8ceeee0
Bump abodepy to 0.7.1 (#9077)
arsaboo Aug 22, 2017
398735c
async_query returns False if connection to server failed, handle this…
molobrakos Aug 22, 2017
f6c5e5f
Added insteonplm device_override multiple capabilities (#9078)
teharris1 Aug 22, 2017
af8aec0
Upgrade uber_rides to 0.5.1 (#9080)
fabaff Aug 22, 2017
42fcaf9
Upgrade discord.py to 0.16.10 (#9082)
fabaff Aug 22, 2017
da2cb8e
Fix `device` attribute in fritz_callmonitor.py (fixes #9055) (#9081)
max-te Aug 22, 2017
4a3be6d
Upgrade youtube_dl to 2017.8.18 (#9079)
fabaff Aug 22, 2017
c77d2ea
Remove dash (#9089)
fabaff Aug 22, 2017
dd0ca0a
Upgrade credstash to 1.13.3 (#9088)
fabaff Aug 22, 2017
5a3a43c
9043 Fixed error while running dev docker (#9044)
MungoRae Aug 22, 2017
252aea3
Don't redefine consts (#9086)
fabaff Aug 22, 2017
06a20d0
Fix octoprint errors when printer is off/disconnected (#8988)
Aug 22, 2017
fd6fd76
Pilight switch: restore last state after restart (#8580)
janLo Aug 22, 2017
90689c3
Fix netdata system_load and add disk_free. (#9091)
michaelarnauts Aug 22, 2017
cb59b3f
Add worldtidesinfo sensor component (#8860)
Aug 22, 2017
90fb33f
Support changing the bulb color for tplink smartbulbs, fixes #8766 (#…
rytilahti Aug 23, 2017
9072484
bump snapcast version (#9100)
happyleavesaoc Aug 23, 2017
27b0d64
bump fedex version (#9099)
happyleavesaoc Aug 23, 2017
55a44b0
Yeelight fix updates on hsv mode (#9093)
rytilahti Aug 23, 2017
2355216
Catch exceptions (#9085)
fabaff Aug 23, 2017
4890953
Fix issue 8894 with uk_transport component if no next_buses or next_t…
robmarkcole Aug 23, 2017
feb85b9
upgrade Xiaomi Gateway lib to 0.3 (#9101)
Danielhiversen Aug 23, 2017
0dccef4
pythonegardia package requirement to .18 (#9104)
jeroenterheerdt Aug 23, 2017
698d133
Simplisafe unknown status fix (#9111)
lekobob Aug 24, 2017
d72a181
Update flux_led.py (#9122)
Danielhiversen Aug 24, 2017
1e276a7
Xiaomi (#9126)
Danielhiversen Aug 25, 2017
fb5019e
refactor pushbullet (#9125)
Danielhiversen Aug 25, 2017
2ec0d25
optimistic mode for template covers (w/o timed movement) (#8402)
PhracturedBlue Aug 25, 2017
fdeef2f
Use const (#9127)
fabaff Aug 25, 2017
fe7dca5
Merge remote-tracking branch 'origin/master' into dev
balloob Aug 25, 2017
2e1b163
Version bump to 0.52
balloob Aug 25, 2017
044b96e
Version bump to 0.53.0.dev0
balloob Aug 25, 2017
8775c54
Refactor mysensors callback and add validation (#9069)
MartinHjelmare Aug 25, 2017
56083c0
Xiaomi Philips Lights integration (#9087)
syssi Aug 26, 2017
1d615ea
Refactor mysensors callback and add validation (#9069)
MartinHjelmare Aug 25, 2017
50e5032
Merge pull request #9131 from home-assistant/release-0-52
balloob Aug 26, 2017
0d3fa59
Fix issue #9116 in pushbullet (#9128)
Danielhiversen Aug 26, 2017
f4d464c
Fix import for foscam (#9140)
sdague Aug 26, 2017
493353e
bug fix pushbullet (#9139)
Danielhiversen Aug 26, 2017
c537770
Close stream request once we end up with proxy (#9110)
foxel Aug 26, 2017
c73338b
Backend changes for customize config panel. (#9134)
andrey-git Aug 26, 2017
21bf089
Bump aioautomatic to prevent leaking exceptions (#9148)
emlove Aug 26, 2017
8605098
Wrap state when iterating a domain in templates (#9157)
balloob Aug 27, 2017
ae5fca1
Upgrade async_timeout to 1.3.0 (#9156)
fabaff Aug 27, 2017
7062c2b
Remove links to gitter (#9155)
fabaff Aug 27, 2017
f47de06
Upgrade sphinx-autodoc-typehints to 1.2.3 (#9151)
fabaff Aug 27, 2017
8fdd971
Upgrade uber_rides to 0.5.2 (#9149)
fabaff Aug 27, 2017
c367021
Allow specifying custom html urls to load. (#9150)
andrey-git Aug 27, 2017
5629157
Allow getting number of available states in template (#9158)
balloob Aug 27, 2017
499d54c
upgrade xiaomi lib to 0.3.1 to supprt water sensor (#9168)
Danielhiversen Aug 27, 2017
cd3f0f8
Use node_modules gulp in script/build_frontend (#9170)
emlove Aug 27, 2017
654f689
Mysensors nodes can be renamed in config file (#9123)
EmitKiwi Aug 27, 2017
bf315da
Xiaomi gateway: Device support for the Aqara Water Leak Sensor (senso…
syssi Aug 27, 2017
de48d42
"TypeError: write_to_hub() takes 2 positional arguments but 4 were gi…
syssi Aug 27, 2017
bd039b8
Mycroft notify/component (#9173)
btotharye Aug 27, 2017
f6a701e
Bumped the version of PyISY
rmkraus Aug 28, 2017
2533b49
Merge pull request #9182 from home-assistant/pyisy-update
rmkraus Aug 28, 2017
f9c22b0
bump ecobee version to fix issue 9190 (#9191)
nkgilley Aug 28, 2017
924290a
Update frontend
balloob Aug 28, 2017
cc18b5a
Prevent iCloud exceptions in logfile (#9179)
mjj4791 Aug 28, 2017
10e3c00
Version bump to 0.52.1
balloob Aug 28, 2017
8a89643
Close stream request once we end up with proxy (#9110)
foxel Aug 26, 2017
0ae1f85
Fix issue #9116 in pushbullet (#9128)
Danielhiversen Aug 26, 2017
422be25
bug fix pushbullet (#9139)
Danielhiversen Aug 26, 2017
e6892a4
Fix import for foscam (#9140)
sdague Aug 26, 2017
d986b8f
Bump aioautomatic to prevent leaking exceptions (#9148)
emlove Aug 26, 2017
308b822
Wrap state when iterating a domain in templates (#9157)
balloob Aug 27, 2017
3509ecf
Prevent iCloud exceptions in logfile (#9179)
mjj4791 Aug 28, 2017
0ccff6c
bump ecobee version to fix issue 9190 (#9191)
nkgilley Aug 28, 2017
bd71a33
Merge pull request #9196 from home-assistant/release-0-52-1
balloob Aug 28, 2017
e76e9e0
Fix dht22 when no data was read initially #8976 (#9198)
maweki Aug 28, 2017
6505019
Update pushbullet.py (#9200)
bobnwk Aug 29, 2017
0de6a37
fix worldtidesinfo #9184 (#9201)
Aug 29, 2017
75559cb
Add "status" to Sonarr sensor (#9204)
tboyce021 Aug 29, 2017
5d800c1
Prevent error when no forecast data was available (#9176)
mjj4791 Aug 29, 2017
3807150
Fix and optimize digitalloggers platform (#9203)
dale3h Aug 29, 2017
0687a45
Add counter component (#9146)
fabaff Aug 29, 2017
3e0eb87
Support for season sensor (#8958)
Aug 29, 2017
aa8dd8f
Issue #6893 in rfxtrx (#9130)
Danielhiversen Aug 29, 2017
ee28b43
Refactor rfxtrx (#9117)
Danielhiversen Aug 29, 2017
b8d737c
Upgrade pymysensors to 0.11.1 (#9212)
MartinHjelmare Aug 29, 2017
81a00bf
Lint Sonarr tests
balloob Aug 29, 2017
33c906c
Abode push events and lock, cover, and switch components (#9095)
MisterWil Aug 29, 2017
0b58d54
Add cloud auth support (#9208)
balloob Aug 29, 2017
7de73e9
Bayesian Binary Sensor (#8810)
jlmcgehee21 Aug 29, 2017
ebc7ade
directv: extended discovery via REST api, bug fix (#8800)
sielicki Aug 29, 2017
8673e53
Upgrade pyasn1 to 0.3.3 and pyasn1-modules to 0.1.1 (#9216)
fabaff Aug 30, 2017
4aafcfa
Upgrade sendgrid to 5.0.1 (#9215)
fabaff Aug 30, 2017
f76436f
Fix fitbit error when trying to access token after upgrade. (#9183)
tchellomello Aug 30, 2017
56f9ccb
Allow sonos to select album as a source (#9221)
commento Aug 30, 2017
3a0e38a
Add max_age to statistics sensor (#8790)
tinloaf Aug 30, 2017
f2551c0
Egardia package to .19 and change in port number for egardiaserver (#…
jeroenterheerdt Aug 30, 2017
214c92d
pushbullet, send a file from url (#9189)
Danielhiversen Aug 30, 2017
76c7eef
Add Tank Utility sensor (#9132)
krismolendyke Aug 30, 2017
10e8aea
Upgrade shodan to 1.7.5 (#9228)
fabaff Aug 30, 2017
5f445b4
Tesla platform (#9211)
zabuldon Aug 31, 2017
de4a4fe
[light.tradfri] Full range of white spectrum lightbulbs support (#9224)
matemaciek Aug 31, 2017
bb37294
Allow panels with external URL (#9214)
andrey-git Aug 31, 2017
e22ec28
Use ZCL mandatory attribute to determine ZHA light capabilities (#9232)
jkl1337 Aug 31, 2017
d816ff2
A bugfix for pushbullet (#9237)
Danielhiversen Aug 31, 2017
99c1c94
mopar sensor (#9136)
happyleavesaoc Aug 31, 2017
60342b4
Upgrade discord.py to 0.16.11 (#9239)
fabaff Aug 31, 2017
7d281fd
Skip automatic events older than latest data (#9230)
emlove Aug 31, 2017
acb6b7c
title and message was swapped in pushbullet (#9241)
Danielhiversen Aug 31, 2017
274e444
Fix possible KeyError (#9242)
MartinHjelmare Aug 31, 2017
836b528
WIP: Homematic improvments with new hass interfaces (#9058)
pvizeli Aug 31, 2017
0af4f89
Add available to sonos (#9243)
pvizeli Aug 31, 2017
a55895b
Make sure Ring binary_sensor state will update only if device_id mat…
tchellomello Sep 1, 2017
8d5f672
Added configurable timeout for receiver HTTP requests | Additional AV…
scarface-4711 Sep 1, 2017
4cd5173
upgrade xiaomi lib (#9250)
Danielhiversen Sep 1, 2017
713f7fa
Fix nello.io login (#9251)
pschmitt Sep 1, 2017
185d838
This is to fix #6386: Manual Alarm not re-arm after 2nd trigger (#9249)
snjoetw Sep 1, 2017
4defd96
Version bump of DLink switch to v0.6.0 (#9252)
LinuxChristian Sep 1, 2017
8d1f6d3
Upgrade sendgrid to 5.2.0 (#9254)
fabaff Sep 1, 2017
8797932
Upgrade psutil to 5.3.0 (#9253)
fabaff Sep 1, 2017
639eb81
Adding ZWave CentralScene activation handler. (#9178)
sirmalloc Sep 1, 2017
f51163f
Add Geofency device tracker (#9106)
gunnarhelgason Sep 1, 2017
0889e38
flux: fix for when stop_time is after midnight (#8932)
abmantis Sep 2, 2017
a78f5e0
Bump pywemo, handle more ports.
pavoni Sep 3, 2017
db36b5c
Merge pull request #9274 from home-assistant/bump_pywemo
pavoni Sep 3, 2017
7694c31
Change attribute names (#9277)
emlt Sep 3, 2017
68343ac
insteon_plm: fix typo in attributes (#9284)
drkp Sep 3, 2017
38e1b81
discovery: If unknown NetDisco service discovered, log about it. (#9280)
pfalcon Sep 3, 2017
5dfd60a
Upgrade youtube_dl to 2017.9.2 (#9279)
fabaff Sep 3, 2017
7c7a5a4
Upgrade python-telegram-bot to 8.0.0 (#9282)
fabaff Sep 3, 2017
e620768
rfxtrx lib upgrade (#9288)
Danielhiversen Sep 4, 2017
1b5e574
Fixing bug when using egardiaserver - package requirement updated to …
jeroenterheerdt Sep 4, 2017
54de3d8
Added intent_type to exception log (#9289)
andreasjacobsen93 Sep 4, 2017
67828cb
Handle spotify failing to refresh access_token (#9295)
Tommatheussen Sep 4, 2017
ed69989
Core track same state for a period / Allow on platforms (#9273)
pvizeli Sep 5, 2017
c3a9100
Improved Lutron Caseta shade support (#9302)
upsert Sep 5, 2017
984cae5
Upgrade mycroftapi to 2.0 (#9309)
btotharye Sep 5, 2017
5ba39c8
Fix for Honeywell Round thermostats (#9308)
dansarginson Sep 5, 2017
a28ac37
Update jinja to 2.9.6 (#9306)
pvizeli Sep 5, 2017
968ed6e
Ensure display-name does not exceed 12 characters for CecAdapter. (#9…
gollo Sep 5, 2017
0b1677d
Expose hue group 0 (#8663)
filcole Sep 5, 2017
9ede0f5
Added DWD WarnApp Sensor (#8657)
runningman84 Sep 5, 2017
552abf7
Add input_text component (#9112)
BioSehnsucht Sep 5, 2017
e4bb8b0
Introducing a media_player component for Yamaha Multicast devices (#9…
jalmeroth Sep 5, 2017
418ccc8
Handle the case where no registration number is available (instead di…
molobrakos Sep 5, 2017
788275d
Add post_pending_state attribute to manual alarm_control_panel (#9291)
snjoetw Sep 5, 2017
9ade800
Add new config variable to MQTT light (#9304)
belyalov Sep 5, 2017
e7a5f7b
Follow Twitter guidelines for media upload by conforming to the "STAT…
MikeChristianson Sep 6, 2017
5971a7c
Optionally disable ssl certificate validity check. (#9181)
ohmer1 Sep 6, 2017
fad914d
Version bump dlib to 1.0.0 (#9316)
arsaboo Sep 6, 2017
894200d
Fixed bug with devices not being discovered correctly. (#9311)
MisterWil Sep 6, 2017
9a7089b
Platform not ready behavior fixed. (#9325)
syssi Sep 7, 2017
77d0ad1
Stable and asynchronous KNX library. (#8725)
Julius2342 Sep 7, 2017
fc7ffba
Merge branch 'master' into release-0-53
balloob Sep 9, 2017
7036a78
Update frontend
balloob Sep 9, 2017
d2d8769
Fix for potential issue with tesla initialization (#9307)
zabuldon Sep 7, 2017
c539b5c
Adds the AirVisual air quality sensor platform (#9320)
bachya Sep 8, 2017
74bfcde
Cleanup input_text (#9326)
balloob Sep 9, 2017
3065575
Bump pyHik version to add IO support (#9341)
mezz64 Sep 9, 2017
2d72cff
Merge pull request #9327 from home-assistant/release-0-53
balloob Sep 9, 2017
3f2eba0
Version bump to 0.53
balloob Sep 9, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 21 additions & 1 deletion .coveragerc
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ omit =
homeassistant/helpers/signal.py

# omit pieces of code that rely on external devices being present
homeassistant/components/abode.py
homeassistant/components/*/abode.py

homeassistant/components/alarmdecoder.py
homeassistant/components/*/alarmdecoder.py

Expand Down Expand Up @@ -167,6 +170,9 @@ omit =
homeassistant/components/tellstick.py
homeassistant/components/*/tellstick.py

homeassistant/components/tesla.py
homeassistant/components/*/tesla.py

homeassistant/components/*/thinkingcleaner.py

homeassistant/components/tradfri.py
Expand All @@ -176,6 +182,9 @@ omit =
homeassistant/components/notify/twilio_sms.py
homeassistant/components/notify/twilio_call.py

homeassistant/components/usps.py
homeassistant/components/*/usps.py

homeassistant/components/velbus.py
homeassistant/components/*/velbus.py

Expand Down Expand Up @@ -322,10 +331,12 @@ omit =
homeassistant/components/light/tplink.py
homeassistant/components/light/tradfri.py
homeassistant/components/light/x10.py
homeassistant/components/light/xiaomi_philipslight.py
homeassistant/components/light/yeelight.py
homeassistant/components/light/yeelightsunflower.py
homeassistant/components/light/zengge.py
homeassistant/components/lirc.py
homeassistant/components/lock/nello.py
homeassistant/components/lock/nuki.py
homeassistant/components/lock/lockitron.py
homeassistant/components/lock/sesame.py
Expand Down Expand Up @@ -373,6 +384,8 @@ omit =
homeassistant/components/media_player/vlc.py
homeassistant/components/media_player/volumio.py
homeassistant/components/media_player/yamaha.py
homeassistant/components/media_player/yamaha_musiccast.py
homeassistant/components/mycroft.py
homeassistant/components/notify/aws_lambda.py
homeassistant/components/notify/aws_sns.py
homeassistant/components/notify/aws_sqs.py
Expand All @@ -383,14 +396,17 @@ omit =
homeassistant/components/notify/free_mobile.py
homeassistant/components/notify/gntp.py
homeassistant/components/notify/group.py
homeassistant/components/notify/hipchat.py
homeassistant/components/notify/instapush.py
homeassistant/components/notify/kodi.py
homeassistant/components/notify/lannouncer.py
homeassistant/components/notify/llamalab_automate.py
homeassistant/components/notify/matrix.py
homeassistant/components/notify/message_bird.py
homeassistant/components/notify/mycroft.py
homeassistant/components/notify/nfandroidtv.py
homeassistant/components/notify/nma.py
homeassistant/components/notify/prowl.py
homeassistant/components/notify/pushbullet.py
homeassistant/components/notify/pushetta.py
homeassistant/components/notify/pushover.py
Expand All @@ -411,6 +427,7 @@ omit =
homeassistant/components/remote/itach.py
homeassistant/components/scene/hunterdouglas_powerview.py
homeassistant/components/scene/lifx_cloud.py
homeassistant/components/sensor/airvisual.py
homeassistant/components/sensor/arest.py
homeassistant/components/sensor/arwn.py
homeassistant/components/sensor/bbox.py
Expand All @@ -436,6 +453,7 @@ omit =
homeassistant/components/sensor/dovado.py
homeassistant/components/sensor/dte_energy_bridge.py
homeassistant/components/sensor/dublin_bus_transport.py
homeassistant/components/sensor/dwd_weather_warnings.py
homeassistant/components/sensor/ebox.py
homeassistant/components/sensor/eddystone_temperature.py
homeassistant/components/sensor/eliqonline.py
Expand Down Expand Up @@ -471,6 +489,7 @@ omit =
homeassistant/components/sensor/metoffice.py
homeassistant/components/sensor/miflora.py
homeassistant/components/sensor/modem_callerid.py
homeassistant/components/sensor/mopar.py
homeassistant/components/sensor/mqtt_room.py
homeassistant/components/sensor/mvglive.py
homeassistant/components/sensor/netdata.py
Expand Down Expand Up @@ -508,6 +527,7 @@ omit =
homeassistant/components/sensor/swiss_public_transport.py
homeassistant/components/sensor/synologydsm.py
homeassistant/components/sensor/systemmonitor.py
homeassistant/components/sensor/tank_utility.py
homeassistant/components/sensor/ted5000.py
homeassistant/components/sensor/temper.py
homeassistant/components/sensor/time_date.py
Expand All @@ -517,9 +537,9 @@ omit =
homeassistant/components/sensor/uber.py
homeassistant/components/sensor/upnp.py
homeassistant/components/sensor/ups.py
homeassistant/components/sensor/usps.py
homeassistant/components/sensor/vasttrafik.py
homeassistant/components/sensor/waqi.py
homeassistant/components/sensor/worldtidesinfo.py
homeassistant/components/sensor/xbox_live.py
homeassistant/components/sensor/yweather.py
homeassistant/components/sensor/zamg.py
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,6 @@ docs/build

# Windows Explorer
desktop.ini
/home-assistant.pyproj
/home-assistant.sln
/.vs/home-assistant/v14
4 changes: 0 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,6 @@ of a component, check the `Home Assistant help section <https://home-assistant.i
:target: https://coveralls.io/r/home-assistant/home-assistant?branch=master
.. |Chat Status| image:: https://img.shields.io/discord/330944238910963714.svg
:target: https://discord.gg/c5DvZ4e
.. |Join the chat at https://gitter.im/home-assistant/home-assistant| image:: https://img.shields.io/badge/gitter-general-blue.svg
:target: https://gitter.im/home-assistant/home-assistant?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
.. |Join the dev chat at https://gitter.im/home-assistant/home-assistant/devs| image:: https://img.shields.io/badge/gitter-development-yellowgreen.svg
:target: https://gitter.im/home-assistant/home-assistant/devs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
.. |screenshot-states| image:: https://raw.github.com/home-assistant/home-assistant/master/docs/screenshots.png
:target: https://home-assistant.io/demo/
.. |screenshot-components| image:: https://raw.github.com/home-assistant/home-assistant/dev/docs/screenshot-components.png
Expand Down
6 changes: 6 additions & 0 deletions homeassistant/components/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,12 @@ def reload_core_config(hass):
hass.services.call(ha.DOMAIN, SERVICE_RELOAD_CORE_CONFIG)


@asyncio.coroutine
def async_reload_core_config(hass):
"""Reload the core config."""
yield from hass.services.async_call(ha.DOMAIN, SERVICE_RELOAD_CORE_CONFIG)


@asyncio.coroutine
def async_setup(hass, config):
"""Set up general services related to Home Assistant."""
Expand Down
126 changes: 126 additions & 0 deletions homeassistant/components/abode.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
"""
This component provides basic support for Abode Home Security system.

For more details about this component, please refer to the documentation at
https://home-assistant.io/components/abode/
"""
import asyncio
import logging

import voluptuous as vol
from requests.exceptions import HTTPError, ConnectTimeout
from homeassistant.helpers import discovery
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.entity import Entity
from homeassistant.const import (ATTR_ATTRIBUTION,
CONF_USERNAME, CONF_PASSWORD,
CONF_NAME, EVENT_HOMEASSISTANT_STOP,
EVENT_HOMEASSISTANT_START)

REQUIREMENTS = ['abodepy==0.9.0']

_LOGGER = logging.getLogger(__name__)

CONF_ATTRIBUTION = "Data provided by goabode.com"

DOMAIN = 'abode'
DEFAULT_NAME = 'Abode'
DATA_ABODE = 'abode'

NOTIFICATION_ID = 'abode_notification'
NOTIFICATION_TITLE = 'Abode Security Setup'

CONFIG_SCHEMA = vol.Schema({
DOMAIN: vol.Schema({
vol.Required(CONF_USERNAME): cv.string,
vol.Required(CONF_PASSWORD): cv.string,
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
}),
}, extra=vol.ALLOW_EXTRA)

ABODE_PLATFORMS = [
'alarm_control_panel', 'binary_sensor', 'lock', 'switch', 'cover'
]


def setup(hass, config):
"""Set up Abode component."""
import abodepy

conf = config[DOMAIN]
username = conf.get(CONF_USERNAME)
password = conf.get(CONF_PASSWORD)

try:
hass.data[DATA_ABODE] = abode = abodepy.Abode(
username, password, auto_login=True, get_devices=True)

except (ConnectTimeout, HTTPError) as ex:
_LOGGER.error("Unable to connect to Abode: %s", str(ex))
hass.components.persistent_notification.create(
'Error: {}<br />'
'You will need to restart hass after fixing.'
''.format(ex),
title=NOTIFICATION_TITLE,
notification_id=NOTIFICATION_ID)
return False

for platform in ABODE_PLATFORMS:
discovery.load_platform(hass, platform, DOMAIN, {}, config)

def logout(event):
"""Logout of Abode."""
abode.stop_listener()
abode.logout()
_LOGGER.info("Logged out of Abode")

hass.bus.listen_once(EVENT_HOMEASSISTANT_STOP, logout)

def startup(event):
"""Listen for push events."""
abode.start_listener()

hass.bus.listen_once(EVENT_HOMEASSISTANT_START, startup)

return True


class AbodeDevice(Entity):
"""Representation of an Abode device."""

def __init__(self, controller, device):
"""Initialize a sensor for Abode device."""
self._controller = controller
self._device = device

@asyncio.coroutine
def async_added_to_hass(self):
"""Subscribe Abode events."""
self.hass.async_add_job(
self._controller.register, self._device,
self._update_callback
)

@property
def should_poll(self):
"""Return the polling state."""
return False

@property
def name(self):
"""Return the name of the sensor."""
return self._device.name

@property
def device_state_attributes(self):
"""Return the state attributes."""
return {
ATTR_ATTRIBUTION: CONF_ATTRIBUTION,
'device_id': self._device.device_id,
'battery_low': self._device.battery_low,
'no_response': self._device.no_response
}

def _update_callback(self, device):
"""Update the device state."""
self.schedule_update_ha_state()
27 changes: 26 additions & 1 deletion homeassistant/components/alarm_control_panel/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@

from homeassistant.const import (
ATTR_CODE, ATTR_CODE_FORMAT, ATTR_ENTITY_ID, SERVICE_ALARM_TRIGGER,
SERVICE_ALARM_DISARM, SERVICE_ALARM_ARM_HOME, SERVICE_ALARM_ARM_AWAY)
SERVICE_ALARM_DISARM, SERVICE_ALARM_ARM_HOME, SERVICE_ALARM_ARM_AWAY,
SERVICE_ALARM_ARM_NIGHT)
from homeassistant.config import load_yaml_config_file
from homeassistant.loader import bind_hass
from homeassistant.helpers.config_validation import PLATFORM_SCHEMA # noqa
Expand All @@ -31,6 +32,7 @@
SERVICE_ALARM_DISARM: 'alarm_disarm',
SERVICE_ALARM_ARM_HOME: 'alarm_arm_home',
SERVICE_ALARM_ARM_AWAY: 'alarm_arm_away',
SERVICE_ALARM_ARM_NIGHT: 'alarm_arm_night',
SERVICE_ALARM_TRIGGER: 'alarm_trigger'
}

Expand Down Expand Up @@ -81,6 +83,18 @@ def alarm_arm_away(hass, code=None, entity_id=None):
hass.services.call(DOMAIN, SERVICE_ALARM_ARM_AWAY, data)


@bind_hass
def alarm_arm_night(hass, code=None, entity_id=None):
"""Send the alarm the command for arm night."""
data = {}
if code:
data[ATTR_CODE] = code
if entity_id:
data[ATTR_ENTITY_ID] = entity_id

hass.services.call(DOMAIN, SERVICE_ALARM_ARM_NIGHT, data)


@bind_hass
def alarm_trigger(hass, code=None, entity_id=None):
"""Send the alarm the command for trigger."""
Expand Down Expand Up @@ -187,6 +201,17 @@ def async_alarm_arm_away(self, code=None):
"""
return self.hass.async_add_job(self.alarm_arm_away, code)

def alarm_arm_night(self, code=None):
"""Send arm night command."""
raise NotImplementedError()

def async_alarm_arm_night(self, code=None):
"""Send arm night command.

This method must be run in the event loop and returns a coroutine.
"""
return self.hass.async_add_job(self.alarm_arm_night, code)

def alarm_trigger(self, code=None):
"""Send alarm trigger command."""
raise NotImplementedError()
Expand Down
Loading