From 38b4d2ca6f3bba3ec7cf2b00d91951c715e3a667 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 4 Apr 2019 08:59:07 +0200 Subject: [PATCH] home-assistant: 0.90.2 -> 0.91.1 https://www.home-assistant.io/blog/2019/04/03/release-91/ --- .../home-assistant/component-packages.nix | 1719 +++++++++++------ pkgs/servers/home-assistant/default.nix | 10 +- pkgs/servers/home-assistant/frontend.nix | 4 +- 3 files changed, 1122 insertions(+), 611 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 778b132bb70..26dd0fa877b 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "0.90.2"; + version = "0.91.1"; components = { "abode" = ps: with ps; [ ]; "abode.alarm_control_panel" = ps: with ps; [ ]; @@ -13,33 +13,29 @@ "abode.lock" = ps: with ps; [ ]; "abode.sensor" = ps: with ps; [ ]; "abode.switch" = ps: with ps; [ ]; + "acer_projector" = ps: with ps; [ ]; + "acer_projector.switch" = ps: with ps; [ pyserial ]; + "actiontec" = ps: with ps; [ ]; + "actiontec.device_tracker" = ps: with ps; [ ]; "ads" = ps: with ps; [ ]; "ads.binary_sensor" = ps: with ps; [ ]; "ads.light" = ps: with ps; [ ]; "ads.sensor" = ps: with ps; [ ]; "ads.switch" = ps: with ps; [ ]; + "aftership" = ps: with ps; [ ]; + "aftership.sensor" = ps: with ps; [ ]; "air_quality" = ps: with ps; [ ]; - "air_quality.demo" = ps: with ps; [ ]; - "air_quality.nilu" = ps: with ps; [ ]; - "air_quality.norway_air" = ps: with ps; [ ]; - "air_quality.opensensemap" = ps: with ps; [ ]; + "airvisual" = ps: with ps; [ ]; + "airvisual.sensor" = ps: with ps; [ pyairvisual ]; + "aladdin_connect" = ps: with ps; [ ]; + "aladdin_connect.cover" = ps: with ps; [ ]; "alarm_control_panel" = ps: with ps; [ ]; - "alarm_control_panel.alarmdotcom" = ps: with ps; [ ]; - "alarm_control_panel.canary" = ps: with ps; [ ]; - "alarm_control_panel.concord232" = ps: with ps; [ ]; - "alarm_control_panel.demo" = ps: with ps; [ ]; - "alarm_control_panel.ialarm" = ps: with ps; [ ]; - "alarm_control_panel.manual" = ps: with ps; [ ]; - "alarm_control_panel.manual_mqtt" = ps: with ps; [ paho-mqtt ]; - "alarm_control_panel.ness_alarm" = ps: with ps; [ ]; - "alarm_control_panel.nx584" = ps: with ps; [ ]; - "alarm_control_panel.spc" = ps: with ps; [ ]; - "alarm_control_panel.totalconnect" = ps: with ps; [ ]; - "alarm_control_panel.yale_smart_alarm" = ps: with ps; [ ]; "alarmdecoder" = ps: with ps; [ ]; "alarmdecoder.alarm_control_panel" = ps: with ps; [ ]; "alarmdecoder.binary_sensor" = ps: with ps; [ ]; "alarmdecoder.sensor" = ps: with ps; [ ]; + "alarmdotcom" = ps: with ps; [ ]; + "alarmdotcom.alarm_control_panel" = ps: with ps; [ ]; "alert" = ps: with ps; [ ]; "alexa" = ps: with ps; [ aiohttp-cors ]; "alexa.auth" = ps: with ps; [ ]; @@ -47,6 +43,10 @@ "alexa.flash_briefings" = ps: with ps; [ ]; "alexa.intent" = ps: with ps; [ ]; "alexa.smart_home" = ps: with ps; [ ]; + "alpha_vantage" = ps: with ps; [ ]; + "alpha_vantage.sensor" = ps: with ps; [ ]; + "amazon_polly" = ps: with ps; [ ]; + "amazon_polly.tts" = ps: with ps; [ boto3 ]; "ambient_station" = ps: with ps; [ ]; "ambient_station.binary_sensor" = ps: with ps; [ ]; "ambient_station.config_flow" = ps: with ps; [ ]; @@ -62,34 +62,59 @@ "android_ip_webcam.switch" = ps: with ps; [ ]; "androidtv" = ps: with ps; [ ]; "androidtv.media_player" = ps: with ps; [ ]; + "anel_pwrctrl" = ps: with ps; [ ]; + "anel_pwrctrl.switch" = ps: with ps; [ ]; + "anthemav" = ps: with ps; [ ]; + "anthemav.media_player" = ps: with ps; [ ]; "apcupsd" = ps: with ps; [ ]; "apcupsd.binary_sensor" = ps: with ps; [ ]; "apcupsd.sensor" = ps: with ps; [ ]; "api" = ps: with ps; [ aiohttp-cors ]; + "api_streams" = ps: with ps; [ ]; + "apns" = ps: with ps; [ ]; + "apns.notify" = ps: with ps; [ ]; "apple_tv" = ps: with ps; [ pyatv ]; "apple_tv.media_player" = ps: with ps; [ pyatv ]; "apple_tv.remote" = ps: with ps; [ pyatv ]; "aqualogic" = ps: with ps; [ ]; "aqualogic.sensor" = ps: with ps; [ ]; "aqualogic.switch" = ps: with ps; [ ]; + "aquostv" = ps: with ps; [ ]; + "aquostv.media_player" = ps: with ps; [ ]; "arduino" = ps: with ps; [ ]; "arduino.sensor" = ps: with ps; [ ]; "arduino.switch" = ps: with ps; [ ]; + "arest" = ps: with ps; [ ]; + "arest.binary_sensor" = ps: with ps; [ ]; + "arest.sensor" = ps: with ps; [ ]; + "arest.switch" = ps: with ps; [ ]; "arlo" = ps: with ps; [ ]; "arlo.alarm_control_panel" = ps: with ps; [ ]; "arlo.camera" = ps: with ps; [ ha-ffmpeg ]; "arlo.sensor" = ps: with ps; [ ]; + "aruba" = ps: with ps; [ ]; + "aruba.device_tracker" = ps: with ps; [ pexpect ]; + "arwn" = ps: with ps; [ ]; + "arwn.sensor" = ps: with ps; [ paho-mqtt ]; + "asterisk_cdr" = ps: with ps; [ ]; + "asterisk_cdr.mailbox" = ps: with ps; [ ]; "asterisk_mbox" = ps: with ps; [ ]; "asterisk_mbox.mailbox" = ps: with ps; [ ]; "asuswrt" = ps: with ps; [ ]; + "asuswrt.device_tracker" = ps: with ps; [ ]; + "asuswrt.sensor" = ps: with ps; [ ]; "august" = ps: with ps; [ ]; "august.binary_sensor" = ps: with ps; [ ]; "august.camera" = ps: with ps; [ ]; "august.lock" = ps: with ps; [ ]; + "aurora" = ps: with ps; [ ]; + "aurora.binary_sensor" = ps: with ps; [ ]; "auth" = ps: with ps; [ aiohttp-cors ]; "auth.indieauth" = ps: with ps; [ ]; "auth.login_flow" = ps: with ps; [ ]; "auth.mfa_setup_flow" = ps: with ps; [ ]; + "automatic" = ps: with ps; [ ]; + "automatic.device_tracker" = ps: with ps; [ aiohttp-cors ]; "automation" = ps: with ps; [ ]; "automation.event" = ps: with ps; [ ]; "automation.geo_location" = ps: with ps; [ ]; @@ -104,108 +129,129 @@ "automation.time_pattern" = ps: with ps; [ ]; "automation.webhook" = ps: with ps; [ aiohttp-cors ]; "automation.zone" = ps: with ps; [ ]; + "avion" = ps: with ps; [ ]; + "avion.light" = ps: with ps; [ ]; + "awair" = ps: with ps; [ ]; + "awair.sensor" = ps: with ps; [ ]; + "aws" = ps: with ps; [ ]; + "aws.config_flow" = ps: with ps; [ ]; + "aws.const" = ps: with ps; [ ]; + "aws.notify" = ps: with ps; [ ]; + "aws_lambda" = ps: with ps; [ ]; + "aws_lambda.notify" = ps: with ps; [ boto3 ]; + "aws_sns" = ps: with ps; [ ]; + "aws_sns.notify" = ps: with ps; [ boto3 ]; + "aws_sqs" = ps: with ps; [ ]; + "aws_sqs.notify" = ps: with ps; [ boto3 ]; "axis" = ps: with ps; [ ]; "axis.binary_sensor" = ps: with ps; [ ]; "axis.camera" = ps: with ps; [ ]; + "axis.config_flow" = ps: with ps; [ ]; + "axis.const" = ps: with ps; [ ]; + "axis.device" = ps: with ps; [ ]; + "axis.errors" = ps: with ps; [ ]; + "baidu" = ps: with ps; [ ]; + "baidu.tts" = ps: with ps; [ ]; + "bayesian" = ps: with ps; [ ]; + "bayesian.binary_sensor" = ps: with ps; [ ]; "bbb_gpio" = ps: with ps; [ ]; "bbb_gpio.binary_sensor" = ps: with ps; [ ]; "bbb_gpio.switch" = ps: with ps; [ ]; + "bbox" = ps: with ps; [ ]; + "bbox.device_tracker" = ps: with ps; [ ]; + "bbox.sensor" = ps: with ps; [ ]; + "bh1750" = ps: with ps; [ ]; + "bh1750.sensor" = ps: with ps; [ ]; "binary_sensor" = ps: with ps; [ ]; - "binary_sensor.arest" = ps: with ps; [ ]; - "binary_sensor.aurora" = ps: with ps; [ ]; - "binary_sensor.bayesian" = ps: with ps; [ ]; - "binary_sensor.command_line" = ps: with ps; [ ]; - "binary_sensor.concord232" = ps: with ps; [ ]; - "binary_sensor.demo" = ps: with ps; [ ]; - "binary_sensor.ffmpeg_motion" = ps: with ps; [ ha-ffmpeg ]; - "binary_sensor.ffmpeg_noise" = ps: with ps; [ ha-ffmpeg ]; - "binary_sensor.flic" = ps: with ps; [ ]; - "binary_sensor.hikvision" = ps: with ps; [ ]; - "binary_sensor.iss" = ps: with ps; [ ]; - "binary_sensor.mystrom" = ps: with ps; [ aiohttp-cors ]; - "binary_sensor.ness_alarm" = ps: with ps; [ ]; - "binary_sensor.nx584" = ps: with ps; [ ]; - "binary_sensor.ping" = ps: with ps; [ ]; - "binary_sensor.random" = ps: with ps; [ ]; - "binary_sensor.rest" = ps: with ps; [ ]; - "binary_sensor.rflink" = ps: with ps; [ ]; - "binary_sensor.ring" = ps: with ps; [ ]; - "binary_sensor.sleepiq" = ps: with ps; [ ]; - "binary_sensor.spc" = ps: with ps; [ ]; - "binary_sensor.tapsaff" = ps: with ps; [ ]; - "binary_sensor.tcp" = ps: with ps; [ ]; - "binary_sensor.template" = ps: with ps; [ ]; - "binary_sensor.threshold" = ps: with ps; [ ]; - "binary_sensor.tod" = ps: with ps; [ ]; - "binary_sensor.trend" = ps: with ps; [ numpy ]; - "binary_sensor.uptimerobot" = ps: with ps; [ ]; - "binary_sensor.vultr" = ps: with ps; [ vultr ]; - "binary_sensor.workday" = ps: with ps; [ ]; + "bitcoin" = ps: with ps; [ ]; + "bitcoin.sensor" = ps: with ps; [ ]; + "blackbird" = ps: with ps; [ ]; + "blackbird.media_player" = ps: with ps; [ ]; "blink" = ps: with ps; [ ]; "blink.alarm_control_panel" = ps: with ps; [ ]; "blink.binary_sensor" = ps: with ps; [ ]; "blink.camera" = ps: with ps; [ ]; "blink.sensor" = ps: with ps; [ ]; + "blinksticklight" = ps: with ps; [ ]; + "blinksticklight.light" = ps: with ps; [ BlinkStick ]; + "blinkt" = ps: with ps; [ ]; + "blinkt.light" = ps: with ps; [ ]; + "blockchain" = ps: with ps; [ ]; + "blockchain.sensor" = ps: with ps; [ ]; "bloomsky" = ps: with ps; [ ]; "bloomsky.binary_sensor" = ps: with ps; [ ]; "bloomsky.camera" = ps: with ps; [ ]; "bloomsky.sensor" = ps: with ps; [ ]; + "bluesound" = ps: with ps; [ ]; + "bluesound.media_player" = ps: with ps; [ xmltodict ]; + "bluetooth_le_tracker" = ps: with ps; [ ]; + "bluetooth_le_tracker.device_tracker" = ps: with ps; [ ]; + "bluetooth_tracker" = ps: with ps; [ ]; + "bluetooth_tracker.device_tracker" = ps: with ps; [ bt_proximity ]; + "bme280" = ps: with ps; [ ]; + "bme280.sensor" = ps: with ps; [ ]; + "bme680" = ps: with ps; [ ]; + "bme680.sensor" = ps: with ps; [ ]; "bmw_connected_drive" = ps: with ps; [ ]; "bmw_connected_drive.binary_sensor" = ps: with ps; [ ]; "bmw_connected_drive.device_tracker" = ps: with ps; [ ]; "bmw_connected_drive.lock" = ps: with ps; [ ]; "bmw_connected_drive.sensor" = ps: with ps; [ ]; + "bom" = ps: with ps; [ ]; + "bom.sensor" = ps: with ps; [ ]; + "bom.weather" = ps: with ps; [ ]; + "braviatv" = ps: with ps; [ ]; + "braviatv.media_player" = ps: with ps; [ ]; + "broadlink" = ps: with ps; [ ]; + "broadlink.sensor" = ps: with ps; [ broadlink ]; + "broadlink.switch" = ps: with ps; [ broadlink ]; + "brottsplatskartan" = ps: with ps; [ ]; + "brottsplatskartan.sensor" = ps: with ps; [ ]; "browser" = ps: with ps; [ ]; + "brunt" = ps: with ps; [ ]; + "brunt.cover" = ps: with ps; [ ]; + "bt_home_hub_5" = ps: with ps; [ ]; + "bt_home_hub_5.device_tracker" = ps: with ps; [ ]; + "bt_smarthub" = ps: with ps; [ ]; + "bt_smarthub.device_tracker" = ps: with ps; [ ]; + "buienradar" = ps: with ps; [ ]; + "buienradar.sensor" = ps: with ps; [ ]; + "buienradar.weather" = ps: with ps; [ ]; + "caldav" = ps: with ps; [ ]; + "caldav.calendar" = ps: with ps; [ ]; "calendar" = ps: with ps; [ aiohttp-cors ]; - "calendar.caldav" = ps: with ps; [ ]; - "calendar.demo" = ps: with ps; [ ]; - "calendar.todoist" = ps: with ps; [ todoist ]; "camera" = ps: with ps; [ aiohttp-cors ]; - "camera.canary" = ps: with ps; [ ha-ffmpeg ]; - "camera.demo" = ps: with ps; [ ]; - "camera.familyhub" = ps: with ps; [ ]; - "camera.ffmpeg" = ps: with ps; [ ha-ffmpeg ]; - "camera.foscam" = ps: with ps; [ ]; - "camera.generic" = ps: with ps; [ ]; - "camera.local_file" = ps: with ps; [ ]; - "camera.mjpeg" = ps: with ps; [ ]; - "camera.onvif" = ps: with ps; [ ha-ffmpeg ]; - "camera.proxy" = ps: with ps; [ pillow ]; - "camera.push" = ps: with ps; [ aiohttp-cors ]; - "camera.ring" = ps: with ps; [ ha-ffmpeg ]; - "camera.rpi_camera" = ps: with ps; [ ]; - "camera.synology" = ps: with ps; [ ]; - "camera.uvc" = ps: with ps; [ ]; - "camera.xeoma" = ps: with ps; [ ]; - "camera.xiaomi" = ps: with ps; [ ha-ffmpeg ]; - "camera.yi" = ps: with ps; [ ha-ffmpeg ]; + "camera.const" = ps: with ps; [ ]; + "camera.prefs" = ps: with ps; [ ]; "canary" = ps: with ps; [ ]; + "canary.alarm_control_panel" = ps: with ps; [ ]; + "canary.camera" = ps: with ps; [ ha-ffmpeg ]; + "canary.sensor" = ps: with ps; [ ]; "cast" = ps: with ps; [ PyChromecast ]; "cast.media_player" = ps: with ps; [ PyChromecast ]; + "cert_expiry" = ps: with ps; [ ]; + "cert_expiry.sensor" = ps: with ps; [ ]; + "channels" = ps: with ps; [ ]; + "channels.media_player" = ps: with ps; [ ]; + "cisco_ios" = ps: with ps; [ ]; + "cisco_ios.device_tracker" = ps: with ps; [ pexpect ]; "cisco_mobility_express" = ps: with ps; [ ]; "cisco_mobility_express.device_tracker" = ps: with ps; [ ]; + "ciscospark" = ps: with ps; [ ]; + "ciscospark.notify" = ps: with ps; [ ]; + "citybikes" = ps: with ps; [ ]; + "citybikes.sensor" = ps: with ps; [ ]; + "clementine" = ps: with ps; [ ]; + "clementine.media_player" = ps: with ps; [ ]; + "clickatell" = ps: with ps; [ ]; + "clickatell.notify" = ps: with ps; [ ]; + "clicksend" = ps: with ps; [ ]; + "clicksend.notify" = ps: with ps; [ ]; + "clicksend_tts" = ps: with ps; [ ]; + "clicksend_tts.notify" = ps: with ps; [ ]; "climate" = ps: with ps; [ ]; "climate.const" = ps: with ps; [ ]; - "climate.coolmaster" = ps: with ps; [ ]; - "climate.demo" = ps: with ps; [ ]; - "climate.dyson" = ps: with ps; [ ]; - "climate.ephember" = ps: with ps; [ ]; - "climate.eq3btsmart" = ps: with ps; [ construct ]; - "climate.flexit" = ps: with ps; [ ]; - "climate.generic_thermostat" = ps: with ps; [ ]; - "climate.heatmiser" = ps: with ps; [ ]; - "climate.honeywell" = ps: with ps; [ ]; - "climate.melissa" = ps: with ps; [ ]; - "climate.mill" = ps: with ps; [ ]; - "climate.nuheat" = ps: with ps; [ ]; - "climate.oem" = ps: with ps; [ ]; - "climate.proliphix" = ps: with ps; [ ]; - "climate.radiotherm" = ps: with ps; [ ]; "climate.reproduce_state" = ps: with ps; [ ]; - "climate.sensibo" = ps: with ps; [ ]; - "climate.touchline" = ps: with ps; [ ]; - "climate.venstar" = ps: with ps; [ ]; - "climate.zhong_hong" = ps: with ps; [ ]; "cloud" = ps: with ps; [ aiohttp-cors ]; "cloud.binary_sensor" = ps: with ps; [ aiohttp-cors ]; "cloud.const" = ps: with ps; [ ]; @@ -213,10 +259,28 @@ "cloud.prefs" = ps: with ps; [ ]; "cloud.utils" = ps: with ps; [ ]; "cloudflare" = ps: with ps; [ ]; + "cmus" = ps: with ps; [ ]; + "cmus.media_player" = ps: with ps; [ ]; + "co2signal" = ps: with ps; [ ]; + "co2signal.sensor" = ps: with ps; [ ]; "coinbase" = ps: with ps; [ ]; + "coinbase.sensor" = ps: with ps; [ ]; + "coinmarketcap" = ps: with ps; [ ]; + "coinmarketcap.sensor" = ps: with ps; [ coinmarketcap ]; + "comed_hourly_pricing" = ps: with ps; [ ]; + "comed_hourly_pricing.sensor" = ps: with ps; [ ]; "comfoconnect" = ps: with ps; [ ]; "comfoconnect.fan" = ps: with ps; [ ]; "comfoconnect.sensor" = ps: with ps; [ ]; + "command_line" = ps: with ps; [ ]; + "command_line.binary_sensor" = ps: with ps; [ ]; + "command_line.cover" = ps: with ps; [ ]; + "command_line.notify" = ps: with ps; [ ]; + "command_line.sensor" = ps: with ps; [ ]; + "command_line.switch" = ps: with ps; [ ]; + "concord232" = ps: with ps; [ ]; + "concord232.alarm_control_panel" = ps: with ps; [ ]; + "concord232.binary_sensor" = ps: with ps; [ ]; "config" = ps: with ps; [ aiohttp-cors ]; "config.area_registry" = ps: with ps; [ ]; "config.auth" = ps: with ps; [ ]; @@ -232,31 +296,36 @@ "configurator" = ps: with ps; [ ]; "conversation" = ps: with ps; [ aiohttp-cors ]; "conversation.util" = ps: with ps; [ ]; + "coolmaster" = ps: with ps; [ ]; + "coolmaster.climate" = ps: with ps; [ ]; "counter" = ps: with ps; [ ]; "cover" = ps: with ps; [ ]; - "cover.aladdin_connect" = ps: with ps; [ ]; - "cover.brunt" = ps: with ps; [ ]; - "cover.command_line" = ps: with ps; [ ]; - "cover.demo" = ps: with ps; [ ]; - "cover.garadget" = ps: with ps; [ ]; - "cover.gogogate2" = ps: with ps; [ ]; - "cover.group" = ps: with ps; [ ]; - "cover.myq" = ps: with ps; [ ]; - "cover.opengarage" = ps: with ps; [ ]; - "cover.rflink" = ps: with ps; [ ]; - "cover.template" = ps: with ps; [ ]; "cppm_tracker" = ps: with ps; [ ]; "cppm_tracker.device_tracker" = ps: with ps; [ ]; + "cpuspeed" = ps: with ps; [ ]; + "cpuspeed.sensor" = ps: with ps; [ py-cpuinfo ]; + "crimereports" = ps: with ps; [ ]; + "crimereports.sensor" = ps: with ps; [ ]; + "cups" = ps: with ps; [ ]; + "cups.sensor" = ps: with ps; [ pycups ]; + "currencylayer" = ps: with ps; [ ]; + "currencylayer.sensor" = ps: with ps; [ ]; "daikin" = ps: with ps; [ ]; "daikin.climate" = ps: with ps; [ ]; "daikin.config_flow" = ps: with ps; [ ]; "daikin.const" = ps: with ps; [ ]; "daikin.sensor" = ps: with ps; [ ]; + "daikin.switch" = ps: with ps; [ ]; "danfoss_air" = ps: with ps; [ ]; "danfoss_air.binary_sensor" = ps: with ps; [ ]; "danfoss_air.sensor" = ps: with ps; [ ]; "danfoss_air.switch" = ps: with ps; [ ]; + "darksky" = ps: with ps; [ ]; + "darksky.sensor" = ps: with ps; [ python-forecastio ]; + "darksky.weather" = ps: with ps; [ python-forecastio ]; "datadog" = ps: with ps; [ datadog ]; + "ddwrt" = ps: with ps; [ ]; + "ddwrt.device_tracker" = ps: with ps; [ ]; "deconz" = ps: with ps; [ ]; "deconz.binary_sensor" = ps: with ps; [ ]; "deconz.climate" = ps: with ps; [ ]; @@ -264,68 +333,77 @@ "deconz.const" = ps: with ps; [ ]; "deconz.cover" = ps: with ps; [ ]; "deconz.deconz_device" = ps: with ps; [ ]; + "deconz.errors" = ps: with ps; [ ]; "deconz.gateway" = ps: with ps; [ ]; "deconz.light" = ps: with ps; [ ]; "deconz.scene" = ps: with ps; [ ]; "deconz.sensor" = ps: with ps; [ ]; "deconz.switch" = ps: with ps; [ ]; + "decora" = ps: with ps; [ ]; + "decora.light" = ps: with ps; [ ]; + "decora_wifi" = ps: with ps; [ ]; + "decora_wifi.light" = ps: with ps; [ ]; "default_config" = ps: with ps; [ pynacl aiohttp-cors distro sqlalchemy zeroconf ]; + "deluge" = ps: with ps; [ ]; + "deluge.sensor" = ps: with ps; [ deluge-client ]; + "deluge.switch" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors ]; + "demo.air_quality" = ps: with ps; [ ]; + "demo.alarm_control_panel" = ps: with ps; [ ]; + "demo.binary_sensor" = ps: with ps; [ ]; + "demo.calendar" = ps: with ps; [ ]; + "demo.camera" = ps: with ps; [ ]; + "demo.climate" = ps: with ps; [ ]; + "demo.cover" = ps: with ps; [ ]; + "demo.device_tracker" = ps: with ps; [ ]; + "demo.fan" = ps: with ps; [ ]; + "demo.geo_location" = ps: with ps; [ ]; + "demo.image_processing" = ps: with ps; [ ]; + "demo.light" = ps: with ps; [ ]; + "demo.lock" = ps: with ps; [ ]; + "demo.mailbox" = ps: with ps; [ ]; + "demo.media_player" = ps: with ps; [ ]; + "demo.notify" = ps: with ps; [ ]; "demo.remote" = ps: with ps; [ ]; + "demo.sensor" = ps: with ps; [ ]; + "demo.switch" = ps: with ps; [ ]; + "demo.tts" = ps: with ps; [ ]; + "demo.vacuum" = ps: with ps; [ ]; + "demo.water_heater" = ps: with ps; [ ]; + "demo.weather" = ps: with ps; [ ]; + "denon" = ps: with ps; [ ]; + "denon.media_player" = ps: with ps; [ ]; + "denonavr" = ps: with ps; [ ]; + "denonavr.media_player" = ps: with ps; [ ]; + "deutsche_bahn" = ps: with ps; [ ]; + "deutsche_bahn.sensor" = ps: with ps; [ ]; "device_sun_light_trigger" = ps: with ps; [ ]; "device_tracker" = ps: with ps; [ ]; - "device_tracker.actiontec" = ps: with ps; [ ]; - "device_tracker.aruba" = ps: with ps; [ pexpect ]; - "device_tracker.asuswrt" = ps: with ps; [ ]; - "device_tracker.automatic" = ps: with ps; [ aiohttp-cors ]; - "device_tracker.bbox" = ps: with ps; [ ]; - "device_tracker.bluetooth_le_tracker" = ps: with ps; [ ]; - "device_tracker.bluetooth_tracker" = ps: with ps; [ bt_proximity ]; - "device_tracker.bt_home_hub_5" = ps: with ps; [ ]; - "device_tracker.bt_smarthub" = ps: with ps; [ ]; - "device_tracker.cisco_ios" = ps: with ps; [ pexpect ]; - "device_tracker.ddwrt" = ps: with ps; [ ]; - "device_tracker.demo" = ps: with ps; [ ]; - "device_tracker.ee_brightbox" = ps: with ps; [ ]; - "device_tracker.fritz" = ps: with ps; [ fritzconnection ]; - "device_tracker.google_maps" = ps: with ps; [ ]; - "device_tracker.hitron_coda" = ps: with ps; [ ]; - "device_tracker.huawei_router" = ps: with ps; [ ]; - "device_tracker.icloud" = ps: with ps; [ ]; - "device_tracker.keenetic_ndms2" = ps: with ps; [ ]; - "device_tracker.linksys_ap" = ps: with ps; [ beautifulsoup4 ]; - "device_tracker.linksys_smart" = ps: with ps; [ ]; - "device_tracker.luci" = ps: with ps; [ ]; - "device_tracker.meraki" = ps: with ps; [ aiohttp-cors ]; - "device_tracker.mikrotik" = ps: with ps; [ ]; - "device_tracker.mqtt_json" = ps: with ps; [ paho-mqtt ]; - "device_tracker.netgear" = ps: with ps; [ ]; - "device_tracker.nmap_tracker" = ps: with ps; [ ]; - "device_tracker.ping" = ps: with ps; [ ]; - "device_tracker.quantum_gateway" = ps: with ps; [ ]; - "device_tracker.ritassist" = ps: with ps; [ ]; - "device_tracker.sky_hub" = ps: with ps; [ ]; - "device_tracker.snmp" = ps: with ps; [ pysnmp ]; - "device_tracker.swisscom" = ps: with ps; [ ]; - "device_tracker.synology_srm" = ps: with ps; [ ]; - "device_tracker.thomson" = ps: with ps; [ ]; - "device_tracker.tile" = ps: with ps; [ ]; - "device_tracker.tomato" = ps: with ps; [ ]; - "device_tracker.tplink" = ps: with ps; [ ]; - "device_tracker.traccar" = ps: with ps; [ ]; - "device_tracker.trackr" = ps: with ps; [ ]; - "device_tracker.ubee" = ps: with ps; [ ]; - "device_tracker.ubus" = ps: with ps; [ ]; - "device_tracker.unifi" = ps: with ps; [ pyunifi ]; - "device_tracker.unifi_direct" = ps: with ps; [ pexpect ]; - "device_tracker.upc_connect" = ps: with ps; [ defusedxml ]; - "device_tracker.xfinity" = ps: with ps; [ ]; - "device_tracker.xiaomi" = ps: with ps; [ ]; + "dht" = ps: with ps; [ ]; + "dht.sensor" = ps: with ps; [ ]; "dialogflow" = ps: with ps; [ aiohttp-cors ]; "digital_ocean" = ps: with ps; [ digital-ocean ]; "digital_ocean.binary_sensor" = ps: with ps; [ digital-ocean ]; "digital_ocean.switch" = ps: with ps; [ digital-ocean ]; + "digitalloggers" = ps: with ps; [ ]; + "digitalloggers.switch" = ps: with ps; [ ]; + "directv" = ps: with ps; [ ]; + "directv.media_player" = ps: with ps; [ ]; + "discogs" = ps: with ps; [ ]; + "discogs.sensor" = ps: with ps; [ discogs_client ]; + "discord" = ps: with ps; [ ]; + "discord.notify" = ps: with ps; [ discordpy ]; "discovery" = ps: with ps; [ netdisco ]; + "dlib_face_detect" = ps: with ps; [ ]; + "dlib_face_detect.image_processing" = ps: with ps; [ face_recognition ]; + "dlib_face_identify" = ps: with ps; [ ]; + "dlib_face_identify.image_processing" = ps: with ps; [ face_recognition ]; + "dlink" = ps: with ps; [ ]; + "dlink.switch" = ps: with ps; [ ]; + "dlna_dmr" = ps: with ps; [ ]; + "dlna_dmr.media_player" = ps: with ps; [ ]; + "dnsip" = ps: with ps; [ ]; + "dnsip.sensor" = ps: with ps; [ aiodns ]; "dominos" = ps: with ps; [ aiohttp-cors ]; "doorbird" = ps: with ps; [ ]; "doorbird.camera" = ps: with ps; [ ]; @@ -334,10 +412,28 @@ "dovado.notify" = ps: with ps; [ ]; "dovado.sensor" = ps: with ps; [ ]; "downloader" = ps: with ps; [ ]; + "dsmr" = ps: with ps; [ ]; + "dsmr.sensor" = ps: with ps; [ ]; + "dte_energy_bridge" = ps: with ps; [ ]; + "dte_energy_bridge.sensor" = ps: with ps; [ ]; + "dublin_bus_transport" = ps: with ps; [ ]; + "dublin_bus_transport.sensor" = ps: with ps; [ ]; "duckdns" = ps: with ps; [ ]; + "duke_energy" = ps: with ps; [ ]; + "duke_energy.sensor" = ps: with ps; [ ]; + "dunehd" = ps: with ps; [ ]; + "dunehd.media_player" = ps: with ps; [ ]; + "dwd_weather_warnings" = ps: with ps; [ ]; + "dwd_weather_warnings.sensor" = ps: with ps; [ ]; "dweet" = ps: with ps; [ ]; "dweet.sensor" = ps: with ps; [ ]; "dyson" = ps: with ps; [ ]; + "dyson.climate" = ps: with ps; [ ]; + "dyson.fan" = ps: with ps; [ ]; + "dyson.sensor" = ps: with ps; [ ]; + "dyson.vacuum" = ps: with ps; [ ]; + "ebox" = ps: with ps; [ ]; + "ebox.sensor" = ps: with ps; [ ]; "ebusd" = ps: with ps; [ ]; "ebusd.const" = ps: with ps; [ ]; "ebusd.sensor" = ps: with ps; [ ]; @@ -350,17 +446,29 @@ "ecobee.notify" = ps: with ps; [ ]; "ecobee.sensor" = ps: with ps; [ ]; "ecobee.weather" = ps: with ps; [ ]; + "econet" = ps: with ps; [ ]; + "econet.water_heater" = ps: with ps; [ ]; "ecovacs" = ps: with ps; [ ]; "ecovacs.vacuum" = ps: with ps; [ ]; + "eddystone_temperature" = ps: with ps; [ ]; + "eddystone_temperature.sensor" = ps: with ps; [ construct ]; + "edimax" = ps: with ps; [ ]; + "edimax.switch" = ps: with ps; [ ]; "edp_redy" = ps: with ps; [ ]; "edp_redy.sensor" = ps: with ps; [ ]; "edp_redy.switch" = ps: with ps; [ ]; + "ee_brightbox" = ps: with ps; [ ]; + "ee_brightbox.device_tracker" = ps: with ps; [ ]; + "efergy" = ps: with ps; [ ]; + "efergy.sensor" = ps: with ps; [ ]; "egardia" = ps: with ps; [ ]; "egardia.alarm_control_panel" = ps: with ps; [ ]; "egardia.binary_sensor" = ps: with ps; [ ]; "eight_sleep" = ps: with ps; [ ]; "eight_sleep.binary_sensor" = ps: with ps; [ ]; "eight_sleep.sensor" = ps: with ps; [ ]; + "eliqonline" = ps: with ps; [ ]; + "eliqonline.sensor" = ps: with ps; [ ]; "elkm1" = ps: with ps; [ ]; "elkm1.alarm_control_panel" = ps: with ps; [ ]; "elkm1.climate" = ps: with ps; [ ]; @@ -368,6 +476,10 @@ "elkm1.scene" = ps: with ps; [ ]; "elkm1.sensor" = ps: with ps; [ ]; "elkm1.switch" = ps: with ps; [ ]; + "emby" = ps: with ps; [ ]; + "emby.media_player" = ps: with ps; [ ]; + "emoncms" = ps: with ps; [ ]; + "emoncms.sensor" = ps: with ps; [ ]; "emoncms_history" = ps: with ps; [ ]; "emulated_hue" = ps: with ps; [ aiohttp-cors ]; "emulated_hue.hue_api" = ps: with ps; [ ]; @@ -383,31 +495,60 @@ "enocean.light" = ps: with ps; [ ]; "enocean.sensor" = ps: with ps; [ ]; "enocean.switch" = ps: with ps; [ ]; + "enphase_envoy" = ps: with ps; [ ]; + "enphase_envoy.sensor" = ps: with ps; [ ]; + "entur_public_transport" = ps: with ps; [ ]; + "entur_public_transport.sensor" = ps: with ps; [ ]; + "envirophat" = ps: with ps; [ ]; + "envirophat.sensor" = ps: with ps; [ ]; "envisalink" = ps: with ps; [ ]; "envisalink.alarm_control_panel" = ps: with ps; [ ]; "envisalink.binary_sensor" = ps: with ps; [ ]; "envisalink.sensor" = ps: with ps; [ ]; + "ephember" = ps: with ps; [ ]; + "ephember.climate" = ps: with ps; [ ]; + "epson" = ps: with ps; [ ]; + "epson.media_player" = ps: with ps; [ ]; + "eq3btsmart" = ps: with ps; [ ]; + "eq3btsmart.climate" = ps: with ps; [ construct ]; "esphome" = ps: with ps; [ aioesphomeapi ]; - "esphome.binary_sensor" = ps: with ps; [ ]; + "esphome.binary_sensor" = ps: with ps; [ aioesphomeapi ]; + "esphome.camera" = ps: with ps; [ aioesphomeapi ]; "esphome.config_flow" = ps: with ps; [ ]; - "esphome.cover" = ps: with ps; [ ]; - "esphome.fan" = ps: with ps; [ ]; - "esphome.light" = ps: with ps; [ ]; - "esphome.sensor" = ps: with ps; [ ]; - "esphome.switch" = ps: with ps; [ ]; + "esphome.cover" = ps: with ps; [ aioesphomeapi ]; + "esphome.fan" = ps: with ps; [ aioesphomeapi ]; + "esphome.light" = ps: with ps; [ aioesphomeapi ]; + "esphome.sensor" = ps: with ps; [ aioesphomeapi ]; + "esphome.switch" = ps: with ps; [ aioesphomeapi ]; + "etherscan" = ps: with ps; [ ]; + "etherscan.sensor" = ps: with ps; [ ]; "eufy" = ps: with ps; [ ]; "eufy.light" = ps: with ps; [ ]; "eufy.switch" = ps: with ps; [ ]; + "everlights" = ps: with ps; [ ]; + "everlights.light" = ps: with ps; [ ]; "evohome" = ps: with ps; [ ]; "evohome.climate" = ps: with ps; [ ]; + "facebook" = ps: with ps; [ ]; + "facebook.notify" = ps: with ps; [ ]; + "facebox" = ps: with ps; [ ]; + "facebox.image_processing" = ps: with ps; [ ]; + "fail2ban" = ps: with ps; [ ]; + "fail2ban.sensor" = ps: with ps; [ ]; + "familyhub" = ps: with ps; [ ]; + "familyhub.camera" = ps: with ps; [ ]; "fan" = ps: with ps; [ ]; - "fan.demo" = ps: with ps; [ ]; - "fan.dyson" = ps: with ps; [ ]; - "fan.template" = ps: with ps; [ ]; "fastdotcom" = ps: with ps; [ ]; "fastdotcom.sensor" = ps: with ps; [ ]; + "fedex" = ps: with ps; [ ]; + "fedex.sensor" = ps: with ps; [ ]; "feedreader" = ps: with ps; [ ]; "ffmpeg" = ps: with ps; [ ha-ffmpeg ]; + "ffmpeg.camera" = ps: with ps; [ ha-ffmpeg ]; + "ffmpeg_motion" = ps: with ps; [ ]; + "ffmpeg_motion.binary_sensor" = ps: with ps; [ ha-ffmpeg ]; + "ffmpeg_noise" = ps: with ps; [ ]; + "ffmpeg_noise.binary_sensor" = ps: with ps; [ ha-ffmpeg ]; "fibaro" = ps: with ps; [ ]; "fibaro.binary_sensor" = ps: with ps; [ ]; "fibaro.cover" = ps: with ps; [ ]; @@ -415,30 +556,100 @@ "fibaro.scene" = ps: with ps; [ ]; "fibaro.sensor" = ps: with ps; [ ]; "fibaro.switch" = ps: with ps; [ ]; + "fido" = ps: with ps; [ ]; + "fido.sensor" = ps: with ps; [ ]; + "file" = ps: with ps; [ ]; + "file.notify" = ps: with ps; [ ]; + "file.sensor" = ps: with ps; [ ]; + "filesize" = ps: with ps; [ ]; + "filesize.sensor" = ps: with ps; [ ]; + "filter" = ps: with ps; [ ]; + "filter.sensor" = ps: with ps; [ ]; + "fints" = ps: with ps; [ ]; + "fints.sensor" = ps: with ps; [ fints ]; + "fitbit" = ps: with ps; [ ]; + "fitbit.sensor" = ps: with ps; [ aiohttp-cors ]; + "fixer" = ps: with ps; [ ]; + "fixer.sensor" = ps: with ps; [ ]; + "flexit" = ps: with ps; [ ]; + "flexit.climate" = ps: with ps; [ ]; + "flic" = ps: with ps; [ ]; + "flic.binary_sensor" = ps: with ps; [ ]; + "flock" = ps: with ps; [ ]; + "flock.notify" = ps: with ps; [ ]; + "flunearyou" = ps: with ps; [ ]; + "flunearyou.sensor" = ps: with ps; [ ]; + "flux" = ps: with ps; [ ]; + "flux.switch" = ps: with ps; [ ]; + "flux_led" = ps: with ps; [ ]; + "flux_led.light" = ps: with ps; [ ]; + "folder" = ps: with ps; [ ]; + "folder.sensor" = ps: with ps; [ ]; "folder_watcher" = ps: with ps; [ watchdog ]; + "foobot" = ps: with ps; [ ]; + "foobot.sensor" = ps: with ps; [ ]; + "foscam" = ps: with ps; [ ]; + "foscam.camera" = ps: with ps; [ ]; "foursquare" = ps: with ps; [ aiohttp-cors ]; + "free_mobile" = ps: with ps; [ ]; + "free_mobile.notify" = ps: with ps; [ ]; "freebox" = ps: with ps; [ ]; "freebox.device_tracker" = ps: with ps; [ ]; "freebox.sensor" = ps: with ps; [ ]; + "freebox.switch" = ps: with ps; [ ]; "freedns" = ps: with ps; [ ]; + "fritz" = ps: with ps; [ ]; + "fritz.device_tracker" = ps: with ps; [ fritzconnection ]; "fritzbox" = ps: with ps; [ ]; "fritzbox.binary_sensor" = ps: with ps; [ ]; "fritzbox.climate" = ps: with ps; [ ]; "fritzbox.sensor" = ps: with ps; [ ]; "fritzbox.switch" = ps: with ps; [ ]; + "fritzbox_callmonitor" = ps: with ps; [ ]; + "fritzbox_callmonitor.sensor" = ps: with ps; [ fritzconnection ]; + "fritzbox_netmonitor" = ps: with ps; [ ]; + "fritzbox_netmonitor.sensor" = ps: with ps; [ fritzconnection ]; + "fritzdect" = ps: with ps; [ ]; + "fritzdect.switch" = ps: with ps; [ ]; "frontend" = ps: with ps; [ aiohttp-cors ]; "frontend.storage" = ps: with ps; [ ]; + "frontier_silicon" = ps: with ps; [ ]; + "frontier_silicon.media_player" = ps: with ps; [ ]; + "futurenow" = ps: with ps; [ ]; + "futurenow.light" = ps: with ps; [ ]; + "garadget" = ps: with ps; [ ]; + "garadget.cover" = ps: with ps; [ ]; "gc100" = ps: with ps; [ ]; "gc100.binary_sensor" = ps: with ps; [ ]; "gc100.switch" = ps: with ps; [ ]; + "gearbest" = ps: with ps; [ ]; + "gearbest.sensor" = ps: with ps; [ ]; + "geizhals" = ps: with ps; [ ]; + "geizhals.sensor" = ps: with ps; [ ]; + "generic" = ps: with ps; [ ]; + "generic.camera" = ps: with ps; [ ]; + "generic_thermostat" = ps: with ps; [ ]; + "generic_thermostat.climate" = ps: with ps; [ ]; + "geo_json_events" = ps: with ps; [ ]; + "geo_json_events.geo_location" = ps: with ps; [ ]; "geo_location" = ps: with ps; [ ]; - "geo_location.demo" = ps: with ps; [ ]; - "geo_location.geo_json_events" = ps: with ps; [ ]; - "geo_location.nsw_rural_fire_service_feed" = ps: with ps; [ ]; - "geo_location.usgs_earthquakes_feed" = ps: with ps; [ ]; + "geo_rss_events" = ps: with ps; [ ]; + "geo_rss_events.sensor" = ps: with ps; [ ]; "geofency" = ps: with ps; [ aiohttp-cors ]; "geofency.device_tracker" = ps: with ps; [ aiohttp-cors ]; + "github" = ps: with ps; [ ]; + "github.sensor" = ps: with ps; [ PyGithub ]; + "gitlab_ci" = ps: with ps; [ ]; + "gitlab_ci.sensor" = ps: with ps; [ python-gitlab ]; + "gitter" = ps: with ps; [ ]; + "gitter.sensor" = ps: with ps; [ ]; + "glances" = ps: with ps; [ ]; + "glances.sensor" = ps: with ps; [ ]; + "gntp" = ps: with ps; [ ]; + "gntp.notify" = ps: with ps; [ ]; "goalfeed" = ps: with ps; [ ]; + "gogogate2" = ps: with ps; [ ]; + "gogogate2.cover" = ps: with ps; [ ]; "google" = ps: with ps; [ google_api_python_client httplib2 oauth2client ]; "google.calendar" = ps: with ps; [ ]; "google.tts" = ps: with ps; [ ]; @@ -449,16 +660,38 @@ "google_assistant.smart_home" = ps: with ps; [ ]; "google_assistant.trait" = ps: with ps; [ ]; "google_domains" = ps: with ps; [ ]; + "google_maps" = ps: with ps; [ ]; + "google_maps.device_tracker" = ps: with ps; [ ]; "google_pubsub" = ps: with ps; [ google_cloud_pubsub ]; + "google_travel_time" = ps: with ps; [ ]; + "google_travel_time.sensor" = ps: with ps; [ ]; + "google_wifi" = ps: with ps; [ ]; + "google_wifi.sensor" = ps: with ps; [ ]; "googlehome" = ps: with ps; [ ]; "googlehome.device_tracker" = ps: with ps; [ ]; "googlehome.sensor" = ps: with ps; [ ]; + "gpmdp" = ps: with ps; [ ]; + "gpmdp.media_player" = ps: with ps; [ websocket_client ]; + "gpsd" = ps: with ps; [ ]; + "gpsd.sensor" = ps: with ps; [ ]; "gpslogger" = ps: with ps; [ aiohttp-cors ]; "gpslogger.device_tracker" = ps: with ps; [ aiohttp-cors ]; "graphite" = ps: with ps; [ ]; "greeneye_monitor" = ps: with ps; [ ]; + "greeneye_monitor.sensor" = ps: with ps; [ ]; + "greenwave" = ps: with ps; [ ]; + "greenwave.light" = ps: with ps; [ ]; "group" = ps: with ps; [ ]; + "group.cover" = ps: with ps; [ ]; + "group.light" = ps: with ps; [ ]; + "group.notify" = ps: with ps; [ ]; "group.reproduce_state" = ps: with ps; [ ]; + "gstreamer" = ps: with ps; [ ]; + "gstreamer.media_player" = ps: with ps; [ ]; + "gtfs" = ps: with ps; [ ]; + "gtfs.sensor" = ps: with ps; [ ]; + "gtt" = ps: with ps; [ ]; + "gtt.sensor" = ps: with ps; [ ]; "habitica" = ps: with ps; [ ]; "habitica.sensor" = ps: with ps; [ ]; "hangouts" = ps: with ps; [ ]; @@ -467,6 +700,8 @@ "hangouts.hangouts_bot" = ps: with ps; [ ]; "hangouts.intents" = ps: with ps; [ ]; "hangouts.notify" = ps: with ps; [ ]; + "harman_kardon_avr" = ps: with ps; [ ]; + "harman_kardon_avr.media_player" = ps: with ps; [ ]; "harmony" = ps: with ps; [ ]; "harmony.remote" = ps: with ps; [ ]; "hassio" = ps: with ps; [ aiohttp-cors ]; @@ -475,11 +710,28 @@ "hassio.discovery" = ps: with ps; [ ]; "hassio.handler" = ps: with ps; [ ]; "hassio.http" = ps: with ps; [ ]; + "hassio.ingress" = ps: with ps; [ ]; + "haveibeenpwned" = ps: with ps; [ ]; + "haveibeenpwned.sensor" = ps: with ps; [ ]; + "hddtemp" = ps: with ps; [ ]; + "hddtemp.sensor" = ps: with ps; [ ]; "hdmi_cec" = ps: with ps; [ ]; "hdmi_cec.media_player" = ps: with ps; [ ]; "hdmi_cec.switch" = ps: with ps; [ ]; + "heatmiser" = ps: with ps; [ ]; + "heatmiser.climate" = ps: with ps; [ ]; + "hikvision" = ps: with ps; [ ]; + "hikvision.binary_sensor" = ps: with ps; [ ]; + "hikvisioncam" = ps: with ps; [ ]; + "hikvisioncam.switch" = ps: with ps; [ ]; + "hipchat" = ps: with ps; [ ]; + "hipchat.notify" = ps: with ps; [ ]; "history" = ps: with ps; [ aiohttp-cors sqlalchemy ]; "history_graph" = ps: with ps; [ aiohttp-cors sqlalchemy ]; + "history_stats" = ps: with ps; [ ]; + "history_stats.sensor" = ps: with ps; [ aiohttp-cors sqlalchemy ]; + "hitron_coda" = ps: with ps; [ ]; + "hitron_coda.device_tracker" = ps: with ps; [ ]; "hive" = ps: with ps; [ ]; "hive.binary_sensor" = ps: with ps; [ ]; "hive.climate" = ps: with ps; [ ]; @@ -488,6 +740,8 @@ "hive.switch" = ps: with ps; [ ]; "hlk_sw16" = ps: with ps; [ ]; "hlk_sw16.switch" = ps: with ps; [ ]; + "homeassistant" = ps: with ps; [ ]; + "homeassistant.scene" = ps: with ps; [ ]; "homekit" = ps: with ps; [ ]; "homekit.const" = ps: with ps; [ ]; "homekit.util" = ps: with ps; [ ]; @@ -528,6 +782,16 @@ "homematicip_cloud.weather" = ps: with ps; [ ]; "homeworks" = ps: with ps; [ ]; "homeworks.light" = ps: with ps; [ ]; + "honeywell" = ps: with ps; [ ]; + "honeywell.climate" = ps: with ps; [ ]; + "hook" = ps: with ps; [ ]; + "hook.switch" = ps: with ps; [ ]; + "horizon" = ps: with ps; [ ]; + "horizon.media_player" = ps: with ps; [ ]; + "hp_ilo" = ps: with ps; [ ]; + "hp_ilo.sensor" = ps: with ps; [ ]; + "html5" = ps: with ps; [ ]; + "html5.notify" = ps: with ps; [ aiohttp-cors ]; "http" = ps: with ps; [ aiohttp-cors ]; "http.auth" = ps: with ps; [ ]; "http.ban" = ps: with ps; [ ]; @@ -537,23 +801,39 @@ "http.real_ip" = ps: with ps; [ ]; "http.static" = ps: with ps; [ ]; "http.view" = ps: with ps; [ ]; + "htu21d" = ps: with ps; [ ]; + "htu21d.sensor" = ps: with ps; [ ]; "huawei_lte" = ps: with ps; [ ]; "huawei_lte.device_tracker" = ps: with ps; [ ]; "huawei_lte.notify" = ps: with ps; [ ]; "huawei_lte.sensor" = ps: with ps; [ ]; + "huawei_router" = ps: with ps; [ ]; + "huawei_router.device_tracker" = ps: with ps; [ ]; "hue" = ps: with ps; [ aiohue ]; "hue.bridge" = ps: with ps; [ ]; "hue.config_flow" = ps: with ps; [ ]; "hue.const" = ps: with ps; [ ]; "hue.errors" = ps: with ps; [ ]; "hue.light" = ps: with ps; [ aiohue ]; + "hunterdouglas_powerview" = ps: with ps; [ ]; + "hunterdouglas_powerview.scene" = ps: with ps; [ ]; "hydrawise" = ps: with ps; [ ]; "hydrawise.binary_sensor" = ps: with ps; [ ]; "hydrawise.sensor" = ps: with ps; [ ]; "hydrawise.switch" = ps: with ps; [ ]; + "hydroquebec" = ps: with ps; [ ]; + "hydroquebec.sensor" = ps: with ps; [ ]; + "hyperion" = ps: with ps; [ ]; + "hyperion.light" = ps: with ps; [ ]; + "ialarm" = ps: with ps; [ ]; + "ialarm.alarm_control_panel" = ps: with ps; [ ]; + "icloud" = ps: with ps; [ ]; + "icloud.device_tracker" = ps: with ps; [ ]; "idteck_prox" = ps: with ps; [ ]; "ifttt" = ps: with ps; [ aiohttp-cors pyfttt ]; "ifttt.alarm_control_panel" = ps: with ps; [ aiohttp-cors pyfttt ]; + "iglo" = ps: with ps; [ ]; + "iglo.light" = ps: with ps; [ ]; "ihc" = ps: with ps; [ defusedxml ]; "ihc.binary_sensor" = ps: with ps; [ defusedxml ]; "ihc.const" = ps: with ps; [ ]; @@ -563,19 +843,12 @@ "ihc.switch" = ps: with ps; [ defusedxml ]; "ihc.util" = ps: with ps; [ ]; "image_processing" = ps: with ps; [ aiohttp-cors ]; - "image_processing.demo" = ps: with ps; [ ]; - "image_processing.dlib_face_detect" = ps: with ps; [ face_recognition ]; - "image_processing.dlib_face_identify" = ps: with ps; [ face_recognition ]; - "image_processing.facebox" = ps: with ps; [ ]; - "image_processing.microsoft_face_detect" = ps: with ps; [ aiohttp-cors ]; - "image_processing.microsoft_face_identify" = ps: with ps; [ aiohttp-cors ]; - "image_processing.openalpr_cloud" = ps: with ps; [ ]; - "image_processing.openalpr_local" = ps: with ps; [ ]; - "image_processing.opencv" = ps: with ps; [ numpy ]; - "image_processing.qrcode" = ps: with ps; [ pillow ]; - "image_processing.seven_segments" = ps: with ps; [ ]; - "image_processing.tensorflow" = ps: with ps; [ numpy pillow protobuf ]; + "imap" = ps: with ps; [ ]; + "imap.sensor" = ps: with ps; [ ]; + "imap_email_content" = ps: with ps; [ ]; + "imap_email_content.sensor" = ps: with ps; [ ]; "influxdb" = ps: with ps; [ influxdb ]; + "influxdb.sensor" = ps: with ps; [ influxdb ]; "input_boolean" = ps: with ps; [ ]; "input_datetime" = ps: with ps; [ ]; "input_number" = ps: with ps; [ ]; @@ -590,6 +863,8 @@ "insteon.switch" = ps: with ps; [ ]; "insteon_local" = ps: with ps; [ ]; "insteon_plm" = ps: with ps; [ ]; + "integration" = ps: with ps; [ ]; + "integration.sensor" = ps: with ps; [ ]; "intent_script" = ps: with ps; [ ]; "introduction" = ps: with ps; [ ]; "ios" = ps: with ps; [ aiohttp-cors zeroconf ]; @@ -603,6 +878,12 @@ "ipma.config_flow" = ps: with ps; [ ]; "ipma.const" = ps: with ps; [ ]; "ipma.weather" = ps: with ps; [ ]; + "irish_rail_transport" = ps: with ps; [ ]; + "irish_rail_transport.sensor" = ps: with ps; [ ]; + "islamic_prayer_times" = ps: with ps; [ ]; + "islamic_prayer_times.sensor" = ps: with ps; [ ]; + "iss" = ps: with ps; [ ]; + "iss.binary_sensor" = ps: with ps; [ ]; "isy994" = ps: with ps; [ ]; "isy994.binary_sensor" = ps: with ps; [ ]; "isy994.cover" = ps: with ps; [ ]; @@ -613,15 +894,25 @@ "isy994.switch" = ps: with ps; [ ]; "itach" = ps: with ps; [ ]; "itach.remote" = ps: with ps; [ ]; + "itunes" = ps: with ps; [ ]; + "itunes.media_player" = ps: with ps; [ ]; + "jewish_calendar" = ps: with ps; [ ]; + "jewish_calendar.sensor" = ps: with ps; [ ]; "joaoapps_join" = ps: with ps; [ ]; "joaoapps_join.notify" = ps: with ps; [ ]; "juicenet" = ps: with ps; [ ]; "juicenet.sensor" = ps: with ps; [ ]; + "kankun" = ps: with ps; [ ]; + "kankun.switch" = ps: with ps; [ ]; + "keenetic_ndms2" = ps: with ps; [ ]; + "keenetic_ndms2.device_tracker" = ps: with ps; [ ]; "keyboard" = ps: with ps; [ ]; "keyboard_remote" = ps: with ps; [ evdev ]; "kira" = ps: with ps; [ ]; "kira.remote" = ps: with ps; [ ]; "kira.sensor" = ps: with ps; [ ]; + "kiwi" = ps: with ps; [ ]; + "kiwi.lock" = ps: with ps; [ ]; "knx" = ps: with ps; [ ]; "knx.binary_sensor" = ps: with ps; [ ]; "knx.climate" = ps: with ps; [ ]; @@ -631,80 +922,91 @@ "knx.scene" = ps: with ps; [ ]; "knx.sensor" = ps: with ps; [ ]; "knx.switch" = ps: with ps; [ ]; + "kodi" = ps: with ps; [ ]; + "kodi.media_player" = ps: with ps; [ jsonrpc-async jsonrpc-websocket ]; + "kodi.notify" = ps: with ps; [ jsonrpc-async ]; "konnected" = ps: with ps; [ aiohttp-cors ]; "konnected.binary_sensor" = ps: with ps; [ aiohttp-cors ]; "konnected.const" = ps: with ps; [ ]; "konnected.handlers" = ps: with ps; [ ]; "konnected.sensor" = ps: with ps; [ aiohttp-cors ]; "konnected.switch" = ps: with ps; [ aiohttp-cors ]; + "kwb" = ps: with ps; [ ]; + "kwb.sensor" = ps: with ps; [ ]; + "lacrosse" = ps: with ps; [ ]; + "lacrosse.sensor" = ps: with ps; [ ]; "lametric" = ps: with ps; [ ]; "lametric.notify" = ps: with ps; [ ]; + "lannouncer" = ps: with ps; [ ]; + "lannouncer.notify" = ps: with ps; [ ]; + "lastfm" = ps: with ps; [ ]; + "lastfm.sensor" = ps: with ps; [ pylast ]; + "launch_library" = ps: with ps; [ ]; + "launch_library.sensor" = ps: with ps; [ ]; "lcn" = ps: with ps; [ ]; "lcn.const" = ps: with ps; [ ]; "lcn.cover" = ps: with ps; [ ]; "lcn.light" = ps: with ps; [ ]; + "lcn.sensor" = ps: with ps; [ ]; "lcn.switch" = ps: with ps; [ ]; + "lg_netcast" = ps: with ps; [ ]; + "lg_netcast.media_player" = ps: with ps; [ ]; + "lg_soundbar" = ps: with ps; [ ]; + "lg_soundbar.media_player" = ps: with ps; [ ]; "lifx" = ps: with ps; [ aiolifx ]; "lifx.light" = ps: with ps; [ aiolifx aiolifx-effects ]; + "lifx_cloud" = ps: with ps; [ ]; + "lifx_cloud.scene" = ps: with ps; [ ]; + "lifx_legacy" = ps: with ps; [ ]; + "lifx_legacy.light" = ps: with ps; [ ]; "light" = ps: with ps; [ ]; - "light.avion" = ps: with ps; [ ]; - "light.blinksticklight" = ps: with ps; [ BlinkStick ]; - "light.blinkt" = ps: with ps; [ ]; - "light.decora" = ps: with ps; [ ]; - "light.decora_wifi" = ps: with ps; [ ]; - "light.demo" = ps: with ps; [ ]; - "light.everlights" = ps: with ps; [ ]; - "light.flux_led" = ps: with ps; [ ]; - "light.futurenow" = ps: with ps; [ ]; - "light.greenwave" = ps: with ps; [ ]; - "light.group" = ps: with ps; [ ]; - "light.hyperion" = ps: with ps; [ ]; - "light.iglo" = ps: with ps; [ ]; - "light.lifx_legacy" = ps: with ps; [ ]; - "light.limitlessled" = ps: with ps; [ limitlessled ]; - "light.litejet" = ps: with ps; [ ]; - "light.lw12wifi" = ps: with ps; [ ]; - "light.mystrom" = ps: with ps; [ ]; - "light.nanoleaf" = ps: with ps; [ ]; - "light.niko_home_control" = ps: with ps; [ ]; - "light.opple" = ps: with ps; [ ]; - "light.osramlightify" = ps: with ps; [ ]; - "light.piglow" = ps: with ps; [ ]; - "light.rflink" = ps: with ps; [ ]; - "light.rpi_gpio_pwm" = ps: with ps; [ ]; - "light.sensehat" = ps: with ps; [ ]; - "light.switch" = ps: with ps; [ ]; - "light.template" = ps: with ps; [ ]; - "light.tikteck" = ps: with ps; [ ]; - "light.x10" = ps: with ps; [ ]; - "light.yeelight" = ps: with ps; [ ]; - "light.yeelightsunflower" = ps: with ps; [ ]; - "light.zengge" = ps: with ps; [ ]; "lightwave" = ps: with ps; [ ]; "lightwave.light" = ps: with ps; [ ]; "lightwave.switch" = ps: with ps; [ ]; + "limitlessled" = ps: with ps; [ ]; + "limitlessled.light" = ps: with ps; [ limitlessled ]; + "linksys_ap" = ps: with ps; [ ]; + "linksys_ap.device_tracker" = ps: with ps; [ beautifulsoup4 ]; + "linksys_smart" = ps: with ps; [ ]; + "linksys_smart.device_tracker" = ps: with ps; [ ]; + "linky" = ps: with ps; [ ]; + "linky.sensor" = ps: with ps; [ ]; "linode" = ps: with ps; [ linode-api ]; "linode.binary_sensor" = ps: with ps; [ linode-api ]; "linode.switch" = ps: with ps; [ linode-api ]; + "linux_battery" = ps: with ps; [ ]; + "linux_battery.sensor" = ps: with ps; [ batinfo ]; "lirc" = ps: with ps; [ ]; "litejet" = ps: with ps; [ ]; + "litejet.light" = ps: with ps; [ ]; + "litejet.scene" = ps: with ps; [ ]; + "litejet.switch" = ps: with ps; [ ]; + "liveboxplaytv" = ps: with ps; [ ]; + "liveboxplaytv.media_player" = ps: with ps; [ ]; + "llamalab_automate" = ps: with ps; [ ]; + "llamalab_automate.notify" = ps: with ps; [ ]; + "local_file" = ps: with ps; [ ]; + "local_file.camera" = ps: with ps; [ ]; "locative" = ps: with ps; [ aiohttp-cors ]; "locative.device_tracker" = ps: with ps; [ aiohttp-cors ]; "lock" = ps: with ps; [ ]; - "lock.demo" = ps: with ps; [ ]; - "lock.kiwi" = ps: with ps; [ ]; - "lock.lockitron" = ps: with ps; [ ]; - "lock.nello" = ps: with ps; [ ]; - "lock.nuki" = ps: with ps; [ ]; - "lock.sesame" = ps: with ps; [ ]; - "lock.template" = ps: with ps; [ ]; + "lockitron" = ps: with ps; [ ]; + "lockitron.lock" = ps: with ps; [ ]; "logbook" = ps: with ps; [ aiohttp-cors sqlalchemy ]; "logentries" = ps: with ps; [ ]; "logger" = ps: with ps; [ ]; "logi_circle" = ps: with ps; [ ]; "logi_circle.camera" = ps: with ps; [ ]; "logi_circle.sensor" = ps: with ps; [ ]; + "london_air" = ps: with ps; [ ]; + "london_air.sensor" = ps: with ps; [ ]; + "london_underground" = ps: with ps; [ ]; + "london_underground.sensor" = ps: with ps; [ ]; + "loopenergy" = ps: with ps; [ ]; + "loopenergy.sensor" = ps: with ps; [ ]; "lovelace" = ps: with ps; [ ]; + "luci" = ps: with ps; [ ]; + "luci.device_tracker" = ps: with ps; [ ]; "luftdaten" = ps: with ps; [ luftdaten ]; "luftdaten.config_flow" = ps: with ps; [ ]; "luftdaten.const" = ps: with ps; [ ]; @@ -723,12 +1025,24 @@ "lutron_caseta.light" = ps: with ps; [ ]; "lutron_caseta.scene" = ps: with ps; [ ]; "lutron_caseta.switch" = ps: with ps; [ ]; + "lw12wifi" = ps: with ps; [ ]; + "lw12wifi.light" = ps: with ps; [ ]; + "lyft" = ps: with ps; [ ]; + "lyft.sensor" = ps: with ps; [ ]; + "magicseaweed" = ps: with ps; [ ]; + "magicseaweed.sensor" = ps: with ps; [ ]; "mailbox" = ps: with ps; [ aiohttp-cors ]; - "mailbox.asterisk_cdr" = ps: with ps; [ ]; - "mailbox.demo" = ps: with ps; [ ]; "mailgun" = ps: with ps; [ aiohttp-cors ]; "mailgun.notify" = ps: with ps; [ aiohttp-cors ]; + "manual" = ps: with ps; [ ]; + "manual.alarm_control_panel" = ps: with ps; [ ]; + "manual_mqtt" = ps: with ps; [ ]; + "manual_mqtt.alarm_control_panel" = ps: with ps; [ paho-mqtt ]; "map" = ps: with ps; [ ]; + "marytts" = ps: with ps; [ ]; + "marytts.tts" = ps: with ps; [ ]; + "mastodon" = ps: with ps; [ ]; + "mastodon.notify" = ps: with ps; [ ]; "matrix" = ps: with ps; [ matrix-client ]; "matrix.notify" = ps: with ps; [ matrix-client ]; "maxcube" = ps: with ps; [ ]; @@ -736,76 +1050,55 @@ "maxcube.climate" = ps: with ps; [ ]; "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ]; "media_player" = ps: with ps; [ aiohttp-cors ]; - "media_player.anthemav" = ps: with ps; [ ]; - "media_player.aquostv" = ps: with ps; [ ]; - "media_player.blackbird" = ps: with ps; [ ]; - "media_player.bluesound" = ps: with ps; [ xmltodict ]; - "media_player.braviatv" = ps: with ps; [ ]; - "media_player.channels" = ps: with ps; [ ]; - "media_player.clementine" = ps: with ps; [ ]; - "media_player.cmus" = ps: with ps; [ ]; "media_player.const" = ps: with ps; [ ]; - "media_player.demo" = ps: with ps; [ ]; - "media_player.denon" = ps: with ps; [ ]; - "media_player.denonavr" = ps: with ps; [ ]; - "media_player.directv" = ps: with ps; [ ]; - "media_player.dlna_dmr" = ps: with ps; [ ]; - "media_player.dunehd" = ps: with ps; [ ]; - "media_player.emby" = ps: with ps; [ ]; - "media_player.epson" = ps: with ps; [ ]; - "media_player.frontier_silicon" = ps: with ps; [ ]; - "media_player.gpmdp" = ps: with ps; [ websocket_client ]; - "media_player.gstreamer" = ps: with ps; [ ]; - "media_player.harman_kardon_avr" = ps: with ps; [ ]; - "media_player.horizon" = ps: with ps; [ ]; - "media_player.itunes" = ps: with ps; [ ]; - "media_player.kodi" = ps: with ps; [ jsonrpc-async jsonrpc-websocket ]; - "media_player.lg_netcast" = ps: with ps; [ ]; - "media_player.lg_soundbar" = ps: with ps; [ ]; - "media_player.liveboxplaytv" = ps: with ps; [ ]; - "media_player.mediaroom" = ps: with ps; [ ]; - "media_player.monoprice" = ps: with ps; [ ]; - "media_player.mpchc" = ps: with ps; [ ]; - "media_player.mpd" = ps: with ps; [ mpd2 ]; - "media_player.nad" = ps: with ps; [ ]; - "media_player.onkyo" = ps: with ps; [ onkyo-eiscp ]; - "media_player.openhome" = ps: with ps; [ ]; - "media_player.panasonic_bluray" = ps: with ps; [ ]; - "media_player.panasonic_viera" = ps: with ps; [ wakeonlan ]; - "media_player.pandora" = ps: with ps; [ pexpect ]; - "media_player.philips_js" = ps: with ps; [ ]; - "media_player.pioneer" = ps: with ps; [ ]; - "media_player.pjlink" = ps: with ps; [ ]; - "media_player.plex" = ps: with ps; [ ]; "media_player.reproduce_state" = ps: with ps; [ ]; - "media_player.russound_rio" = ps: with ps; [ ]; - "media_player.russound_rnet" = ps: with ps; [ ]; - "media_player.samsungtv" = ps: with ps; [ wakeonlan ]; - "media_player.snapcast" = ps: with ps; [ snapcast ]; - "media_player.songpal" = ps: with ps; [ ]; - "media_player.soundtouch" = ps: with ps; [ libsoundtouch ]; - "media_player.spotify" = ps: with ps; [ aiohttp-cors ]; - "media_player.squeezebox" = ps: with ps; [ ]; - "media_player.ue_smart_radio" = ps: with ps; [ ]; - "media_player.universal" = ps: with ps; [ ]; - "media_player.vizio" = ps: with ps; [ ]; - "media_player.vlc" = ps: with ps; [ ]; - "media_player.volumio" = ps: with ps; [ ]; - "media_player.xiaomi_tv" = ps: with ps; [ ]; - "media_player.yamaha" = ps: with ps; [ ]; - "media_player.yamaha_musiccast" = ps: with ps; [ ]; - "media_player.ziggo_mediabox_xl" = ps: with ps; [ ]; + "mediaroom" = ps: with ps; [ ]; + "mediaroom.media_player" = ps: with ps; [ ]; "melissa" = ps: with ps; [ ]; + "melissa.climate" = ps: with ps; [ ]; + "meraki" = ps: with ps; [ ]; + "meraki.device_tracker" = ps: with ps; [ aiohttp-cors ]; + "message_bird" = ps: with ps; [ ]; + "message_bird.notify" = ps: with ps; [ ]; + "met" = ps: with ps; [ ]; + "met.weather" = ps: with ps; [ ]; "meteo_france" = ps: with ps; [ ]; "meteo_france.sensor" = ps: with ps; [ ]; "meteo_france.weather" = ps: with ps; [ ]; + "metoffice" = ps: with ps; [ ]; + "metoffice.sensor" = ps: with ps; [ ]; + "metoffice.weather" = ps: with ps; [ ]; + "mfi" = ps: with ps; [ ]; + "mfi.sensor" = ps: with ps; [ ]; + "mfi.switch" = ps: with ps; [ ]; + "mhz19" = ps: with ps; [ ]; + "mhz19.sensor" = ps: with ps; [ ]; + "microsoft" = ps: with ps; [ ]; + "microsoft.tts" = ps: with ps; [ ]; "microsoft_face" = ps: with ps; [ aiohttp-cors ]; + "microsoft_face_detect" = ps: with ps; [ ]; + "microsoft_face_detect.image_processing" = ps: with ps; [ aiohttp-cors ]; + "microsoft_face_identify" = ps: with ps; [ ]; + "microsoft_face_identify.image_processing" = ps: with ps; [ aiohttp-cors ]; + "miflora" = ps: with ps; [ ]; + "miflora.sensor" = ps: with ps; [ ]; + "mikrotik" = ps: with ps; [ ]; + "mikrotik.device_tracker" = ps: with ps; [ ]; + "mill" = ps: with ps; [ ]; + "mill.climate" = ps: with ps; [ ]; + "min_max" = ps: with ps; [ ]; + "min_max.sensor" = ps: with ps; [ ]; + "mitemp_bt" = ps: with ps; [ ]; + "mitemp_bt.sensor" = ps: with ps; [ ]; + "mjpeg" = ps: with ps; [ ]; + "mjpeg.camera" = ps: with ps; [ ]; "mobile_app" = ps: with ps; [ pynacl aiohttp-cors ]; "mobile_app.binary_sensor" = ps: with ps; [ pynacl aiohttp-cors ]; "mobile_app.const" = ps: with ps; [ ]; "mobile_app.entity" = ps: with ps; [ ]; "mobile_app.helpers" = ps: with ps; [ ]; "mobile_app.http_api" = ps: with ps; [ ]; + "mobile_app.notify" = ps: with ps; [ pynacl aiohttp-cors ]; "mobile_app.sensor" = ps: with ps; [ pynacl aiohttp-cors ]; "mobile_app.webhook" = ps: with ps; [ ]; "mobile_app.websocket_api" = ps: with ps; [ ]; @@ -817,6 +1110,22 @@ "modbus.climate" = ps: with ps; [ ]; "modbus.sensor" = ps: with ps; [ ]; "modbus.switch" = ps: with ps; [ ]; + "modem_callerid" = ps: with ps; [ ]; + "modem_callerid.sensor" = ps: with ps; [ ]; + "mold_indicator" = ps: with ps; [ ]; + "mold_indicator.sensor" = ps: with ps; [ ]; + "monoprice" = ps: with ps; [ ]; + "monoprice.media_player" = ps: with ps; [ ]; + "moon" = ps: with ps; [ ]; + "moon.sensor" = ps: with ps; [ ]; + "mopar" = ps: with ps; [ ]; + "mopar.lock" = ps: with ps; [ ]; + "mopar.sensor" = ps: with ps; [ ]; + "mopar.switch" = ps: with ps; [ ]; + "mpchc" = ps: with ps; [ ]; + "mpchc.media_player" = ps: with ps; [ ]; + "mpd" = ps: with ps; [ ]; + "mpd.media_player" = ps: with ps; [ mpd2 ]; "mqtt" = ps: with ps; [ paho-mqtt ]; "mqtt.alarm_control_panel" = ps: with ps; [ paho-mqtt ]; "mqtt.binary_sensor" = ps: with ps; [ paho-mqtt ]; @@ -836,11 +1145,20 @@ "mqtt.switch" = ps: with ps; [ paho-mqtt ]; "mqtt.vacuum" = ps: with ps; [ paho-mqtt ]; "mqtt_eventstream" = ps: with ps; [ paho-mqtt ]; + "mqtt_json" = ps: with ps; [ ]; + "mqtt_json.device_tracker" = ps: with ps; [ paho-mqtt ]; + "mqtt_room" = ps: with ps; [ ]; + "mqtt_room.sensor" = ps: with ps; [ paho-mqtt ]; "mqtt_statestream" = ps: with ps; [ paho-mqtt ]; + "mvglive" = ps: with ps; [ ]; + "mvglive.sensor" = ps: with ps; [ PyMVGLive ]; "mychevy" = ps: with ps; [ ]; "mychevy.binary_sensor" = ps: with ps; [ ]; "mychevy.sensor" = ps: with ps; [ ]; "mycroft" = ps: with ps; [ ]; + "mycroft.notify" = ps: with ps; [ ]; + "myq" = ps: with ps; [ ]; + "myq.cover" = ps: with ps; [ ]; "mysensors" = ps: with ps; [ ]; "mysensors.binary_sensor" = ps: with ps; [ ]; "mysensors.climate" = ps: with ps; [ ]; @@ -855,13 +1173,27 @@ "mysensors.notify" = ps: with ps; [ ]; "mysensors.sensor" = ps: with ps; [ ]; "mysensors.switch" = ps: with ps; [ ]; + "mystrom" = ps: with ps; [ ]; + "mystrom.binary_sensor" = ps: with ps; [ aiohttp-cors ]; + "mystrom.light" = ps: with ps; [ ]; + "mystrom.switch" = ps: with ps; [ ]; "mythicbeastsdns" = ps: with ps; [ ]; + "nad" = ps: with ps; [ ]; + "nad.media_player" = ps: with ps; [ ]; "namecheapdns" = ps: with ps; [ defusedxml ]; + "nanoleaf" = ps: with ps; [ ]; + "nanoleaf.light" = ps: with ps; [ ]; "neato" = ps: with ps; [ pybotvac ]; "neato.camera" = ps: with ps; [ pybotvac ]; "neato.switch" = ps: with ps; [ pybotvac ]; "neato.vacuum" = ps: with ps; [ pybotvac ]; + "nederlandse_spoorwegen" = ps: with ps; [ ]; + "nederlandse_spoorwegen.sensor" = ps: with ps; [ ]; + "nello" = ps: with ps; [ ]; + "nello.lock" = ps: with ps; [ ]; "ness_alarm" = ps: with ps; [ ]; + "ness_alarm.alarm_control_panel" = ps: with ps; [ ]; + "ness_alarm.binary_sensor" = ps: with ps; [ ]; "nest" = ps: with ps; [ ]; "nest.binary_sensor" = ps: with ps; [ ]; "nest.camera" = ps: with ps; [ ]; @@ -875,70 +1207,93 @@ "netatmo.camera" = ps: with ps; [ aiohttp-cors ]; "netatmo.climate" = ps: with ps; [ aiohttp-cors ]; "netatmo.sensor" = ps: with ps; [ aiohttp-cors ]; + "netatmo_public" = ps: with ps; [ ]; + "netatmo_public.sensor" = ps: with ps; [ aiohttp-cors ]; + "netdata" = ps: with ps; [ ]; + "netdata.sensor" = ps: with ps; [ ]; + "netgear" = ps: with ps; [ ]; + "netgear.device_tracker" = ps: with ps; [ ]; "netgear_lte" = ps: with ps; [ ]; "netgear_lte.notify" = ps: with ps; [ ]; "netgear_lte.sensor" = ps: with ps; [ ]; + "netgear_lte.sensor_types" = ps: with ps; [ ]; + "netio" = ps: with ps; [ ]; + "netio.switch" = ps: with ps; [ aiohttp-cors ]; + "neurio_energy" = ps: with ps; [ ]; + "neurio_energy.sensor" = ps: with ps; [ ]; + "nfandroidtv" = ps: with ps; [ ]; + "nfandroidtv.notify" = ps: with ps; [ ]; + "niko_home_control" = ps: with ps; [ ]; + "niko_home_control.light" = ps: with ps; [ ]; + "nilu" = ps: with ps; [ ]; + "nilu.air_quality" = ps: with ps; [ ]; "nissan_leaf" = ps: with ps; [ ]; "nissan_leaf.binary_sensor" = ps: with ps; [ ]; "nissan_leaf.device_tracker" = ps: with ps; [ ]; "nissan_leaf.sensor" = ps: with ps; [ ]; "nissan_leaf.switch" = ps: with ps; [ ]; + "nmap_tracker" = ps: with ps; [ ]; + "nmap_tracker.device_tracker" = ps: with ps; [ ]; + "nmbs" = ps: with ps; [ ]; + "nmbs.sensor" = ps: with ps; [ ]; "no_ip" = ps: with ps; [ ]; + "noaa_tides" = ps: with ps; [ ]; + "noaa_tides.sensor" = ps: with ps; [ ]; + "norway_air" = ps: with ps; [ ]; + "norway_air.air_quality" = ps: with ps; [ ]; "notify" = ps: with ps; [ ]; - "notify.apns" = ps: with ps; [ ]; - "notify.aws_lambda" = ps: with ps; [ boto3 ]; - "notify.aws_sns" = ps: with ps; [ boto3 ]; - "notify.aws_sqs" = ps: with ps; [ boto3 ]; - "notify.ciscospark" = ps: with ps; [ ]; - "notify.clickatell" = ps: with ps; [ ]; - "notify.clicksend" = ps: with ps; [ ]; - "notify.clicksend_tts" = ps: with ps; [ ]; - "notify.command_line" = ps: with ps; [ ]; - "notify.demo" = ps: with ps; [ ]; - "notify.discord" = ps: with ps; [ discordpy ]; - "notify.facebook" = ps: with ps; [ ]; - "notify.file" = ps: with ps; [ ]; - "notify.flock" = ps: with ps; [ ]; - "notify.free_mobile" = ps: with ps; [ ]; - "notify.gntp" = ps: with ps; [ ]; - "notify.group" = ps: with ps; [ ]; - "notify.hipchat" = ps: with ps; [ ]; - "notify.html5" = ps: with ps; [ aiohttp-cors ]; - "notify.kodi" = ps: with ps; [ jsonrpc-async ]; - "notify.lannouncer" = ps: with ps; [ ]; - "notify.llamalab_automate" = ps: with ps; [ ]; - "notify.mastodon" = ps: with ps; [ ]; - "notify.message_bird" = ps: with ps; [ ]; - "notify.mycroft" = ps: with ps; [ ]; - "notify.nfandroidtv" = ps: with ps; [ ]; - "notify.prowl" = ps: with ps; [ ]; - "notify.pushbullet" = ps: with ps; [ pushbullet ]; - "notify.pushetta" = ps: with ps; [ ]; - "notify.pushover" = ps: with ps; [ python-pushover ]; - "notify.pushsafer" = ps: with ps; [ ]; - "notify.rest" = ps: with ps; [ ]; - "notify.rocketchat" = ps: with ps; [ ]; - "notify.sendgrid" = ps: with ps; [ ]; - "notify.simplepush" = ps: with ps; [ ]; - "notify.slack" = ps: with ps; [ ]; - "notify.smtp" = ps: with ps; [ ]; - "notify.stride" = ps: with ps; [ ]; - "notify.synology_chat" = ps: with ps; [ ]; - "notify.syslog" = ps: with ps; [ ]; - "notify.telegram" = ps: with ps; [ python-telegram-bot ]; - "notify.twilio_call" = ps: with ps; [ aiohttp-cors twilio ]; - "notify.twilio_sms" = ps: with ps; [ aiohttp-cors twilio ]; - "notify.twitter" = ps: with ps; [ ]; - "notify.xmpp" = ps: with ps; [ slixmpp ]; - "notify.yessssms" = ps: with ps; [ ]; + "nsw_fuel_station" = ps: with ps; [ ]; + "nsw_fuel_station.sensor" = ps: with ps; [ ]; + "nsw_rural_fire_service_feed" = ps: with ps; [ ]; + "nsw_rural_fire_service_feed.geo_location" = ps: with ps; [ ]; "nuheat" = ps: with ps; [ ]; + "nuheat.climate" = ps: with ps; [ ]; "nuimo_controller" = ps: with ps; [ ]; + "nuki" = ps: with ps; [ ]; + "nuki.lock" = ps: with ps; [ ]; + "nut" = ps: with ps; [ ]; + "nut.sensor" = ps: with ps; [ ]; + "nx584" = ps: with ps; [ ]; + "nx584.alarm_control_panel" = ps: with ps; [ ]; + "nx584.binary_sensor" = ps: with ps; [ ]; + "nzbget" = ps: with ps; [ ]; + "nzbget.sensor" = ps: with ps; [ ]; "octoprint" = ps: with ps; [ ]; "octoprint.binary_sensor" = ps: with ps; [ ]; "octoprint.sensor" = ps: with ps; [ ]; + "oem" = ps: with ps; [ ]; + "oem.climate" = ps: with ps; [ ]; + "ohmconnect" = ps: with ps; [ ]; + "ohmconnect.sensor" = ps: with ps; [ defusedxml ]; "onboarding" = ps: with ps; [ aiohttp-cors ]; "onboarding.const" = ps: with ps; [ ]; "onboarding.views" = ps: with ps; [ ]; + "onewire" = ps: with ps; [ ]; + "onewire.sensor" = ps: with ps; [ ]; + "onkyo" = ps: with ps; [ ]; + "onkyo.media_player" = ps: with ps; [ onkyo-eiscp ]; + "onvif" = ps: with ps; [ ]; + "onvif.camera" = ps: with ps; [ ha-ffmpeg ]; + "openalpr_cloud" = ps: with ps; [ ]; + "openalpr_cloud.image_processing" = ps: with ps; [ ]; + "openalpr_local" = ps: with ps; [ ]; + "openalpr_local.image_processing" = ps: with ps; [ ]; + "opencv" = ps: with ps; [ ]; + "opencv.image_processing" = ps: with ps; [ numpy ]; + "openevse" = ps: with ps; [ ]; + "openevse.sensor" = ps: with ps; [ ]; + "openexchangerates" = ps: with ps; [ ]; + "openexchangerates.sensor" = ps: with ps; [ ]; + "opengarage" = ps: with ps; [ ]; + "opengarage.cover" = ps: with ps; [ ]; + "openhardwaremonitor" = ps: with ps; [ ]; + "openhardwaremonitor.sensor" = ps: with ps; [ ]; + "openhome" = ps: with ps; [ ]; + "openhome.media_player" = ps: with ps; [ ]; + "opensensemap" = ps: with ps; [ ]; + "opensensemap.air_quality" = ps: with ps; [ ]; + "opensky" = ps: with ps; [ ]; + "opensky.sensor" = ps: with ps; [ ]; "opentherm_gw" = ps: with ps; [ ]; "opentherm_gw.binary_sensor" = ps: with ps; [ ]; "opentherm_gw.climate" = ps: with ps; [ ]; @@ -948,6 +1303,17 @@ "openuv.config_flow" = ps: with ps; [ ]; "openuv.const" = ps: with ps; [ ]; "openuv.sensor" = ps: with ps; [ ]; + "openweathermap" = ps: with ps; [ ]; + "openweathermap.sensor" = ps: with ps; [ pyowm ]; + "openweathermap.weather" = ps: with ps; [ pyowm ]; + "opple" = ps: with ps; [ ]; + "opple.light" = ps: with ps; [ ]; + "orvibo" = ps: with ps; [ ]; + "orvibo.switch" = ps: with ps; [ ]; + "osramlightify" = ps: with ps; [ ]; + "osramlightify.light" = ps: with ps; [ ]; + "otp" = ps: with ps; [ ]; + "otp.sensor" = ps: with ps; [ pyotp ]; "owlet" = ps: with ps; [ ]; "owlet.binary_sensor" = ps: with ps; [ ]; "owlet.const" = ps: with ps; [ ]; @@ -955,30 +1321,95 @@ "owntracks" = ps: with ps; [ pynacl aiohttp-cors ]; "owntracks.config_flow" = ps: with ps; [ ]; "owntracks.device_tracker" = ps: with ps; [ pynacl aiohttp-cors ]; + "panasonic_bluray" = ps: with ps; [ ]; + "panasonic_bluray.media_player" = ps: with ps; [ ]; + "panasonic_viera" = ps: with ps; [ ]; + "panasonic_viera.media_player" = ps: with ps; [ wakeonlan ]; + "pandora" = ps: with ps; [ ]; + "pandora.media_player" = ps: with ps; [ pexpect ]; "panel_custom" = ps: with ps; [ aiohttp-cors ]; "panel_iframe" = ps: with ps; [ aiohttp-cors ]; + "pencom" = ps: with ps; [ ]; + "pencom.switch" = ps: with ps; [ ]; "persistent_notification" = ps: with ps; [ ]; "person" = ps: with ps; [ ]; + "philips_js" = ps: with ps; [ ]; + "philips_js.media_player" = ps: with ps; [ ]; + "pi_hole" = ps: with ps; [ ]; + "pi_hole.sensor" = ps: with ps; [ ]; + "picotts" = ps: with ps; [ ]; + "picotts.tts" = ps: with ps; [ ]; + "piglow" = ps: with ps; [ ]; + "piglow.light" = ps: with ps; [ ]; "pilight" = ps: with ps; [ ]; "pilight.binary_sensor" = ps: with ps; [ ]; "pilight.sensor" = ps: with ps; [ ]; "pilight.switch" = ps: with ps; [ ]; + "ping" = ps: with ps; [ ]; + "ping.binary_sensor" = ps: with ps; [ ]; + "ping.device_tracker" = ps: with ps; [ ]; + "pioneer" = ps: with ps; [ ]; + "pioneer.media_player" = ps: with ps; [ ]; + "pjlink" = ps: with ps; [ ]; + "pjlink.media_player" = ps: with ps; [ ]; "plant" = ps: with ps; [ ]; + "plex" = ps: with ps; [ ]; + "plex.media_player" = ps: with ps; [ ]; + "plex.sensor" = ps: with ps; [ ]; "plum_lightpad" = ps: with ps; [ ]; "plum_lightpad.light" = ps: with ps; [ ]; + "pocketcasts" = ps: with ps; [ ]; + "pocketcasts.sensor" = ps: with ps; [ ]; "point" = ps: with ps; [ aiohttp-cors ]; "point.alarm_control_panel" = ps: with ps; [ ]; "point.binary_sensor" = ps: with ps; [ ]; "point.config_flow" = ps: with ps; [ ]; "point.const" = ps: with ps; [ ]; "point.sensor" = ps: with ps; [ ]; + "pollen" = ps: with ps; [ ]; + "pollen.sensor" = ps: with ps; [ numpy ]; + "postnl" = ps: with ps; [ ]; + "postnl.sensor" = ps: with ps; [ ]; + "prezzibenzina" = ps: with ps; [ ]; + "prezzibenzina.sensor" = ps: with ps; [ ]; + "proliphix" = ps: with ps; [ ]; + "proliphix.climate" = ps: with ps; [ ]; "prometheus" = ps: with ps; [ aiohttp-cors prometheus_client ]; + "prowl" = ps: with ps; [ ]; + "prowl.notify" = ps: with ps; [ ]; "proximity" = ps: with ps; [ ]; + "proxy" = ps: with ps; [ ]; + "proxy.camera" = ps: with ps; [ pillow ]; "ps4" = ps: with ps; [ ]; "ps4.config_flow" = ps: with ps; [ ]; "ps4.const" = ps: with ps; [ ]; "ps4.media_player" = ps: with ps; [ ]; + "pulseaudio_loopback" = ps: with ps; [ ]; + "pulseaudio_loopback.switch" = ps: with ps; [ ]; + "push" = ps: with ps; [ ]; + "push.camera" = ps: with ps; [ aiohttp-cors ]; + "pushbullet" = ps: with ps; [ ]; + "pushbullet.notify" = ps: with ps; [ pushbullet ]; + "pushbullet.sensor" = ps: with ps; [ pushbullet ]; + "pushetta" = ps: with ps; [ ]; + "pushetta.notify" = ps: with ps; [ ]; + "pushover" = ps: with ps; [ ]; + "pushover.notify" = ps: with ps; [ python-pushover ]; + "pushsafer" = ps: with ps; [ ]; + "pushsafer.notify" = ps: with ps; [ ]; + "pvoutput" = ps: with ps; [ ]; + "pvoutput.sensor" = ps: with ps; [ ]; + "pyload" = ps: with ps; [ ]; + "pyload.sensor" = ps: with ps; [ ]; "python_script" = ps: with ps; [ ]; + "qbittorrent" = ps: with ps; [ ]; + "qbittorrent.sensor" = ps: with ps; [ ]; + "qnap" = ps: with ps; [ ]; + "qnap.sensor" = ps: with ps; [ ]; + "qrcode" = ps: with ps; [ ]; + "qrcode.image_processing" = ps: with ps; [ pillow ]; + "quantum_gateway" = ps: with ps; [ ]; + "quantum_gateway.device_tracker" = ps: with ps; [ ]; "qwikswitch" = ps: with ps; [ ]; "qwikswitch.binary_sensor" = ps: with ps; [ ]; "qwikswitch.light" = ps: with ps; [ ]; @@ -987,7 +1418,13 @@ "rachio" = ps: with ps; [ ]; "rachio.binary_sensor" = ps: with ps; [ ]; "rachio.switch" = ps: with ps; [ ]; + "radarr" = ps: with ps; [ ]; + "radarr.sensor" = ps: with ps; [ ]; + "radiotherm" = ps: with ps; [ ]; + "radiotherm.climate" = ps: with ps; [ ]; "rainbird" = ps: with ps; [ ]; + "rainbird.sensor" = ps: with ps; [ ]; + "rainbird.switch" = ps: with ps; [ ]; "raincloud" = ps: with ps; [ ]; "raincloud.binary_sensor" = ps: with ps; [ ]; "raincloud.sensor" = ps: with ps; [ ]; @@ -998,20 +1435,41 @@ "rainmachine.const" = ps: with ps; [ ]; "rainmachine.sensor" = ps: with ps; [ ]; "rainmachine.switch" = ps: with ps; [ ]; + "random" = ps: with ps; [ ]; + "random.binary_sensor" = ps: with ps; [ ]; + "random.sensor" = ps: with ps; [ ]; "raspihats" = ps: with ps; [ ]; "raspihats.binary_sensor" = ps: with ps; [ ]; "raspihats.switch" = ps: with ps; [ ]; + "raspyrfm" = ps: with ps; [ ]; + "raspyrfm.switch" = ps: with ps; [ ]; + "recollect_waste" = ps: with ps; [ ]; + "recollect_waste.sensor" = ps: with ps; [ ]; "recorder" = ps: with ps; [ sqlalchemy ]; "recorder.const" = ps: with ps; [ ]; "recorder.migration" = ps: with ps; [ ]; "recorder.purge" = ps: with ps; [ ]; "recorder.util" = ps: with ps; [ ]; + "recswitch" = ps: with ps; [ ]; + "recswitch.switch" = ps: with ps; [ ]; "reddit" = ps: with ps; [ ]; "reddit.sensor" = ps: with ps; [ praw ]; + "rejseplanen" = ps: with ps; [ ]; + "rejseplanen.sensor" = ps: with ps; [ ]; "remember_the_milk" = ps: with ps; [ httplib2 ]; "remote" = ps: with ps; [ ]; + "rest" = ps: with ps; [ ]; + "rest.binary_sensor" = ps: with ps; [ ]; + "rest.notify" = ps: with ps; [ ]; + "rest.sensor" = ps: with ps; [ ]; + "rest.switch" = ps: with ps; [ ]; "rest_command" = ps: with ps; [ ]; "rflink" = ps: with ps; [ ]; + "rflink.binary_sensor" = ps: with ps; [ ]; + "rflink.cover" = ps: with ps; [ ]; + "rflink.light" = ps: with ps; [ ]; + "rflink.sensor" = ps: with ps; [ ]; + "rflink.switch" = ps: with ps; [ ]; "rfxtrx" = ps: with ps; [ ]; "rfxtrx.binary_sensor" = ps: with ps; [ ]; "rfxtrx.cover" = ps: with ps; [ ]; @@ -1019,280 +1477,122 @@ "rfxtrx.sensor" = ps: with ps; [ ]; "rfxtrx.switch" = ps: with ps; [ ]; "ring" = ps: with ps; [ ]; + "ring.binary_sensor" = ps: with ps; [ ]; + "ring.camera" = ps: with ps; [ ha-ffmpeg ]; + "ring.sensor" = ps: with ps; [ ]; + "ripple" = ps: with ps; [ ]; + "ripple.sensor" = ps: with ps; [ ]; + "ritassist" = ps: with ps; [ ]; + "ritassist.device_tracker" = ps: with ps; [ ]; + "rmvtransport" = ps: with ps; [ ]; + "rmvtransport.sensor" = ps: with ps; [ ]; + "rocketchat" = ps: with ps; [ ]; + "rocketchat.notify" = ps: with ps; [ ]; "roku" = ps: with ps; [ ]; "roku.media_player" = ps: with ps; [ ]; "roku.remote" = ps: with ps; [ ]; + "roomba" = ps: with ps; [ ]; + "roomba.vacuum" = ps: with ps; [ ]; "route53" = ps: with ps; [ boto3 ]; + "rova" = ps: with ps; [ ]; + "rova.sensor" = ps: with ps; [ ]; + "rpi_camera" = ps: with ps; [ ]; + "rpi_camera.camera" = ps: with ps; [ ]; "rpi_gpio" = ps: with ps; [ ]; "rpi_gpio.binary_sensor" = ps: with ps; [ ]; "rpi_gpio.cover" = ps: with ps; [ ]; "rpi_gpio.switch" = ps: with ps; [ ]; + "rpi_gpio_pwm" = ps: with ps; [ ]; + "rpi_gpio_pwm.light" = ps: with ps; [ ]; "rpi_pfio" = ps: with ps; [ ]; "rpi_pfio.binary_sensor" = ps: with ps; [ ]; "rpi_pfio.switch" = ps: with ps; [ ]; + "rpi_rf" = ps: with ps; [ ]; + "rpi_rf.switch" = ps: with ps; [ ]; "rss_feed_template" = ps: with ps; [ aiohttp-cors ]; + "rtorrent" = ps: with ps; [ ]; + "rtorrent.sensor" = ps: with ps; [ ]; + "russound_rio" = ps: with ps; [ ]; + "russound_rio.media_player" = ps: with ps; [ ]; + "russound_rnet" = ps: with ps; [ ]; + "russound_rnet.media_player" = ps: with ps; [ ]; + "ruter" = ps: with ps; [ ]; + "ruter.sensor" = ps: with ps; [ ]; "sabnzbd" = ps: with ps; [ ]; "sabnzbd.sensor" = ps: with ps; [ ]; + "samsungtv" = ps: with ps; [ ]; + "samsungtv.media_player" = ps: with ps; [ wakeonlan ]; "satel_integra" = ps: with ps; [ ]; "satel_integra.alarm_control_panel" = ps: with ps; [ ]; "satel_integra.binary_sensor" = ps: with ps; [ ]; "scene" = ps: with ps; [ ]; - "scene.homeassistant" = ps: with ps; [ ]; - "scene.hunterdouglas_powerview" = ps: with ps; [ ]; - "scene.lifx_cloud" = ps: with ps; [ ]; - "scene.litejet" = ps: with ps; [ ]; + "scrape" = ps: with ps; [ ]; + "scrape.sensor" = ps: with ps; [ beautifulsoup4 ]; "script" = ps: with ps; [ ]; "scsgate" = ps: with ps; [ ]; "scsgate.cover" = ps: with ps; [ ]; "scsgate.light" = ps: with ps; [ ]; "scsgate.switch" = ps: with ps; [ ]; + "season" = ps: with ps; [ ]; + "season.sensor" = ps: with ps; [ ephem ]; + "sendgrid" = ps: with ps; [ ]; + "sendgrid.notify" = ps: with ps; [ ]; "sense" = ps: with ps; [ ]; "sense.binary_sensor" = ps: with ps; [ ]; "sense.sensor" = ps: with ps; [ ]; + "sensehat" = ps: with ps; [ ]; + "sensehat.light" = ps: with ps; [ ]; + "sensehat.sensor" = ps: with ps; [ ]; + "sensibo" = ps: with ps; [ ]; + "sensibo.climate" = ps: with ps; [ ]; "sensor" = ps: with ps; [ ]; - "sensor.aftership" = ps: with ps; [ ]; - "sensor.airvisual" = ps: with ps; [ pyairvisual ]; - "sensor.alpha_vantage" = ps: with ps; [ ]; - "sensor.api_streams" = ps: with ps; [ ]; - "sensor.arest" = ps: with ps; [ ]; - "sensor.arwn" = ps: with ps; [ paho-mqtt ]; - "sensor.asuswrt" = ps: with ps; [ ]; - "sensor.awair" = ps: with ps; [ ]; - "sensor.bbox" = ps: with ps; [ ]; - "sensor.bh1750" = ps: with ps; [ ]; - "sensor.bitcoin" = ps: with ps; [ ]; - "sensor.blockchain" = ps: with ps; [ ]; - "sensor.bme280" = ps: with ps; [ ]; - "sensor.bme680" = ps: with ps; [ ]; - "sensor.bom" = ps: with ps; [ ]; - "sensor.broadlink" = ps: with ps; [ broadlink ]; - "sensor.brottsplatskartan" = ps: with ps; [ ]; - "sensor.buienradar" = ps: with ps; [ ]; - "sensor.canary" = ps: with ps; [ ]; - "sensor.cert_expiry" = ps: with ps; [ ]; - "sensor.citybikes" = ps: with ps; [ ]; - "sensor.co2signal" = ps: with ps; [ ]; - "sensor.coinbase" = ps: with ps; [ ]; - "sensor.coinmarketcap" = ps: with ps; [ coinmarketcap ]; - "sensor.comed_hourly_pricing" = ps: with ps; [ ]; - "sensor.command_line" = ps: with ps; [ ]; - "sensor.cpuspeed" = ps: with ps; [ py-cpuinfo ]; - "sensor.crimereports" = ps: with ps; [ ]; - "sensor.cups" = ps: with ps; [ pycups ]; - "sensor.currencylayer" = ps: with ps; [ ]; - "sensor.darksky" = ps: with ps; [ python-forecastio ]; - "sensor.deluge" = ps: with ps; [ deluge-client ]; - "sensor.demo" = ps: with ps; [ ]; - "sensor.deutsche_bahn" = ps: with ps; [ ]; - "sensor.dht" = ps: with ps; [ ]; - "sensor.discogs" = ps: with ps; [ discogs_client ]; - "sensor.dnsip" = ps: with ps; [ aiodns ]; - "sensor.dsmr" = ps: with ps; [ ]; - "sensor.dte_energy_bridge" = ps: with ps; [ ]; - "sensor.dublin_bus_transport" = ps: with ps; [ ]; - "sensor.duke_energy" = ps: with ps; [ ]; - "sensor.dwd_weather_warnings" = ps: with ps; [ ]; - "sensor.dyson" = ps: with ps; [ ]; - "sensor.ebox" = ps: with ps; [ ]; - "sensor.eddystone_temperature" = ps: with ps; [ construct ]; - "sensor.efergy" = ps: with ps; [ ]; - "sensor.eliqonline" = ps: with ps; [ ]; - "sensor.emoncms" = ps: with ps; [ ]; - "sensor.enphase_envoy" = ps: with ps; [ ]; - "sensor.entur_public_transport" = ps: with ps; [ ]; - "sensor.envirophat" = ps: with ps; [ ]; - "sensor.etherscan" = ps: with ps; [ ]; - "sensor.fail2ban" = ps: with ps; [ ]; - "sensor.fedex" = ps: with ps; [ ]; - "sensor.fido" = ps: with ps; [ ]; - "sensor.file" = ps: with ps; [ ]; - "sensor.filesize" = ps: with ps; [ ]; - "sensor.filter" = ps: with ps; [ ]; - "sensor.fints" = ps: with ps; [ fints ]; - "sensor.fitbit" = ps: with ps; [ aiohttp-cors ]; - "sensor.fixer" = ps: with ps; [ ]; - "sensor.flunearyou" = ps: with ps; [ ]; - "sensor.folder" = ps: with ps; [ ]; - "sensor.foobot" = ps: with ps; [ ]; - "sensor.fritzbox_callmonitor" = ps: with ps; [ fritzconnection ]; - "sensor.fritzbox_netmonitor" = ps: with ps; [ fritzconnection ]; - "sensor.gearbest" = ps: with ps; [ ]; - "sensor.geizhals" = ps: with ps; [ ]; - "sensor.geo_rss_events" = ps: with ps; [ ]; - "sensor.github" = ps: with ps; [ PyGithub ]; - "sensor.gitlab_ci" = ps: with ps; [ python-gitlab ]; - "sensor.gitter" = ps: with ps; [ ]; - "sensor.glances" = ps: with ps; [ ]; - "sensor.google_travel_time" = ps: with ps; [ ]; - "sensor.google_wifi" = ps: with ps; [ ]; - "sensor.gpsd" = ps: with ps; [ ]; - "sensor.greeneye_monitor" = ps: with ps; [ ]; - "sensor.gtfs" = ps: with ps; [ ]; - "sensor.gtt" = ps: with ps; [ ]; - "sensor.haveibeenpwned" = ps: with ps; [ ]; - "sensor.hddtemp" = ps: with ps; [ ]; - "sensor.history_stats" = ps: with ps; [ aiohttp-cors sqlalchemy ]; - "sensor.hp_ilo" = ps: with ps; [ ]; - "sensor.htu21d" = ps: with ps; [ ]; - "sensor.hydroquebec" = ps: with ps; [ ]; - "sensor.iliad_italy" = ps: with ps; [ ]; - "sensor.imap" = ps: with ps; [ ]; - "sensor.imap_email_content" = ps: with ps; [ ]; - "sensor.influxdb" = ps: with ps; [ influxdb ]; - "sensor.integration" = ps: with ps; [ ]; - "sensor.irish_rail_transport" = ps: with ps; [ ]; - "sensor.islamic_prayer_times" = ps: with ps; [ ]; - "sensor.jewish_calendar" = ps: with ps; [ ]; - "sensor.kwb" = ps: with ps; [ ]; - "sensor.lacrosse" = ps: with ps; [ ]; - "sensor.lastfm" = ps: with ps; [ pylast ]; - "sensor.launch_library" = ps: with ps; [ ]; - "sensor.linky" = ps: with ps; [ ]; - "sensor.linux_battery" = ps: with ps; [ batinfo ]; - "sensor.london_air" = ps: with ps; [ ]; - "sensor.london_underground" = ps: with ps; [ ]; - "sensor.loopenergy" = ps: with ps; [ ]; - "sensor.lyft" = ps: with ps; [ ]; - "sensor.magicseaweed" = ps: with ps; [ ]; - "sensor.metoffice" = ps: with ps; [ ]; - "sensor.mfi" = ps: with ps; [ ]; - "sensor.mhz19" = ps: with ps; [ ]; - "sensor.miflora" = ps: with ps; [ ]; - "sensor.min_max" = ps: with ps; [ ]; - "sensor.mitemp_bt" = ps: with ps; [ ]; - "sensor.modem_callerid" = ps: with ps; [ ]; - "sensor.mold_indicator" = ps: with ps; [ ]; - "sensor.moon" = ps: with ps; [ ]; - "sensor.mopar" = ps: with ps; [ ]; - "sensor.mqtt_room" = ps: with ps; [ paho-mqtt ]; - "sensor.mvglive" = ps: with ps; [ PyMVGLive ]; - "sensor.nederlandse_spoorwegen" = ps: with ps; [ ]; - "sensor.netatmo_public" = ps: with ps; [ aiohttp-cors ]; - "sensor.netdata" = ps: with ps; [ ]; - "sensor.neurio_energy" = ps: with ps; [ ]; - "sensor.nmbs" = ps: with ps; [ ]; - "sensor.noaa_tides" = ps: with ps; [ ]; - "sensor.nsw_fuel_station" = ps: with ps; [ ]; - "sensor.nut" = ps: with ps; [ ]; - "sensor.nzbget" = ps: with ps; [ ]; - "sensor.ohmconnect" = ps: with ps; [ defusedxml ]; - "sensor.onewire" = ps: with ps; [ ]; - "sensor.openevse" = ps: with ps; [ ]; - "sensor.openexchangerates" = ps: with ps; [ ]; - "sensor.openhardwaremonitor" = ps: with ps; [ ]; - "sensor.opensky" = ps: with ps; [ ]; - "sensor.openweathermap" = ps: with ps; [ pyowm ]; - "sensor.otp" = ps: with ps; [ pyotp ]; - "sensor.pi_hole" = ps: with ps; [ ]; - "sensor.plex" = ps: with ps; [ ]; - "sensor.pocketcasts" = ps: with ps; [ ]; - "sensor.pollen" = ps: with ps; [ numpy ]; - "sensor.postnl" = ps: with ps; [ ]; - "sensor.prezzibenzina" = ps: with ps; [ ]; - "sensor.pushbullet" = ps: with ps; [ pushbullet ]; - "sensor.pvoutput" = ps: with ps; [ ]; - "sensor.pyload" = ps: with ps; [ ]; - "sensor.qbittorrent" = ps: with ps; [ ]; - "sensor.qnap" = ps: with ps; [ ]; - "sensor.radarr" = ps: with ps; [ ]; - "sensor.rainbird" = ps: with ps; [ ]; - "sensor.random" = ps: with ps; [ ]; - "sensor.recollect_waste" = ps: with ps; [ ]; - "sensor.rejseplanen" = ps: with ps; [ ]; - "sensor.rest" = ps: with ps; [ ]; - "sensor.rflink" = ps: with ps; [ ]; - "sensor.ring" = ps: with ps; [ ]; - "sensor.ripple" = ps: with ps; [ ]; - "sensor.rmvtransport" = ps: with ps; [ ]; - "sensor.rova" = ps: with ps; [ ]; - "sensor.rtorrent" = ps: with ps; [ ]; - "sensor.ruter" = ps: with ps; [ ]; - "sensor.scrape" = ps: with ps; [ beautifulsoup4 ]; - "sensor.season" = ps: with ps; [ ephem ]; - "sensor.sensehat" = ps: with ps; [ ]; - "sensor.serial" = ps: with ps; [ ]; - "sensor.serial_pm" = ps: with ps; [ ]; - "sensor.seventeentrack" = ps: with ps; [ ]; - "sensor.shodan" = ps: with ps; [ shodan ]; - "sensor.sht31" = ps: with ps; [ ]; - "sensor.sigfox" = ps: with ps; [ ]; - "sensor.simulated" = ps: with ps; [ ]; - "sensor.skybeacon" = ps: with ps; [ ]; - "sensor.sleepiq" = ps: with ps; [ ]; - "sensor.sma" = ps: with ps; [ ]; - "sensor.snmp" = ps: with ps; [ pysnmp ]; - "sensor.sochain" = ps: with ps; [ ]; - "sensor.socialblade" = ps: with ps; [ ]; - "sensor.solaredge" = ps: with ps; [ ]; - "sensor.sonarr" = ps: with ps; [ ]; - "sensor.spotcrime" = ps: with ps; [ ]; - "sensor.sql" = ps: with ps; [ sqlalchemy ]; - "sensor.srp_energy" = ps: with ps; [ ]; - "sensor.starlingbank" = ps: with ps; [ ]; - "sensor.startca" = ps: with ps; [ xmltodict ]; - "sensor.statistics" = ps: with ps; [ ]; - "sensor.steam_online" = ps: with ps; [ ]; - "sensor.supervisord" = ps: with ps; [ ]; - "sensor.swiss_hydrological_data" = ps: with ps; [ ]; - "sensor.swiss_public_transport" = ps: with ps; [ ]; - "sensor.syncthru" = ps: with ps; [ ]; - "sensor.synologydsm" = ps: with ps; [ ]; - "sensor.systemmonitor" = ps: with ps; [ psutil ]; - "sensor.sytadin" = ps: with ps; [ beautifulsoup4 ]; - "sensor.tank_utility" = ps: with ps; [ ]; - "sensor.tautulli" = ps: with ps; [ ]; - "sensor.tcp" = ps: with ps; [ ]; - "sensor.ted5000" = ps: with ps; [ xmltodict ]; - "sensor.teksavvy" = ps: with ps; [ ]; - "sensor.temper" = ps: with ps; [ ]; - "sensor.template" = ps: with ps; [ ]; - "sensor.thermoworks_smoke" = ps: with ps; [ ]; - "sensor.time_date" = ps: with ps; [ ]; - "sensor.torque" = ps: with ps; [ aiohttp-cors ]; - "sensor.trafikverket_weatherstation" = ps: with ps; [ ]; - "sensor.transport_nsw" = ps: with ps; [ ]; - "sensor.travisci" = ps: with ps; [ ]; - "sensor.twitch" = ps: with ps; [ ]; - "sensor.uber" = ps: with ps; [ ]; - "sensor.uk_transport" = ps: with ps; [ ]; - "sensor.ups" = ps: with ps; [ ]; - "sensor.uptime" = ps: with ps; [ ]; - "sensor.uscis" = ps: with ps; [ ]; - "sensor.vasttrafik" = ps: with ps; [ ]; - "sensor.version" = ps: with ps; [ ]; - "sensor.viaggiatreno" = ps: with ps; [ ]; - "sensor.volkszaehler" = ps: with ps; [ ]; - "sensor.vultr" = ps: with ps; [ vultr ]; - "sensor.waqi" = ps: with ps; [ ]; - "sensor.waze_travel_time" = ps: with ps; [ WazeRouteCalculator ]; - "sensor.whois" = ps: with ps; [ ]; - "sensor.worldclock" = ps: with ps; [ ]; - "sensor.worldtidesinfo" = ps: with ps; [ ]; - "sensor.worxlandroid" = ps: with ps; [ ]; - "sensor.wsdot" = ps: with ps; [ ]; - "sensor.wunderground" = ps: with ps; [ ]; - "sensor.xbox_live" = ps: with ps; [ ]; - "sensor.yr" = ps: with ps; [ xmltodict ]; - "sensor.yweather" = ps: with ps; [ yahooweather ]; - "sensor.zamg" = ps: with ps; [ ]; - "sensor.zestimate" = ps: with ps; [ xmltodict ]; + "serial" = ps: with ps; [ ]; + "serial.sensor" = ps: with ps; [ ]; + "serial_pm" = ps: with ps; [ ]; + "serial_pm.sensor" = ps: with ps; [ ]; + "sesame" = ps: with ps; [ ]; + "sesame.lock" = ps: with ps; [ ]; + "seven_segments" = ps: with ps; [ ]; + "seven_segments.image_processing" = ps: with ps; [ ]; + "seventeentrack" = ps: with ps; [ ]; + "seventeentrack.sensor" = ps: with ps; [ ]; "shell_command" = ps: with ps; [ ]; "shiftr" = ps: with ps; [ paho-mqtt ]; + "shodan" = ps: with ps; [ ]; + "shodan.sensor" = ps: with ps; [ shodan ]; "shopping_list" = ps: with ps; [ aiohttp-cors ]; + "sht31" = ps: with ps; [ ]; + "sht31.sensor" = ps: with ps; [ ]; + "sigfox" = ps: with ps; [ ]; + "sigfox.sensor" = ps: with ps; [ ]; + "simplepush" = ps: with ps; [ ]; + "simplepush.notify" = ps: with ps; [ ]; "simplisafe" = ps: with ps; [ ]; "simplisafe.alarm_control_panel" = ps: with ps; [ ]; "simplisafe.config_flow" = ps: with ps; [ ]; "simplisafe.const" = ps: with ps; [ ]; + "simulated" = ps: with ps; [ ]; + "simulated.sensor" = ps: with ps; [ ]; "sisyphus" = ps: with ps; [ ]; "sisyphus.light" = ps: with ps; [ ]; "sisyphus.media_player" = ps: with ps; [ ]; + "sky_hub" = ps: with ps; [ ]; + "sky_hub.device_tracker" = ps: with ps; [ ]; + "skybeacon" = ps: with ps; [ ]; + "skybeacon.sensor" = ps: with ps; [ ]; "skybell" = ps: with ps; [ ]; "skybell.binary_sensor" = ps: with ps; [ ]; "skybell.camera" = ps: with ps; [ ]; "skybell.light" = ps: with ps; [ ]; "skybell.sensor" = ps: with ps; [ ]; "skybell.switch" = ps: with ps; [ ]; + "slack" = ps: with ps; [ ]; + "slack.notify" = ps: with ps; [ ]; "sleepiq" = ps: with ps; [ ]; + "sleepiq.binary_sensor" = ps: with ps; [ ]; + "sleepiq.sensor" = ps: with ps; [ ]; + "sma" = ps: with ps; [ ]; + "sma.sensor" = ps: with ps; [ ]; "smappee" = ps: with ps; [ ]; "smappee.sensor" = ps: with ps; [ ]; "smappee.switch" = ps: with ps; [ ]; @@ -1313,11 +1613,35 @@ "smhi.config_flow" = ps: with ps; [ ]; "smhi.const" = ps: with ps; [ ]; "smhi.weather" = ps: with ps; [ ]; + "smtp" = ps: with ps; [ ]; + "smtp.notify" = ps: with ps; [ ]; + "snapcast" = ps: with ps; [ ]; + "snapcast.media_player" = ps: with ps; [ snapcast ]; "snips" = ps: with ps; [ paho-mqtt ]; + "snmp" = ps: with ps; [ ]; + "snmp.device_tracker" = ps: with ps; [ pysnmp ]; + "snmp.sensor" = ps: with ps; [ pysnmp ]; + "snmp.switch" = ps: with ps; [ pysnmp ]; + "sochain" = ps: with ps; [ ]; + "sochain.sensor" = ps: with ps; [ ]; + "socialblade" = ps: with ps; [ ]; + "socialblade.sensor" = ps: with ps; [ ]; + "solaredge" = ps: with ps; [ ]; + "solaredge.sensor" = ps: with ps; [ ]; + "sonarr" = ps: with ps; [ ]; + "sonarr.sensor" = ps: with ps; [ ]; + "songpal" = ps: with ps; [ ]; + "songpal.media_player" = ps: with ps; [ ]; "sonos" = ps: with ps; [ ]; "sonos.media_player" = ps: with ps; [ ]; + "sony_projector" = ps: with ps; [ ]; + "sony_projector.switch" = ps: with ps; [ ]; + "soundtouch" = ps: with ps; [ ]; + "soundtouch.media_player" = ps: with ps; [ libsoundtouch ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; "spc" = ps: with ps; [ ]; + "spc.alarm_control_panel" = ps: with ps; [ ]; + "spc.binary_sensor" = ps: with ps; [ ]; "speedtestdotnet" = ps: with ps; [ speedtest-cli ]; "speedtestdotnet.const" = ps: with ps; [ ]; "speedtestdotnet.sensor" = ps: with ps; [ speedtest-cli ]; @@ -1325,53 +1649,66 @@ "spider.climate" = ps: with ps; [ ]; "spider.switch" = ps: with ps; [ ]; "splunk" = ps: with ps; [ ]; + "spotcrime" = ps: with ps; [ ]; + "spotcrime.sensor" = ps: with ps; [ ]; + "spotify" = ps: with ps; [ ]; + "spotify.media_player" = ps: with ps; [ aiohttp-cors ]; + "sql" = ps: with ps; [ ]; + "sql.sensor" = ps: with ps; [ sqlalchemy ]; + "squeezebox" = ps: with ps; [ ]; + "squeezebox.media_player" = ps: with ps; [ ]; + "srp_energy" = ps: with ps; [ ]; + "srp_energy.sensor" = ps: with ps; [ ]; + "starlingbank" = ps: with ps; [ ]; + "starlingbank.sensor" = ps: with ps; [ ]; + "startca" = ps: with ps; [ ]; + "startca.sensor" = ps: with ps; [ xmltodict ]; + "statistics" = ps: with ps; [ ]; + "statistics.sensor" = ps: with ps; [ ]; "statsd" = ps: with ps; [ statsd ]; + "steam_online" = ps: with ps; [ ]; + "steam_online.sensor" = ps: with ps; [ ]; "stream" = ps: with ps; [ aiohttp-cors av ]; "stream.const" = ps: with ps; [ ]; "stream.core" = ps: with ps; [ ]; "stream.hls" = ps: with ps; [ ]; + "stream.recorder" = ps: with ps; [ ]; "stream.worker" = ps: with ps; [ ]; + "stride" = ps: with ps; [ ]; + "stride.notify" = ps: with ps; [ ]; "sun" = ps: with ps; [ ]; + "supervisord" = ps: with ps; [ ]; + "supervisord.sensor" = ps: with ps; [ ]; + "swiss_hydrological_data" = ps: with ps; [ ]; + "swiss_hydrological_data.sensor" = ps: with ps; [ ]; + "swiss_public_transport" = ps: with ps; [ ]; + "swiss_public_transport.sensor" = ps: with ps; [ ]; + "swisscom" = ps: with ps; [ ]; + "swisscom.device_tracker" = ps: with ps; [ ]; "switch" = ps: with ps; [ ]; - "switch.acer_projector" = ps: with ps; [ pyserial ]; - "switch.anel_pwrctrl" = ps: with ps; [ ]; - "switch.arest" = ps: with ps; [ ]; - "switch.broadlink" = ps: with ps; [ broadlink ]; - "switch.command_line" = ps: with ps; [ ]; - "switch.deluge" = ps: with ps; [ deluge-client ]; - "switch.demo" = ps: with ps; [ ]; - "switch.digitalloggers" = ps: with ps; [ ]; - "switch.dlink" = ps: with ps; [ ]; - "switch.edimax" = ps: with ps; [ ]; - "switch.flux" = ps: with ps; [ ]; - "switch.fritzdect" = ps: with ps; [ ]; - "switch.hikvisioncam" = ps: with ps; [ ]; - "switch.hook" = ps: with ps; [ ]; - "switch.kankun" = ps: with ps; [ ]; - "switch.litejet" = ps: with ps; [ ]; - "switch.mfi" = ps: with ps; [ ]; - "switch.mystrom" = ps: with ps; [ ]; - "switch.netio" = ps: with ps; [ aiohttp-cors ]; - "switch.orvibo" = ps: with ps; [ ]; - "switch.pencom" = ps: with ps; [ ]; - "switch.pulseaudio_loopback" = ps: with ps; [ ]; - "switch.rainbird" = ps: with ps; [ ]; - "switch.raspyrfm" = ps: with ps; [ ]; - "switch.recswitch" = ps: with ps; [ ]; - "switch.rest" = ps: with ps; [ ]; - "switch.rflink" = ps: with ps; [ ]; - "switch.rpi_rf" = ps: with ps; [ ]; - "switch.snmp" = ps: with ps; [ pysnmp ]; - "switch.sony_projector" = ps: with ps; [ ]; - "switch.switchbot" = ps: with ps; [ ]; - "switch.switchmate" = ps: with ps; [ ]; - "switch.telnet" = ps: with ps; [ ]; - "switch.template" = ps: with ps; [ ]; - "switch.vesync" = ps: with ps; [ ]; - "switch.vultr" = ps: with ps; [ vultr ]; - "switch.wake_on_lan" = ps: with ps; [ wakeonlan ]; + "switch.light" = ps: with ps; [ ]; + "switchbot" = ps: with ps; [ ]; + "switchbot.switch" = ps: with ps; [ ]; + "switchmate" = ps: with ps; [ ]; + "switchmate.switch" = ps: with ps; [ ]; + "syncthru" = ps: with ps; [ ]; + "syncthru.sensor" = ps: with ps; [ ]; + "synology" = ps: with ps; [ ]; + "synology.camera" = ps: with ps; [ ]; + "synology_chat" = ps: with ps; [ ]; + "synology_chat.notify" = ps: with ps; [ ]; + "synology_srm" = ps: with ps; [ ]; + "synology_srm.device_tracker" = ps: with ps; [ ]; + "synologydsm" = ps: with ps; [ ]; + "synologydsm.sensor" = ps: with ps; [ ]; + "syslog" = ps: with ps; [ ]; + "syslog.notify" = ps: with ps; [ ]; "system_health" = ps: with ps; [ aiohttp-cors ]; "system_log" = ps: with ps; [ aiohttp-cors ]; + "systemmonitor" = ps: with ps; [ ]; + "systemmonitor.sensor" = ps: with ps; [ psutil ]; + "sytadin" = ps: with ps; [ ]; + "sytadin.sensor" = ps: with ps; [ beautifulsoup4 ]; "tado" = ps: with ps; [ ]; "tado.climate" = ps: with ps; [ ]; "tado.device_tracker" = ps: with ps; [ ]; @@ -1382,6 +1719,21 @@ "tahoma.scene" = ps: with ps; [ ]; "tahoma.sensor" = ps: with ps; [ ]; "tahoma.switch" = ps: with ps; [ ]; + "tank_utility" = ps: with ps; [ ]; + "tank_utility.sensor" = ps: with ps; [ ]; + "tapsaff" = ps: with ps; [ ]; + "tapsaff.binary_sensor" = ps: with ps; [ ]; + "tautulli" = ps: with ps; [ ]; + "tautulli.sensor" = ps: with ps; [ ]; + "tcp" = ps: with ps; [ ]; + "tcp.binary_sensor" = ps: with ps; [ ]; + "tcp.sensor" = ps: with ps; [ ]; + "ted5000" = ps: with ps; [ ]; + "ted5000.sensor" = ps: with ps; [ xmltodict ]; + "teksavvy" = ps: with ps; [ ]; + "teksavvy.sensor" = ps: with ps; [ ]; + "telegram" = ps: with ps; [ ]; + "telegram.notify" = ps: with ps; [ python-telegram-bot ]; "telegram_bot" = ps: with ps; [ python-telegram-bot ]; "telegram_bot.broadcast" = ps: with ps; [ ]; "telegram_bot.polling" = ps: with ps; [ ]; @@ -1400,6 +1752,20 @@ "tellstick.light" = ps: with ps; [ ]; "tellstick.sensor" = ps: with ps; [ ]; "tellstick.switch" = ps: with ps; [ ]; + "telnet" = ps: with ps; [ ]; + "telnet.switch" = ps: with ps; [ ]; + "temper" = ps: with ps; [ ]; + "temper.sensor" = ps: with ps; [ ]; + "template" = ps: with ps; [ ]; + "template.binary_sensor" = ps: with ps; [ ]; + "template.cover" = ps: with ps; [ ]; + "template.fan" = ps: with ps; [ ]; + "template.light" = ps: with ps; [ ]; + "template.lock" = ps: with ps; [ ]; + "template.sensor" = ps: with ps; [ ]; + "template.switch" = ps: with ps; [ ]; + "tensorflow" = ps: with ps; [ ]; + "tensorflow.image_processing" = ps: with ps; [ numpy pillow protobuf ]; "tesla" = ps: with ps; [ ]; "tesla.binary_sensor" = ps: with ps; [ ]; "tesla.climate" = ps: with ps; [ ]; @@ -1407,47 +1773,78 @@ "tesla.lock" = ps: with ps; [ ]; "tesla.sensor" = ps: with ps; [ ]; "tesla.switch" = ps: with ps; [ ]; + "tfiac" = ps: with ps; [ ]; + "tfiac.climate" = ps: with ps; [ ]; + "thermoworks_smoke" = ps: with ps; [ ]; + "thermoworks_smoke.sensor" = ps: with ps; [ ]; "thethingsnetwork" = ps: with ps; [ ]; "thethingsnetwork.sensor" = ps: with ps; [ ]; "thingspeak" = ps: with ps; [ ]; "thinkingcleaner" = ps: with ps; [ ]; "thinkingcleaner.sensor" = ps: with ps; [ ]; "thinkingcleaner.switch" = ps: with ps; [ ]; + "thomson" = ps: with ps; [ ]; + "thomson.device_tracker" = ps: with ps; [ ]; + "threshold" = ps: with ps; [ ]; + "threshold.binary_sensor" = ps: with ps; [ ]; "tibber" = ps: with ps; [ ]; "tibber.notify" = ps: with ps; [ ]; "tibber.sensor" = ps: with ps; [ ]; + "tikteck" = ps: with ps; [ ]; + "tikteck.light" = ps: with ps; [ ]; + "tile" = ps: with ps; [ ]; + "tile.device_tracker" = ps: with ps; [ ]; + "time_date" = ps: with ps; [ ]; + "time_date.sensor" = ps: with ps; [ ]; "timer" = ps: with ps; [ ]; + "tod" = ps: with ps; [ ]; + "tod.binary_sensor" = ps: with ps; [ ]; + "todoist" = ps: with ps; [ ]; + "todoist.calendar" = ps: with ps; [ todoist ]; "tof" = ps: with ps; [ ]; "tof.sensor" = ps: with ps; [ ]; + "tomato" = ps: with ps; [ ]; + "tomato.device_tracker" = ps: with ps; [ ]; "toon" = ps: with ps; [ ]; "toon.binary_sensor" = ps: with ps; [ ]; "toon.climate" = ps: with ps; [ ]; "toon.config_flow" = ps: with ps; [ ]; "toon.const" = ps: with ps; [ ]; "toon.sensor" = ps: with ps; [ ]; + "torque" = ps: with ps; [ ]; + "torque.sensor" = ps: with ps; [ aiohttp-cors ]; + "totalconnect" = ps: with ps; [ ]; + "totalconnect.alarm_control_panel" = ps: with ps; [ ]; + "touchline" = ps: with ps; [ ]; + "touchline.climate" = ps: with ps; [ ]; "tplink" = ps: with ps; [ ]; + "tplink.device_tracker" = ps: with ps; [ ]; "tplink.light" = ps: with ps; [ ]; "tplink.switch" = ps: with ps; [ ]; "tplink_lte" = ps: with ps; [ ]; "tplink_lte.notify" = ps: with ps; [ ]; + "traccar" = ps: with ps; [ ]; + "traccar.device_tracker" = ps: with ps; [ ]; + "trackr" = ps: with ps; [ ]; + "trackr.device_tracker" = ps: with ps; [ ]; "tradfri" = ps: with ps; [ ]; "tradfri.config_flow" = ps: with ps; [ ]; "tradfri.const" = ps: with ps; [ ]; "tradfri.light" = ps: with ps; [ ]; "tradfri.sensor" = ps: with ps; [ ]; "tradfri.switch" = ps: with ps; [ ]; + "trafikverket_weatherstation" = ps: with ps; [ ]; + "trafikverket_weatherstation.sensor" = ps: with ps; [ ]; "transmission" = ps: with ps; [ transmissionrpc ]; "transmission.sensor" = ps: with ps; [ transmissionrpc ]; "transmission.switch" = ps: with ps; [ transmissionrpc ]; + "transport_nsw" = ps: with ps; [ ]; + "transport_nsw.sensor" = ps: with ps; [ ]; + "travisci" = ps: with ps; [ ]; + "travisci.sensor" = ps: with ps; [ ]; + "trend" = ps: with ps; [ ]; + "trend.binary_sensor" = ps: with ps; [ numpy ]; "tts" = ps: with ps; [ aiohttp-cors mutagen ]; - "tts.amazon_polly" = ps: with ps; [ boto3 ]; - "tts.baidu" = ps: with ps; [ ]; - "tts.demo" = ps: with ps; [ ]; - "tts.marytts" = ps: with ps; [ ]; - "tts.microsoft" = ps: with ps; [ ]; - "tts.picotts" = ps: with ps; [ ]; - "tts.voicerss" = ps: with ps; [ ]; - "tts.yandextts" = ps: with ps; [ ]; "tuya" = ps: with ps; [ ]; "tuya.climate" = ps: with ps; [ ]; "tuya.cover" = ps: with ps; [ ]; @@ -1456,11 +1853,36 @@ "tuya.scene" = ps: with ps; [ ]; "tuya.switch" = ps: with ps; [ ]; "twilio" = ps: with ps; [ aiohttp-cors twilio ]; + "twilio_call" = ps: with ps; [ ]; + "twilio_call.notify" = ps: with ps; [ aiohttp-cors twilio ]; + "twilio_sms" = ps: with ps; [ ]; + "twilio_sms.notify" = ps: with ps; [ aiohttp-cors twilio ]; + "twitch" = ps: with ps; [ ]; + "twitch.sensor" = ps: with ps; [ ]; + "twitter" = ps: with ps; [ ]; + "twitter.notify" = ps: with ps; [ ]; + "ubee" = ps: with ps; [ ]; + "ubee.device_tracker" = ps: with ps; [ ]; + "uber" = ps: with ps; [ ]; + "uber.sensor" = ps: with ps; [ ]; + "ubus" = ps: with ps; [ ]; + "ubus.device_tracker" = ps: with ps; [ ]; + "ue_smart_radio" = ps: with ps; [ ]; + "ue_smart_radio.media_player" = ps: with ps; [ ]; + "uk_transport" = ps: with ps; [ ]; + "uk_transport.sensor" = ps: with ps; [ ]; "unifi" = ps: with ps; [ aiounifi ]; "unifi.const" = ps: with ps; [ ]; "unifi.controller" = ps: with ps; [ ]; + "unifi.device_tracker" = ps: with ps; [ pyunifi ]; "unifi.errors" = ps: with ps; [ ]; "unifi.switch" = ps: with ps; [ aiounifi ]; + "unifi_direct" = ps: with ps; [ ]; + "unifi_direct.device_tracker" = ps: with ps; [ pexpect ]; + "universal" = ps: with ps; [ ]; + "universal.media_player" = ps: with ps; [ ]; + "upc_connect" = ps: with ps; [ ]; + "upc_connect.device_tracker" = ps: with ps; [ defusedxml ]; "upcloud" = ps: with ps; [ ]; "upcloud.binary_sensor" = ps: with ps; [ ]; "upcloud.switch" = ps: with ps; [ ]; @@ -1469,16 +1891,27 @@ "upnp.const" = ps: with ps; [ ]; "upnp.device" = ps: with ps; [ ]; "upnp.sensor" = ps: with ps; [ ]; + "ups" = ps: with ps; [ ]; + "ups.sensor" = ps: with ps; [ ]; + "uptime" = ps: with ps; [ ]; + "uptime.sensor" = ps: with ps; [ ]; + "uptimerobot" = ps: with ps; [ ]; + "uptimerobot.binary_sensor" = ps: with ps; [ ]; + "uscis" = ps: with ps; [ ]; + "uscis.sensor" = ps: with ps; [ ]; + "usgs_earthquakes_feed" = ps: with ps; [ ]; + "usgs_earthquakes_feed.geo_location" = ps: with ps; [ ]; "usps" = ps: with ps; [ ]; "usps.camera" = ps: with ps; [ ]; "usps.sensor" = ps: with ps; [ ]; "utility_meter" = ps: with ps; [ ]; "utility_meter.const" = ps: with ps; [ ]; "utility_meter.sensor" = ps: with ps; [ ]; + "uvc" = ps: with ps; [ ]; + "uvc.camera" = ps: with ps; [ ]; "vacuum" = ps: with ps; [ ]; - "vacuum.demo" = ps: with ps; [ ]; - "vacuum.dyson" = ps: with ps; [ ]; - "vacuum.roomba" = ps: with ps; [ ]; + "vasttrafik" = ps: with ps; [ ]; + "vasttrafik.sensor" = ps: with ps; [ ]; "velbus" = ps: with ps; [ ]; "velbus.binary_sensor" = ps: with ps; [ ]; "velbus.climate" = ps: with ps; [ ]; @@ -1488,6 +1921,8 @@ "velux" = ps: with ps; [ ]; "velux.cover" = ps: with ps; [ ]; "velux.scene" = ps: with ps; [ ]; + "venstar" = ps: with ps; [ ]; + "venstar.climate" = ps: with ps; [ ]; "vera" = ps: with ps; [ ]; "vera.binary_sensor" = ps: with ps; [ ]; "vera.climate" = ps: with ps; [ ]; @@ -1504,6 +1939,22 @@ "verisure.lock" = ps: with ps; [ ]; "verisure.sensor" = ps: with ps; [ ]; "verisure.switch" = ps: with ps; [ ]; + "version" = ps: with ps; [ ]; + "version.sensor" = ps: with ps; [ ]; + "vesync" = ps: with ps; [ ]; + "vesync.switch" = ps: with ps; [ ]; + "viaggiatreno" = ps: with ps; [ ]; + "viaggiatreno.sensor" = ps: with ps; [ ]; + "vizio" = ps: with ps; [ ]; + "vizio.media_player" = ps: with ps; [ ]; + "vlc" = ps: with ps; [ ]; + "vlc.media_player" = ps: with ps; [ ]; + "voicerss" = ps: with ps; [ ]; + "voicerss.tts" = ps: with ps; [ ]; + "volkszaehler" = ps: with ps; [ ]; + "volkszaehler.sensor" = ps: with ps; [ ]; + "volumio" = ps: with ps; [ ]; + "volumio.media_player" = ps: with ps; [ ]; "volvooncall" = ps: with ps; [ ]; "volvooncall.binary_sensor" = ps: with ps; [ ]; "volvooncall.device_tracker" = ps: with ps; [ ]; @@ -1511,25 +1962,22 @@ "volvooncall.sensor" = ps: with ps; [ ]; "volvooncall.switch" = ps: with ps; [ ]; "vultr" = ps: with ps; [ vultr ]; + "vultr.binary_sensor" = ps: with ps; [ vultr ]; + "vultr.sensor" = ps: with ps; [ vultr ]; + "vultr.switch" = ps: with ps; [ vultr ]; "w800rf32" = ps: with ps; [ ]; "w800rf32.binary_sensor" = ps: with ps; [ ]; "wake_on_lan" = ps: with ps; [ wakeonlan ]; + "wake_on_lan.switch" = ps: with ps; [ wakeonlan ]; + "waqi" = ps: with ps; [ ]; + "waqi.sensor" = ps: with ps; [ ]; "water_heater" = ps: with ps; [ ]; - "water_heater.demo" = ps: with ps; [ ]; - "water_heater.econet" = ps: with ps; [ ]; "waterfurnace" = ps: with ps; [ ]; "waterfurnace.sensor" = ps: with ps; [ ]; "watson_iot" = ps: with ps; [ ]; + "waze_travel_time" = ps: with ps; [ ]; + "waze_travel_time.sensor" = ps: with ps; [ WazeRouteCalculator ]; "weather" = ps: with ps; [ ]; - "weather.bom" = ps: with ps; [ ]; - "weather.buienradar" = ps: with ps; [ ]; - "weather.darksky" = ps: with ps; [ python-forecastio ]; - "weather.demo" = ps: with ps; [ ]; - "weather.met" = ps: with ps; [ ]; - "weather.metoffice" = ps: with ps; [ ]; - "weather.openweathermap" = ps: with ps; [ pyowm ]; - "weather.yweather" = ps: with ps; [ yahooweather ]; - "weather.zamg" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; "weblink" = ps: with ps; [ ]; "webostv" = ps: with ps; [ ]; @@ -1545,11 +1993,14 @@ "websocket_api.http" = ps: with ps; [ ]; "websocket_api.messages" = ps: with ps; [ ]; "websocket_api.permissions" = ps: with ps; [ ]; + "websocket_api.sensor" = ps: with ps; [ ]; "wemo" = ps: with ps; [ ]; "wemo.binary_sensor" = ps: with ps; [ ]; "wemo.fan" = ps: with ps; [ ]; "wemo.light" = ps: with ps; [ ]; "wemo.switch" = ps: with ps; [ ]; + "whois" = ps: with ps; [ ]; + "whois.sensor" = ps: with ps; [ ]; "wink" = ps: with ps; [ ]; "wink.alarm_control_panel" = ps: with ps; [ ]; "wink.binary_sensor" = ps: with ps; [ ]; @@ -1566,7 +2017,30 @@ "wirelesstag.binary_sensor" = ps: with ps; [ ]; "wirelesstag.sensor" = ps: with ps; [ ]; "wirelesstag.switch" = ps: with ps; [ ]; + "workday" = ps: with ps; [ ]; + "workday.binary_sensor" = ps: with ps; [ ]; + "worldclock" = ps: with ps; [ ]; + "worldclock.sensor" = ps: with ps; [ ]; + "worldtidesinfo" = ps: with ps; [ ]; + "worldtidesinfo.sensor" = ps: with ps; [ ]; + "worxlandroid" = ps: with ps; [ ]; + "worxlandroid.sensor" = ps: with ps; [ ]; + "wsdot" = ps: with ps; [ ]; + "wsdot.sensor" = ps: with ps; [ ]; + "wunderground" = ps: with ps; [ ]; + "wunderground.sensor" = ps: with ps; [ ]; "wunderlist" = ps: with ps; [ ]; + "x10" = ps: with ps; [ ]; + "x10.light" = ps: with ps; [ ]; + "xbox_live" = ps: with ps; [ ]; + "xbox_live.sensor" = ps: with ps; [ ]; + "xeoma" = ps: with ps; [ ]; + "xeoma.camera" = ps: with ps; [ ]; + "xfinity" = ps: with ps; [ ]; + "xfinity.device_tracker" = ps: with ps; [ ]; + "xiaomi" = ps: with ps; [ ]; + "xiaomi.camera" = ps: with ps; [ ha-ffmpeg ]; + "xiaomi.device_tracker" = ps: with ps; [ ]; "xiaomi_aqara" = ps: with ps; [ ]; "xiaomi_aqara.binary_sensor" = ps: with ps; [ ]; "xiaomi_aqara.cover" = ps: with ps; [ ]; @@ -1582,13 +2056,46 @@ "xiaomi_miio.sensor" = ps: with ps; [ construct ]; "xiaomi_miio.switch" = ps: with ps; [ construct ]; "xiaomi_miio.vacuum" = ps: with ps; [ construct ]; + "xiaomi_tv" = ps: with ps; [ ]; + "xiaomi_tv.media_player" = ps: with ps; [ ]; + "xmpp" = ps: with ps; [ ]; + "xmpp.notify" = ps: with ps; [ slixmpp ]; "xs1" = ps: with ps; [ ]; "xs1.climate" = ps: with ps; [ ]; "xs1.sensor" = ps: with ps; [ ]; "xs1.switch" = ps: with ps; [ ]; + "yale_smart_alarm" = ps: with ps; [ ]; + "yale_smart_alarm.alarm_control_panel" = ps: with ps; [ ]; + "yamaha" = ps: with ps; [ ]; + "yamaha.media_player" = ps: with ps; [ ]; + "yamaha_musiccast" = ps: with ps; [ ]; + "yamaha_musiccast.media_player" = ps: with ps; [ ]; + "yandextts" = ps: with ps; [ ]; + "yandextts.tts" = ps: with ps; [ ]; + "yeelight" = ps: with ps; [ ]; + "yeelight.binary_sensor" = ps: with ps; [ ]; + "yeelight.light" = ps: with ps; [ ]; + "yeelightsunflower" = ps: with ps; [ ]; + "yeelightsunflower.light" = ps: with ps; [ ]; + "yessssms" = ps: with ps; [ ]; + "yessssms.notify" = ps: with ps; [ ]; + "yi" = ps: with ps; [ ]; + "yi.camera" = ps: with ps; [ ha-ffmpeg ]; + "yr" = ps: with ps; [ ]; + "yr.sensor" = ps: with ps; [ xmltodict ]; + "yweather" = ps: with ps; [ ]; + "yweather.sensor" = ps: with ps; [ yahooweather ]; + "yweather.weather" = ps: with ps; [ yahooweather ]; "zabbix" = ps: with ps; [ ]; "zabbix.sensor" = ps: with ps; [ ]; + "zamg" = ps: with ps; [ ]; + "zamg.sensor" = ps: with ps; [ ]; + "zamg.weather" = ps: with ps; [ ]; + "zengge" = ps: with ps; [ ]; + "zengge.light" = ps: with ps; [ ]; "zeroconf" = ps: with ps; [ aiohttp-cors zeroconf ]; + "zestimate" = ps: with ps; [ ]; + "zestimate.sensor" = ps: with ps; [ xmltodict ]; "zha" = ps: with ps; [ ]; "zha.api" = ps: with ps; [ ]; "zha.binary_sensor" = ps: with ps; [ ]; @@ -1601,11 +2108,15 @@ "zha.light" = ps: with ps; [ ]; "zha.sensor" = ps: with ps; [ ]; "zha.switch" = ps: with ps; [ ]; + "zhong_hong" = ps: with ps; [ ]; + "zhong_hong.climate" = ps: with ps; [ ]; "zigbee" = ps: with ps; [ ]; "zigbee.binary_sensor" = ps: with ps; [ ]; "zigbee.light" = ps: with ps; [ ]; "zigbee.sensor" = ps: with ps; [ ]; "zigbee.switch" = ps: with ps; [ ]; + "ziggo_mediabox_xl" = ps: with ps; [ ]; + "ziggo_mediabox_xl.media_player" = ps: with ps; [ ]; "zone" = ps: with ps; [ ]; "zone.config_flow" = ps: with ps; [ ]; "zone.const" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 9e5fb6bfb00..85aa4caf083 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -48,8 +48,8 @@ let "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf") (mkOverride "requests" "2.21.0" "502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e") - (mkOverride "ruamel_yaml" "0.15.88" - "ac56193c47a31c9efa151064a9e921865cdad0f7a991d229e7197e12fe8e0cd7") + (mkOverride "ruamel_yaml" "0.15.89" + "86d034aa9e2ab3eacc5f75f5cd6a469a2af533b6d9e60ea92edbba540d21b9b7") (mkOverride "voluptuous" "0.11.5" "567a56286ef82a9d7ae0628c5842f65f516abcb496e74f3f59f1d7b28df314ef") (mkOverride "voluptuous-serialize" "2.1.0" @@ -97,7 +97,7 @@ let extraBuildInputs = extraPackages py.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "0.90.2"; + hassVersion = "0.91.1"; in with py.pkgs; buildPythonApplication rec { pname = "homeassistant"; @@ -112,7 +112,7 @@ in with py.pkgs; buildPythonApplication rec { owner = "home-assistant"; repo = "home-assistant"; rev = version; - sha256 = "0byikidvrvx8nxgddhpqz609rxb91j1kcppziv4ibb57g6lj7iwx"; + sha256 = "1y2sv9qq7zmb85n2f5b3csnc60xi87ccpkmhz8ii9gkjw6swikyh"; }; propagatedBuildInputs = [ @@ -133,7 +133,7 @@ in with py.pkgs; buildPythonApplication rec { # Some basic components should be tested however py.test \ tests/components/{api,config,configurator,demo,discovery,frontend,group,history,history_graph} \ - tests/components/{http,init,introduction,logger,script,shell_command,system_log,websocket_api} + tests/components/{homeassistant,http,introduction,logger,script,shell_command,system_log,websocket_api} ''; makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip"; diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index a011e35ae64..f8349c24f7f 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "home-assistant-frontend"; - version = "20190321.0"; + version = "20190331.0"; src = fetchPypi { inherit pname version; - sha256 = "0sk96mnmvsbcqjjcrlgfsxkywms0zmajjgn3ibvk4sfn5wn53bg7"; + sha256 = "2d266a4d3d31af9a50debb99b0e9e9650044698f9157753bec785785057264cf"; }; propagatedBuildInputs = [ user-agents ];