hass-core/homeassistant/components/binary_sensor
Sean Dague 6b26154077 Add basic mychevy component (#11409)
* mychevy: added basic mychevy component

This implements a component using the mychevy library (which utilizes
selenium to webscrape the mychevy website for onstar for your
car). The architecture works by having a background thread doing
periodic polling of the website, and updating the sensors when new
data is found.

This requires rather more setup than most platforms, as you need
working selenium. Instructions will be provided on the component
list. All the sensors are spawned and coordinated from a single "hub"
as they are really just attributes of the same web scraping session.

* mychevy: only poll every 30 minutes

* mychevy: update sensors

* mychevy: better error handling

* mychevy: tweaking for refactor

* mychevy: bump version to handle odometer > 1000

* mychevy: great sensor reorg

* mychevy: add binary sensors

* mychevy: bump mychevy requirement

* mychevy: use dispatcher

Instead of directly modifying the sensors, this lets us use a
dispatcher to have sensors pull information from the car object when
there is a relevant update for them.

* mychevy: remove from coverage

* mychevy: dedicated constants for dispatch signals

This makes the dispatch signals dedicated topics, and fixes updating
the state on the sensors so that they are correctly updated.

* mychevy: updated with comments from martinhjelmare

* mychevy: set battery icon based with helper function

* Address additional review feedback

* Address additional review comments
2018-01-15 21:50:56 +01:00
..
__init__.py Additional device classes for binary sensors (#11280) 2017-12-28 18:55:22 +01:00
abode.py Abode services, events, lights, cameras, automations, quick actions. (#9310) 2017-09-18 17:39:41 +02:00
ads.py Add ADS component (#10142) 2017-12-05 09:44:22 +01:00
alarmdecoder.py AlarmDecoder remove icon function as BinarySensorDevice handles it correctly now (#11467) 2018-01-05 14:29:57 -08:00
android_ip_webcam.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
apcupsd.py Do not call update() in constructor (#8878) 2017-08-08 20:21:33 +02:00
arest.py Remove deprecated sensor_class config options (#8702) 2017-07-29 19:46:27 -04:00
aurora.py Use constants for HTTP headers (#10313) 2017-11-04 12:04:05 -07:00
axis.py WIP: Refactor Axis component removing external dependencies (#9791) 2017-10-25 00:04:30 -07:00
bayesian.py Use constants and update docstrings 2017-10-24 09:12:01 +02:00
bbb_gpio.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
blink.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
bloomsky.py Do not call update() in constructor (#8878) 2017-08-08 20:21:33 +02:00
command_line.py Added possibilities to use template in the command_line sensor (#8505) 2017-08-10 18:52:52 +02:00
concord232.py Concord232 alarm arm away fix (#11597) 2018-01-12 08:45:01 +01:00
deconz.py Add deCONZ component (#10321) 2018-01-01 17:08:13 +01:00
demo.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
digital_ocean.py Remove deprecated sensor_class config options (#8702) 2017-07-29 19:46:27 -04:00
ecobee.py Do not call update() in constructor (#8878) 2017-08-08 20:21:33 +02:00
eight_sleep.py Update docstrings (#7405) 2017-05-02 22:47:20 +02:00
enocean.py Remove deprecated sensor_class config options (#8702) 2017-07-29 19:46:27 -04:00
envisalink.py Cleanup and simplitfy the async state update (#9390) 2017-09-12 10:01:03 +02:00
ffmpeg_motion.py Cleanup and simplitfy the async state update (#9390) 2017-09-12 10:01:03 +02:00
ffmpeg_noise.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
flic.py Fix pylint 1.7.2 no-else-return issues (#8361) 2017-07-05 23:30:01 -07:00
gc100.py Add gc100 platforms and component (#10159) 2017-10-30 08:40:14 +01:00
hikvision.py Bump pyHik version to add IO support (#9341) 2017-09-09 00:06:06 -07:00
hive.py New Hive Component / Platforms (#9804) 2017-11-23 13:10:23 +01:00
homematic.py Upgrade HomeMatic, add devices (#10845) 2017-11-28 23:16:47 -08:00
insteon_plm.py Fix a bunch of typos (#9545) 2017-09-23 17:15:46 +02:00
iss.py Move 'show_on_map' to const (#9727) 2017-10-07 15:11:41 +02:00
isy994.py Fix leak sensors always showing Unknown until Wet (#11313) 2017-12-27 09:23:21 +01:00
knx.py More tolerant KNX component if gateway cant be connected (#11511) 2018-01-07 13:39:14 -08:00
linode.py Linode (#9936) 2017-10-27 16:19:47 +02:00
maxcube.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
modbus.py Modbus fixes to work with pymodbus 1.3.1 (#8365) 2017-07-06 22:30:23 -07:00
mqtt.py More support for availability reporting on MQTT components (#11336) 2018-01-01 18:32:29 -08:00
mychevy.py Add basic mychevy component (#11409) 2018-01-15 21:50:56 +01:00
mysensors.py Refactor mysensors callback and add validation (#9069) 2017-08-25 08:58:05 -07:00
mystrom.py Cleanup and simplitfy the async state update (#9390) 2017-09-12 10:01:03 +02:00
nest.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
netatmo.py Fix missing timeout for Netatmo binary sensor (#9850) 2017-10-18 14:56:24 +02:00
nx584.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
octoprint.py Do not call update() in constructor (#8878) 2017-08-08 20:21:33 +02:00
pilight.py Allow Pilight Binary Sensor to control reset_delay_sec through configuration (#8358) 2017-07-06 21:09:31 +02:00
ping.py Remove deprecated sensor_class config options (#8702) 2017-07-29 19:46:27 -04:00
raincloud.py Bump raincloudy version 0.0.3 (#9767) 2017-10-08 21:08:40 -07:00
random.py Add Random binary sensor (#10164) 2017-10-29 11:15:57 +01:00
raspihats.py Add raspihats binary sensor (#7508) 2017-05-12 09:20:48 -07:00
rest.py Mark REST binary_sensor unavailable if request fails (#11506) 2018-01-11 10:48:15 +01:00
rfxtrx.py Bugfix and cleanup for Rfxtrx (#11600) 2018-01-12 11:52:53 -08:00
ring.py Fixed update() method and removed ding feature from stickupcams/floodlight (#10428) 2017-11-09 01:01:20 +01:00
rpi_gpio.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
rpi_pfio.py Support for the PiFace Digital I/O module (#7494) 2017-05-09 22:36:33 -07:00
satel_integra.py Added satel_integra alarm panel and binary sensor platform (#9336) 2017-09-18 17:42:31 +02:00
skybell.py Skybell (#9681) 2017-10-08 20:14:39 +02:00
sleepiq.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
spc.py Add attribute to show who last un/set alarm (SPC) (#9906) 2017-11-11 12:36:03 -08:00
tapsaff.py Added a Taps Aff binary sensor (#7880) 2017-06-04 13:35:19 +02:00
tcp.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
tellduslive.py Telldus Live: Device without methods is a binary sensor (#10106) 2017-10-26 15:54:49 +02:00
template.py Deprecate explicit entity_id in template platforms (#11123) 2018-01-10 00:06:26 -08:00
tesla.py Tesla bug fixes. (#9774) 2017-10-09 14:38:00 +03:00
threshold.py Extend Threshold binary sensor to support ranges (#11110) 2017-12-19 01:52:19 +01:00
trend.py Upgrade numpy to 1.14.0 (#11542) 2018-01-09 15:30:00 +01:00
velbus.py Velbus (#8076) 2017-07-26 14:03:29 +02:00
vera.py Added Vera scenes (#10424) 2017-12-07 07:47:19 +01:00
verisure.py verisure component names (#8251) 2017-06-30 08:53:14 +02:00
volvooncall.py Remove deprecated sensor_class config options (#8702) 2017-07-29 19:46:27 -04:00
vultr.py Add platform and sensors for Vultr VPS (#9928) 2017-11-05 14:10:14 +01:00
wemo.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
wink.py Added super attributes to Wink binary sensors (#9824) 2017-10-16 14:58:23 +02:00
workday.py Improved test runtime (#11553) 2018-01-09 16:00:49 -08:00
xiaomi_aqara.py Add last action to xiaomi aqara button (#10131) 2017-10-26 18:46:29 +02:00
zha.py zha: Handle both input and output clusters (#8410) 2017-07-10 21:16:44 -07:00
zigbee.py Update docstrings (#7361) 2017-04-29 22:04:49 -07:00
zwave.py Fix off_delay for zwave trigger sensors (#8864) 2017-08-06 18:31:32 +03:00