# Generated by parse-requirements.py # Do not edit! { version = "2022.4.0"; components = { "abode" = ps: with ps; [ abodepy ]; "accuweather" = ps: with ps; [ accuweather ]; "acer_projector" = ps: with ps; [ pyserial ]; "acmeda" = ps: with ps; [ aiopulse ]; "actiontec" = ps: with ps; [ ]; "adax" = ps: with ps; [ adax-local adax ]; "adguard" = ps: with ps; [ adguardhome ]; "ads" = ps: with ps; [ pyads ]; "advantage_air" = ps: with ps; [ advantage-air ]; "aemet" = ps: with ps; [ aemet-opendata ]; "aftership" = ps: with ps; [ pyaftership ]; "agent_dvr" = ps: with ps; [ agent-py ]; "air_quality" = ps: with ps; [ ]; "airly" = ps: with ps; [ airly ]; "airnow" = ps: with ps; [ pyairnow ]; "airthings" = ps: with ps; [ airthings-cloud ]; "airtouch4" = ps: with ps; [ airtouch4pyapi ]; "airvisual" = ps: with ps; [ pyairvisual ]; "airzone" = ps: with ps; [ aioairzone ]; "aladdin_connect" = ps: with ps; [ aladdin-connect ]; "alarm_control_panel" = ps: with ps; [ ]; "alarmdecoder" = ps: with ps; [ adext ]; "alert" = ps: with ps; [ ]; "alexa" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "almond" = ps: with ps; [ aiohttp-cors pyalmond ]; "alpha_vantage" = ps: with ps; [ alpha-vantage ]; "amazon_polly" = ps: with ps; [ boto3 ]; "ambee" = ps: with ps; [ ambee ]; "amberelectric" = ps: with ps; [ amberelectric ]; "ambiclimate" = ps: with ps; [ aiohttp-cors ambiclimate ]; "ambient_station" = ps: with ps; [ aioambient ]; "amcrest" = ps: with ps; [ amcrest ha-ffmpeg ]; "ampio" = ps: with ps; [ asmog ]; "analytics" = ps: with ps; [ aiohttp-cors fnvhash lru-dict sqlalchemy ]; "android_ip_webcam" = ps: with ps; [ pydroid-ipcam ]; "androidtv" = ps: with ps; [ adb-shell androidtv pure-python-adb ]; "anel_pwrctrl" = ps: with ps; [ ]; # missing inputs: anel_pwrctrl-homeassistant "anthemav" = ps: with ps; [ ]; # missing inputs: anthemav "apache_kafka" = ps: with ps; [ aiokafka ]; "apcupsd" = ps: with ps; [ apcaccess ]; "api" = ps: with ps; [ aiohttp-cors ]; "apple_tv" = ps: with ps; [ aiohttp-cors ifaddr pyatv zeroconf ]; "apprise" = ps: with ps; [ apprise ]; "aprs" = ps: with ps; [ aprslib geopy ]; "aqualogic" = ps: with ps; [ aqualogic ]; "aquostv" = ps: with ps; [ ]; # missing inputs: sharp_aquos_rc "arcam_fmj" = ps: with ps; [ arcam-fmj ]; "arest" = ps: with ps; [ ]; "arlo" = ps: with ps; [ ha-ffmpeg pyarlo ]; "arris_tg2492lg" = ps: with ps; [ ]; # missing inputs: arris-tg2492lg "aruba" = ps: with ps; [ pexpect ]; "arwn" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "aseko_pool_live" = ps: with ps; [ aioaseko ]; "asterisk_cdr" = ps: with ps; [ asterisk-mbox ]; "asterisk_mbox" = ps: with ps; [ asterisk-mbox ]; "asuswrt" = ps: with ps; [ aioasuswrt ]; "atag" = ps: with ps; [ pyatag ]; "aten_pe" = ps: with ps; [ atenpdu ]; "atome" = ps: with ps; [ pyatome ]; "august" = ps: with ps; [ yalexs ]; "aurora" = ps: with ps; [ auroranoaa ]; "aurora_abb_powerone" = ps: with ps; [ aurorapy ]; "aussie_broadband" = ps: with ps; [ pyaussiebb ]; "auth" = ps: with ps; [ aiohttp-cors ]; "automation" = ps: with ps; [ aiohttp-cors ]; "avea" = ps: with ps; [ avea ]; "avion" = ps: with ps; [ avion ]; "awair" = ps: with ps; [ python-awair ]; "aws" = ps: with ps; [ aiobotocore ]; "axis" = ps: with ps; [ aiohttp-cors axis paho-mqtt ]; "azure_devops" = ps: with ps; [ aioazuredevops ]; "azure_event_hub" = ps: with ps; [ azure-eventhub ]; "azure_service_bus" = ps: with ps; [ azure-servicebus ]; "backup" = ps: with ps; [ aiohttp-cors ]; # missing inputs: securetar "baidu" = ps: with ps; [ ]; # missing inputs: baidu-aip "balboa" = ps: with ps; [ pybalboa ]; "bayesian" = ps: with ps; [ ]; "bbox" = ps: with ps; [ ]; # missing inputs: pybbox "beewi_smartclim" = ps: with ps; [ ]; # missing inputs: beewi_smartclim "binary_sensor" = ps: with ps; [ ]; "bitcoin" = ps: with ps; [ blockchain ]; "bizkaibus" = ps: with ps; [ bizkaibus ]; "blackbird" = ps: with ps; [ pyblackbird ]; "blebox" = ps: with ps; [ blebox-uniapi ]; "blink" = ps: with ps; [ blinkpy ]; "blinksticklight" = ps: with ps; [ BlinkStick ]; "blockchain" = ps: with ps; [ ]; # missing inputs: python-blockchain-api "bloomsky" = ps: with ps; [ ]; "blueprint" = ps: with ps; [ ]; "bluesound" = ps: with ps; [ xmltodict ]; "bluetooth_le_tracker" = ps: with ps; [ pygatt ]; "bluetooth_tracker" = ps: with ps; [ bt-proximity pybluez ]; "bmw_connected_drive" = ps: with ps; [ bimmer-connected ]; "bond" = ps: with ps; [ bond-api ]; "bosch_shc" = ps: with ps; [ aiohttp-cors boschshcpy ifaddr zeroconf ]; "braviatv" = ps: with ps; [ bravia-tv ]; "broadlink" = ps: with ps; [ broadlink ]; "brother" = ps: with ps; [ brother ]; "brottsplatskartan" = ps: with ps; [ brottsplatskartan ]; "browser" = ps: with ps; [ ]; "brunt" = ps: with ps; [ ]; # missing inputs: brunt "bsblan" = ps: with ps; [ bsblan ]; "bt_home_hub_5" = ps: with ps; [ ]; # missing inputs: bthomehub5-devicelist "bt_smarthub" = ps: with ps; [ ]; # missing inputs: btsmarthub_devicelist "buienradar" = ps: with ps; [ buienradar ]; "button" = ps: with ps; [ ]; "caldav" = ps: with ps; [ caldav ]; "calendar" = ps: with ps; [ aiohttp-cors ]; "camera" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "canary" = ps: with ps; [ ha-ffmpeg py-canary ]; "cast" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa ifaddr mutagen plexapi plexauth plexwebsocket PyChromecast zeroconf ]; "cert_expiry" = ps: with ps; [ ]; "channels" = ps: with ps; [ pychannels ]; "circuit" = ps: with ps; [ circuit-webhook ]; "cisco_ios" = ps: with ps; [ pexpect ]; "cisco_mobility_express" = ps: with ps; [ ciscomobilityexpress ]; "cisco_webex_teams" = ps: with ps; [ webexteamssdk ]; "citybikes" = ps: with ps; [ ]; "clementine" = ps: with ps; [ ]; # missing inputs: python-clementine-remote "clickatell" = ps: with ps; [ ]; "clicksend" = ps: with ps; [ ]; "clicksend_tts" = ps: with ps; [ ]; "climacell" = ps: with ps; [ pyclimacell ]; # missing inputs: pytomorrowio "climate" = ps: with ps; [ ]; "cloud" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa ]; "cloudflare" = ps: with ps; [ pycfdns ]; "cmus" = ps: with ps; [ ]; # missing inputs: pycmus "co2signal" = ps: with ps; [ co2signal ]; "coinbase" = ps: with ps; [ ]; # missing inputs: coinbase "color_extractor" = ps: with ps; [ colorthief ]; "comed_hourly_pricing" = ps: with ps; [ ]; "comfoconnect" = ps: with ps; [ pycomfoconnect ]; "command_line" = ps: with ps; [ ]; "compensation" = ps: with ps; [ numpy ]; "concord232" = ps: with ps; [ ]; # missing inputs: concord232 "config" = ps: with ps; [ aiohttp-cors ]; "configurator" = ps: with ps; [ ]; "control4" = ps: with ps; [ pycontrol4 ]; "conversation" = ps: with ps; [ aiohttp-cors ]; "coolmaster" = ps: with ps; [ pycoolmasternet-async ]; "coronavirus" = ps: with ps; [ coronavirus ]; "counter" = ps: with ps; [ ]; "cover" = ps: with ps; [ ]; "cppm_tracker" = ps: with ps; [ ]; # missing inputs: clearpasspy "cpuspeed" = ps: with ps; [ py-cpuinfo ]; "crownstone" = ps: with ps; [ aiohttp-cors crownstone-cloud crownstone-sse crownstone-uart pyserial pyudev ]; "cups" = ps: with ps; [ pycups ]; "currencylayer" = ps: with ps; [ ]; "daikin" = ps: with ps; [ pydaikin ]; "danfoss_air" = ps: with ps; [ pydanfossair ]; "darksky" = ps: with ps; [ python-forecastio ]; "datadog" = ps: with ps; [ datadog ]; "ddwrt" = ps: with ps; [ ]; "debugpy" = ps: with ps; [ debugpy ]; "deconz" = ps: with ps; [ pydeconz ]; "decora" = ps: with ps; [ bluepy ]; # missing inputs: decora "decora_wifi" = ps: with ps; [ ]; # missing inputs: decora_wifi "default_config" = ps: with ps; [ pynacl pyturbojpeg aiodiscover aiohttp-cors async-upnp-client fnvhash hass-nabucasa home-assistant-frontend ifaddr lru-dict pillow pyserial pyudev scapy sqlalchemy zeroconf ]; "delijn" = ps: with ps; [ pydelijn ]; "deluge" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors fnvhash lru-dict sqlalchemy ]; "denon" = ps: with ps; [ ]; "denonavr" = ps: with ps; [ denonavr ]; "derivative" = ps: with ps; [ ]; "deutsche_bahn" = ps: with ps; [ schiene ]; "device_automation" = ps: with ps; [ ]; "device_sun_light_trigger" = ps: with ps; [ aiohttp-cors pillow ]; "device_tracker" = ps: with ps; [ ]; "devolo_home_control" = ps: with ps; [ aiohttp-cors devolo-home-control-api ifaddr zeroconf ]; "devolo_home_network" = ps: with ps; [ devolo-plc-api ]; "dexcom" = ps: with ps; [ pydexcom ]; "dhcp" = ps: with ps; [ aiodiscover scapy ]; "diagnostics" = ps: with ps; [ aiohttp-cors ]; "dialogflow" = ps: with ps; [ aiohttp-cors ]; "digital_ocean" = ps: with ps; [ digital-ocean ]; "digitalloggers" = ps: with ps; [ ]; # missing inputs: dlipower "directv" = ps: with ps; [ directv ]; "discogs" = ps: with ps; [ discogs-client ]; "discord" = ps: with ps; [ nextcord ]; "discovery" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ]; "dlib_face_detect" = ps: with ps; [ face_recognition ]; "dlib_face_identify" = ps: with ps; [ face_recognition ]; "dlink" = ps: with ps; [ ]; # missing inputs: pyW215 "dlna_dmr" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "dlna_dms" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "dnsip" = ps: with ps; [ aiodns ]; "dominos" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pizzapi "doods" = ps: with ps; [ pillow pydoods ]; "doorbird" = ps: with ps; [ aiohttp-cors doorbirdpy ]; "dovado" = ps: with ps; [ ]; # missing inputs: dovado "downloader" = ps: with ps; [ ]; "dsmr" = ps: with ps; [ dsmr-parser ]; "dsmr_reader" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "dte_energy_bridge" = ps: with ps; [ ]; "dublin_bus_transport" = ps: with ps; [ ]; "duckdns" = ps: with ps; [ ]; "dunehd" = ps: with ps; [ pdunehd ]; "dwd_weather_warnings" = ps: with ps; [ dwdwfsapi ]; "dweet" = ps: with ps; [ ]; # missing inputs: dweepy "dynalite" = ps: with ps; [ dynalite-devices ]; "eafm" = ps: with ps; [ aioeafm ]; "ebox" = ps: with ps; [ ]; # missing inputs: pyebox "ebusd" = ps: with ps; [ ]; # missing inputs: ebusdpy "ecoal_boiler" = ps: with ps; [ ecoaliface ]; "ecobee" = ps: with ps; [ python-ecobee-api ]; "econet" = ps: with ps; [ pyeconet ]; "ecovacs" = ps: with ps; [ ]; # missing inputs: sucks "eddystone_temperature" = ps: with ps; [ construct ]; # missing inputs: beacontools "edimax" = ps: with ps; [ pyedimax ]; "edl21" = ps: with ps; [ pysml ]; "efergy" = ps: with ps; [ pyefergy ]; "egardia" = ps: with ps; [ pythonegardia ]; "eight_sleep" = ps: with ps; [ pyeight ]; "elgato" = ps: with ps; [ elgato ]; "eliqonline" = ps: with ps; [ eliqonline ]; "elkm1" = ps: with ps; [ aiohttp-cors elkm1-lib ifaddr ]; "elmax" = ps: with ps; [ elmax-api ]; "elv" = ps: with ps; [ pypca ]; "emby" = ps: with ps; [ pyemby ]; "emoncms" = ps: with ps; [ ]; "emoncms_history" = ps: with ps; [ ]; "emonitor" = ps: with ps; [ aioemonitor ]; "emulated_hue" = ps: with ps; [ aiohttp-cors ifaddr ]; "emulated_kasa" = ps: with ps; [ sense-energy ]; "emulated_roku" = ps: with ps; [ aiohttp-cors emulated-roku ifaddr ]; "energy" = ps: with ps; [ aiohttp-cors fnvhash lru-dict sqlalchemy ]; "enigma2" = ps: with ps; [ openwebifpy ]; "enocean" = ps: with ps; [ enocean ]; "enphase_envoy" = ps: with ps; [ envoy-reader ]; "entur_public_transport" = ps: with ps; [ enturclient ]; "environment_canada" = ps: with ps; [ env-canada ]; "envisalink" = ps: with ps; [ pyenvisalink ]; "ephember" = ps: with ps; [ pyephember ]; "epson" = ps: with ps; [ epson-projector ]; "epsonworkforce" = ps: with ps; [ ]; # missing inputs: epsonprinter "eq3btsmart" = ps: with ps; [ construct ]; # missing inputs: python-eq3bt "esphome" = ps: with ps; [ aioesphomeapi aiohttp-cors ifaddr zeroconf ]; "etherscan" = ps: with ps; [ ]; # missing inputs: python-etherscan-api "eufy" = ps: with ps; [ ]; # missing inputs: lakeside "everlights" = ps: with ps; [ pyeverlights ]; "evil_genius_labs" = ps: with ps; [ pyevilgenius ]; "evohome" = ps: with ps; [ evohome-async ]; "ezviz" = ps: with ps; [ ha-ffmpeg pyezviz ]; "faa_delays" = ps: with ps; [ faadelays ]; "facebook" = ps: with ps; [ ]; "facebox" = ps: with ps; [ ]; "fail2ban" = ps: with ps; [ ]; "familyhub" = ps: with ps; [ ]; # missing inputs: python-family-hub-local "fan" = ps: with ps; [ ]; "fastdotcom" = ps: with ps; [ ]; # missing inputs: fastdotcom "feedreader" = ps: with ps; [ feedparser ]; "ffmpeg" = ps: with ps; [ ha-ffmpeg ]; "ffmpeg_motion" = ps: with ps; [ ha-ffmpeg ]; "ffmpeg_noise" = ps: with ps; [ ha-ffmpeg ]; "fibaro" = ps: with ps; [ fiblary3-fork ]; "fido" = ps: with ps; [ pyfido ]; "file" = ps: with ps; [ ]; "filesize" = ps: with ps; [ ]; "filter" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "fints" = ps: with ps; [ fints ]; "fireservicerota" = ps: with ps; [ pyfireservicerota ]; "firmata" = ps: with ps; [ pymata-express ]; "fitbit" = ps: with ps; [ aiohttp-cors fitbit ]; "fivem" = ps: with ps; [ ]; # missing inputs: fivem-api "fixer" = ps: with ps; [ fixerio ]; "fjaraskupan" = ps: with ps; [ fjaraskupan ]; "fleetgo" = ps: with ps; [ ritassist ]; "flexit" = ps: with ps; [ pymodbus ]; "flic" = ps: with ps; [ pyflic ]; "flick_electric" = ps: with ps; [ pyflick ]; "flipr" = ps: with ps; [ flipr-api ]; "flo" = ps: with ps; [ aioflo ]; "flock" = ps: with ps; [ ]; "flume" = ps: with ps; [ pyflume ]; "flunearyou" = ps: with ps; [ pyflunearyou ]; "flux" = ps: with ps; [ ]; "flux_led" = ps: with ps; [ aiohttp-cors flux-led ifaddr ]; "folder" = ps: with ps; [ ]; "folder_watcher" = ps: with ps; [ watchdog ]; "foobot" = ps: with ps; [ foobot-async ]; "forecast_solar" = ps: with ps; [ forecast-solar ]; "forked_daapd" = ps: with ps; [ ]; # missing inputs: pyforked-daapd pylibrespot-java "fortios" = ps: with ps; [ fortiosapi ]; "foscam" = ps: with ps; [ libpyfoscam ]; "foursquare" = ps: with ps; [ aiohttp-cors ]; "free_mobile" = ps: with ps; [ ]; # missing inputs: freesms "freebox" = ps: with ps; [ freebox-api ]; "freedns" = ps: with ps; [ ]; "freedompro" = ps: with ps; [ pyfreedompro ]; "fritz" = ps: with ps; [ aiohttp-cors fritzconnection ifaddr xmltodict ]; "fritzbox" = ps: with ps; [ pyfritzhome ]; "fritzbox_callmonitor" = ps: with ps; [ fritzconnection ]; "fronius" = ps: with ps; [ pyfronius ]; "frontend" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "frontier_silicon" = ps: with ps; [ afsapi ]; "futurenow" = ps: with ps; [ pyfnip ]; "garadget" = ps: with ps; [ ]; "garages_amsterdam" = ps: with ps; [ garages-amsterdam ]; "gc100" = ps: with ps; [ ]; # missing inputs: python-gc100 "gdacs" = ps: with ps; [ aio-georss-gdacs ]; "generic" = ps: with ps; [ av pillow ]; "generic_hygrostat" = ps: with ps; [ ]; "generic_thermostat" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "geniushub" = ps: with ps; [ geniushub-client ]; "geo_json_events" = ps: with ps; [ ]; # missing inputs: aio_geojson_generic_client "geo_location" = ps: with ps; [ ]; "geo_rss_events" = ps: with ps; [ georss-generic-client ]; "geofency" = ps: with ps; [ aiohttp-cors ]; "geonetnz_quakes" = ps: with ps; [ aio-geojson-geonetnz-quakes ]; "geonetnz_volcano" = ps: with ps; [ aio-geojson-geonetnz-volcano ]; "gios" = ps: with ps; [ gios ]; "github" = ps: with ps; [ aiogithubapi ]; "gitlab_ci" = ps: with ps; [ python-gitlab ]; "gitter" = ps: with ps; [ ]; # missing inputs: gitterpy "glances" = ps: with ps; [ glances-api ]; "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher "goalzero" = ps: with ps; [ goalzero ]; "gogogate2" = ps: with ps; [ ismartgate ]; "goodwe" = ps: with ps; [ goodwe ]; "google" = ps: with ps; [ aiohttp-cors google-api-python-client httplib2 oauth2client ]; "google_assistant" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "google_cloud" = ps: with ps; [ google-cloud-texttospeech ]; "google_domains" = ps: with ps; [ ]; "google_maps" = ps: with ps; [ locationsharinglib ]; "google_pubsub" = ps: with ps; [ google-cloud-pubsub ]; "google_translate" = ps: with ps; [ gtts ]; "google_travel_time" = ps: with ps; [ googlemaps ]; "google_wifi" = ps: with ps; [ ]; "gpsd" = ps: with ps; [ gps3 ]; "gpslogger" = ps: with ps; [ aiohttp-cors ]; "graphite" = ps: with ps; [ ]; "gree" = ps: with ps; [ greeclimate ]; "greeneye_monitor" = ps: with ps; [ ]; # missing inputs: greeneye_monitor "greenwave" = ps: with ps; [ ]; # missing inputs: greenwavereality "group" = ps: with ps; [ ]; "growatt_server" = ps: with ps; [ growattserver ]; "gstreamer" = ps: with ps; [ ]; # missing inputs: gstreamer-player "gtfs" = ps: with ps; [ pygtfs ]; "guardian" = ps: with ps; [ aioguardian ]; "habitica" = ps: with ps; [ habitipy ]; "hangouts" = ps: with ps; [ hangups ]; "harman_kardon_avr" = ps: with ps; [ ]; # missing inputs: hkavr "harmony" = ps: with ps; [ aioharmony ]; "hassio" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "haveibeenpwned" = ps: with ps; [ ]; "hddtemp" = ps: with ps; [ ]; "hdmi_cec" = ps: with ps; [ pycec ]; "heatmiser" = ps: with ps; [ ]; # missing inputs: heatmiserV3 "heos" = ps: with ps; [ pyheos ]; "here_travel_time" = ps: with ps; [ herepy ]; "hikvision" = ps: with ps; [ ]; # missing inputs: pyhik "hikvisioncam" = ps: with ps; [ hikvision ]; "hisense_aehw4a1" = ps: with ps; [ pyaehw4a1 ]; "history" = ps: with ps; [ aiohttp-cors fnvhash lru-dict sqlalchemy ]; "history_stats" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "hitron_coda" = ps: with ps; [ ]; "hive" = ps: with ps; [ pyhiveapi ]; "hlk_sw16" = ps: with ps; [ hlk-sw16 ]; "home_connect" = ps: with ps; [ aiohttp-cors homeconnect ]; "home_plus_control" = ps: with ps; [ aiohttp-cors homepluscontrol ]; "homeassistant" = ps: with ps; [ ]; "homekit" = ps: with ps; [ hap-python pyqrcode pyturbojpeg aiohttp-cors base36 fnvhash ha-ffmpeg ifaddr zeroconf ]; "homekit_controller" = ps: with ps; [ aiohomekit aiohttp-cors ifaddr zeroconf ]; "homematic" = ps: with ps; [ pyhomematic ]; "homematicip_cloud" = ps: with ps; [ homematicip ]; "homewizard" = ps: with ps; [ aiohwenergy ]; "homeworks" = ps: with ps; [ pyhomeworks ]; "honeywell" = ps: with ps; [ somecomfort ]; "horizon" = ps: with ps; [ ]; # missing inputs: horimote "hp_ilo" = ps: with ps; [ python-hpilo ]; "html5" = ps: with ps; [ aiohttp-cors pywebpush ]; "http" = ps: with ps; [ aiohttp-cors ]; "huawei_lte" = ps: with ps; [ huawei-lte-api stringcase url-normalize ]; "hue" = ps: with ps; [ aiohue ]; "huisbaasje" = ps: with ps; [ huisbaasje-client ]; "humidifier" = ps: with ps; [ ]; "hunterdouglas_powerview" = ps: with ps; [ aiopvapi ]; "hvv_departures" = ps: with ps; [ pygti ]; "hydrawise" = ps: with ps; [ hydrawiser ]; "hyperion" = ps: with ps; [ hyperion-py ]; "ialarm" = ps: with ps; [ pyialarm ]; "iammeter" = ps: with ps; [ ]; # missing inputs: iammeter "iaqualink" = ps: with ps; [ iaqualink ]; "icloud" = ps: with ps; [ pyicloud ]; "idteck_prox" = ps: with ps; [ ]; # missing inputs: rfk101py "ifttt" = ps: with ps; [ aiohttp-cors pyfttt ]; "iglo" = ps: with ps; [ ]; # missing inputs: iglo "ign_sismologia" = ps: with ps; [ georss-ign-sismologia-client ]; "ihc" = ps: with ps; [ defusedxml ]; # missing inputs: ihcsdk "image" = ps: with ps; [ aiohttp-cors pillow ]; "image_processing" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "imap" = ps: with ps; [ aioimaplib ]; "imap_email_content" = ps: with ps; [ ]; "incomfort" = ps: with ps; [ incomfort-client ]; "influxdb" = ps: with ps; [ influxdb-client influxdb ]; "input_boolean" = ps: with ps; [ ]; "input_button" = ps: with ps; [ ]; "input_datetime" = ps: with ps; [ ]; "input_number" = ps: with ps; [ ]; "input_select" = ps: with ps; [ ]; "input_text" = ps: with ps; [ ]; "insteon" = ps: with ps; [ pyinsteon ]; "integration" = ps: with ps; [ ]; "intellifire" = ps: with ps; [ intellifire4py ]; "intent" = ps: with ps; [ aiohttp-cors ]; "intent_script" = ps: with ps; [ ]; "intesishome" = ps: with ps; [ pyintesishome ]; "ios" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; "iotawatt" = ps: with ps; [ iotawattpy ]; "iperf3" = ps: with ps; [ ]; # missing inputs: iperf3 "ipma" = ps: with ps; [ pyipma ]; "ipp" = ps: with ps; [ pyipp ]; "iqvia" = ps: with ps; [ numpy pyiqvia ]; "irish_rail_transport" = ps: with ps; [ ]; # missing inputs: pyirishrail "islamic_prayer_times" = ps: with ps; [ prayer-times-calculator ]; "iss" = ps: with ps; [ ]; # missing inputs: pyiss "isy994" = ps: with ps; [ pyisy ]; "itach" = ps: with ps; [ ]; # missing inputs: pyitachip2ir "itunes" = ps: with ps; [ ]; "izone" = ps: with ps; [ python-izone ]; "jellyfin" = ps: with ps; [ jellyfin-apiclient-python ]; "jewish_calendar" = ps: with ps; [ hdate ]; "joaoapps_join" = ps: with ps; [ ]; # missing inputs: python-join-api "juicenet" = ps: with ps; [ python-juicenet ]; "kaiterra" = ps: with ps; [ ]; # missing inputs: kaiterra-async-client "kaleidescape" = ps: with ps; [ ]; # missing inputs: pykaleidescape "kankun" = ps: with ps; [ ]; "keba" = ps: with ps; [ ]; # missing inputs: keba-kecontact "keenetic_ndms2" = ps: with ps; [ ndms2-client ]; "kef" = ps: with ps; [ aiokef getmac ]; "keyboard" = ps: with ps; [ ]; # missing inputs: pyuserinput "keyboard_remote" = ps: with ps; [ aionotify evdev ]; "kira" = ps: with ps; [ pykira ]; "kiwi" = ps: with ps; [ ]; # missing inputs: kiwiki-client "kmtronic" = ps: with ps; [ pykmtronic ]; "knx" = ps: with ps; [ xknx ]; "kodi" = ps: with ps; [ aiohttp-cors pykodi ]; "konnected" = ps: with ps; [ aiohttp-cors konnected ]; "kostal_plenticore" = ps: with ps; [ ]; # missing inputs: kostal_plenticore "kraken" = ps: with ps; [ krakenex pykrakenapi ]; "kulersky" = ps: with ps; [ pykulersky ]; "kwb" = ps: with ps; [ ]; # missing inputs: pykwb "lacrosse" = ps: with ps; [ pylacrosse ]; "lametric" = ps: with ps; [ lmnotify ]; "lannouncer" = ps: with ps; [ ]; "lastfm" = ps: with ps; [ pylast ]; "launch_library" = ps: with ps; [ pylaunches ]; "lcn" = ps: with ps; [ pypck ]; "lg_netcast" = ps: with ps; [ pylgnetcast ]; "lg_soundbar" = ps: with ps; [ temescal ]; "life360" = ps: with ps; [ life360 ]; "lifx" = ps: with ps; [ aiolifx aiolifx-effects ]; "lifx_cloud" = ps: with ps; [ ]; "light" = ps: with ps; [ ]; "lightwave" = ps: with ps; [ lightwave ]; "limitlessled" = ps: with ps; [ limitlessled ]; "linksys_smart" = ps: with ps; [ ]; "linode" = ps: with ps; [ linode-api ]; "linux_battery" = ps: with ps; [ batinfo ]; "lirc" = ps: with ps; [ ]; # missing inputs: python-lirc "litejet" = ps: with ps; [ ]; # missing inputs: pylitejet "litterrobot" = ps: with ps; [ pylitterbot ]; "llamalab_automate" = ps: with ps; [ ]; "local_file" = ps: with ps; [ ]; "local_ip" = ps: with ps; [ aiohttp-cors ifaddr ]; "locative" = ps: with ps; [ aiohttp-cors ]; "lock" = ps: with ps; [ ]; "logbook" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "logentries" = ps: with ps; [ ]; "logger" = ps: with ps; [ ]; "logi_circle" = ps: with ps; [ aiohttp-cors ha-ffmpeg ]; # missing inputs: logi_circle "london_air" = ps: with ps; [ ]; "london_underground" = ps: with ps; [ ]; # missing inputs: london-tube-status "lookin" = ps: with ps; [ aiolookin ]; "lovelace" = ps: with ps; [ ]; "luci" = ps: with ps; [ openwrt-luci-rpc ]; "luftdaten" = ps: with ps; [ luftdaten ]; "lupusec" = ps: with ps; [ lupupy ]; "lutron" = ps: with ps; [ pylutron ]; "lutron_caseta" = ps: with ps; [ pylutron-caseta ]; "lw12wifi" = ps: with ps; [ ]; # missing inputs: lw12 "lyric" = ps: with ps; [ aiohttp-cors aiolyric ]; "magicseaweed" = ps: with ps; [ ]; # missing inputs: magicseaweed "mailbox" = ps: with ps; [ aiohttp-cors ]; "mailgun" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pymailgunner "manual" = ps: with ps; [ ]; "manual_mqtt" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "map" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "marytts" = ps: with ps; [ ]; # missing inputs: speak2mary "mastodon" = ps: with ps; [ mastodon-py ]; "matrix" = ps: with ps; [ matrix-client ]; "maxcube" = ps: with ps; [ maxcube-api ]; "mazda" = ps: with ps; [ pymazda ]; "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ]; "media_player" = ps: with ps; [ aiohttp-cors ]; "media_source" = ps: with ps; [ aiohttp-cors ]; "mediaroom" = ps: with ps; [ pymediaroom ]; "melcloud" = ps: with ps; [ pymelcloud ]; "melissa" = ps: with ps; [ ]; # missing inputs: py-melissa-climate "meraki" = ps: with ps; [ aiohttp-cors ]; "message_bird" = ps: with ps; [ ]; # missing inputs: messagebird "met" = ps: with ps; [ pymetno ]; "met_eireann" = ps: with ps; [ pymeteireann ]; "meteo_france" = ps: with ps; [ ]; # missing inputs: meteofrance-api "meteoalarm" = ps: with ps; [ meteoalertapi ]; "meteoclimatic" = ps: with ps; [ pymeteoclimatic ]; "metoffice" = ps: with ps; [ ]; # missing inputs: datapoint "mfi" = ps: with ps; [ ]; # missing inputs: mficlient "microsoft" = ps: with ps; [ ]; # missing inputs: pycsspeechtts "microsoft_face" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "microsoft_face_detect" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "microsoft_face_identify" = ps: with ps; [ pyturbojpeg aiohttp-cors ]; "miflora" = ps: with ps; [ bluepy ]; # missing inputs: miflora "mikrotik" = ps: with ps; [ librouteros ]; "mill" = ps: with ps; [ mill-local millheater ]; "min_max" = ps: with ps; [ ]; "minecraft_server" = ps: with ps; [ aiodns getmac mcstatus ]; "minio" = ps: with ps; [ minio ]; "mitemp_bt" = ps: with ps; [ ]; # missing inputs: mitemp_bt "mjpeg" = ps: with ps; [ ]; "mobile_app" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors hass-nabucasa pillow ]; "mochad" = ps: with ps; [ ]; # missing inputs: pymochad "modbus" = ps: with ps; [ pymodbus ]; "modem_callerid" = ps: with ps; [ aiohttp-cors phone-modem pyserial pyudev ]; "modern_forms" = ps: with ps; [ aiomodernforms ]; "moehlenhoff_alpha2" = ps: with ps; [ ]; # missing inputs: moehlenhoff-alpha2 "mold_indicator" = ps: with ps; [ ]; "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice "moon" = ps: with ps; [ ]; "motion_blinds" = ps: with ps; [ aiohttp-cors ifaddr motionblinds ]; "motioneye" = ps: with ps; [ aiohttp-cors motioneye-client ]; "mpd" = ps: with ps; [ mpd2 ]; "mqtt" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "mqtt_eventstream" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "mqtt_json" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "mqtt_room" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "mqtt_statestream" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "msteams" = ps: with ps; [ pymsteams ]; "mullvad" = ps: with ps; [ mullvad-api ]; "mutesync" = ps: with ps; [ mutesync ]; "mvglive" = ps: with ps; [ PyMVGLive ]; "my" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "mycroft" = ps: with ps; [ ]; # missing inputs: mycroftapi "myq" = ps: with ps; [ pymyq ]; "mysensors" = ps: with ps; [ aiohttp-cors paho-mqtt pymysensors ]; "mystrom" = ps: with ps; [ aiohttp-cors python-mystrom ]; "mythicbeastsdns" = ps: with ps; [ mbddns ]; "nad" = ps: with ps; [ nad-receiver ]; "nam" = ps: with ps; [ nettigo-air-monitor ]; "namecheapdns" = ps: with ps; [ defusedxml ]; "nanoleaf" = ps: with ps; [ aionanoleaf ]; "neato" = ps: with ps; [ aiohttp-cors pybotvac ]; "nederlandse_spoorwegen" = ps: with ps; [ nsapi ]; "ness_alarm" = ps: with ps; [ nessclient ]; "nest" = ps: with ps; [ aiohttp-cors google-nest-sdm ha-ffmpeg python-nest ]; "netatmo" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pyatmo ]; "netdata" = ps: with ps; [ netdata ]; "netgear" = ps: with ps; [ pynetgear ]; "netgear_lte" = ps: with ps; [ eternalegypt ]; "netio" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pynetio "network" = ps: with ps; [ aiohttp-cors ifaddr ]; "neurio_energy" = ps: with ps; [ ]; # missing inputs: neurio "nexia" = ps: with ps; [ nexia ]; "nextbus" = ps: with ps; [ ]; # missing inputs: py_nextbusnext "nextcloud" = ps: with ps; [ nextcloudmonitor ]; "nfandroidtv" = ps: with ps; [ ]; # missing inputs: notifications-android-tv "nightscout" = ps: with ps; [ py-nightscout ]; "niko_home_control" = ps: with ps; [ niko-home-control ]; "nilu" = ps: with ps; [ niluclient ]; "nina" = ps: with ps; [ pynina ]; "nissan_leaf" = ps: with ps; [ pycarwings2 ]; "nmap_tracker" = ps: with ps; [ aiohttp-cors getmac ifaddr netmap ]; # missing inputs: mac-vendor-lookup "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail "no_ip" = ps: with ps; [ ]; "noaa_tides" = ps: with ps; [ ]; # missing inputs: noaa-coops "norway_air" = ps: with ps; [ pymetno ]; "notify" = ps: with ps; [ ]; "notify_events" = ps: with ps; [ ]; # missing inputs: notify-events "notion" = ps: with ps; [ aionotion ]; "nsw_fuel_station" = ps: with ps; [ ]; # missing inputs: nsw-fuel-api-client "nsw_rural_fire_service_feed" = ps: with ps; [ aio-geojson-nsw-rfs-incidents ]; "nuheat" = ps: with ps; [ ]; # missing inputs: nuheat "nuki" = ps: with ps; [ pynuki ]; "numato" = ps: with ps; [ ]; # missing inputs: numato-gpio "number" = ps: with ps; [ ]; "nut" = ps: with ps; [ pynut2 ]; "nws" = ps: with ps; [ pynws ]; "nx584" = ps: with ps; [ pynx584 ]; "nzbget" = ps: with ps; [ ]; # missing inputs: pynzbgetapi "oasa_telematics" = ps: with ps; [ ]; # missing inputs: oasatelematics "obihai" = ps: with ps; [ pyobihai ]; "octoprint" = ps: with ps; [ pyoctoprintapi ]; "oem" = ps: with ps; [ oemthermostat ]; "ohmconnect" = ps: with ps; [ defusedxml ]; "ombi" = ps: with ps; [ pyombi ]; "omnilogic" = ps: with ps; [ omnilogic ]; "onboarding" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "oncue" = ps: with ps; [ aiooncue ]; "ondilo_ico" = ps: with ps; [ aiohttp-cors ondilo ]; "onewire" = ps: with ps; [ pi1wire pyownet ]; "onkyo" = ps: with ps; [ onkyo-eiscp ]; "onvif" = ps: with ps; [ wsdiscovery ha-ffmpeg onvif-zeep-async ]; "open_meteo" = ps: with ps; [ open-meteo ]; "openalpr_cloud" = ps: with ps; [ ]; "openalpr_local" = ps: with ps; [ ]; "opencv" = ps: with ps; [ numpy ]; # missing inputs: opencv-python-headless "openerz" = ps: with ps; [ openerz-api ]; "openevse" = ps: with ps; [ openevsewifi ]; "openexchangerates" = ps: with ps; [ ]; "opengarage" = ps: with ps; [ open-garage ]; "openhardwaremonitor" = ps: with ps; [ ]; "openhome" = ps: with ps; [ openhomedevice ]; "opensensemap" = ps: with ps; [ opensensemap-api ]; "opensky" = ps: with ps; [ ]; "opentherm_gw" = ps: with ps; [ pyotgw ]; "openuv" = ps: with ps; [ pyopenuv ]; "openweathermap" = ps: with ps; [ pyowm ]; "opnsense" = ps: with ps; [ pyopnsense ]; "opple" = ps: with ps; [ ]; # missing inputs: pyoppleio "oru" = ps: with ps; [ ]; # missing inputs: oru "orvibo" = ps: with ps; [ orvibo ]; "osramlightify" = ps: with ps; [ ]; # missing inputs: lightify "otp" = ps: with ps; [ pyotp ]; "overkiz" = ps: with ps; [ pyoverkiz ]; "ovo_energy" = ps: with ps; [ ovoenergy ]; "owntracks" = ps: with ps; [ pynacl pyturbojpeg aiohttp-cors hass-nabucasa paho-mqtt ]; "p1_monitor" = ps: with ps; [ p1monitor ]; "panasonic_bluray" = ps: with ps; [ panacotta ]; "panasonic_viera" = ps: with ps; [ ]; # missing inputs: panasonic_viera "pandora" = ps: with ps; [ pexpect ]; "panel_custom" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "panel_iframe" = ps: with ps; [ aiohttp-cors fnvhash home-assistant-frontend lru-dict pillow sqlalchemy ]; "peco" = ps: with ps; [ ]; # missing inputs: peco "pencom" = ps: with ps; [ ]; # missing inputs: pencompy "persistent_notification" = ps: with ps; [ ]; "person" = ps: with ps; [ aiohttp-cors pillow ]; "philips_js" = ps: with ps; [ ha-philipsjs ]; "pi_hole" = ps: with ps; [ hole ]; "picnic" = ps: with ps; [ python-picnic-api ]; "picotts" = ps: with ps; [ ]; "pilight" = ps: with ps; [ ]; # missing inputs: pilight "ping" = ps: with ps; [ icmplib ]; "pioneer" = ps: with ps; [ ]; "pjlink" = ps: with ps; [ ]; # missing inputs: pypjlink2 "plaato" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pyplaato ]; "plant" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "plex" = ps: with ps; [ aiohttp-cors plexapi plexauth plexwebsocket ]; "plugwise" = ps: with ps; [ plugwise ]; "plum_lightpad" = ps: with ps; [ ]; # missing inputs: plumlightpad "pocketcasts" = ps: with ps; [ ]; # missing inputs: pycketcasts "point" = ps: with ps; [ aiohttp-cors pypoint ]; "poolsense" = ps: with ps; [ poolsense ]; "powerwall" = ps: with ps; [ ]; # missing inputs: tesla-powerwall "profiler" = ps: with ps; [ guppy3 objgraph pyprof2calltree ]; "progettihwsw" = ps: with ps; [ ]; # missing inputs: progettihwsw "proliphix" = ps: with ps; [ ]; # missing inputs: proliphix "prometheus" = ps: with ps; [ aiohttp-cors prometheus-client ]; "prosegur" = ps: with ps; [ pyprosegur ]; "prowl" = ps: with ps; [ ]; "proximity" = ps: with ps; [ ]; "proxmoxve" = ps: with ps; [ proxmoxer ]; "proxy" = ps: with ps; [ pillow ]; "ps4" = ps: with ps; [ ]; # missing inputs: pyps4-2ndscreen "pulseaudio_loopback" = ps: with ps; [ pulsectl ]; "pure_energie" = ps: with ps; [ gridnet ]; "push" = ps: with ps; [ aiohttp-cors ]; "pushbullet" = ps: with ps; [ pushbullet ]; "pushover" = ps: with ps; [ pushover-complete ]; "pushsafer" = ps: with ps; [ ]; "pvoutput" = ps: with ps; [ pvo ]; "pvpc_hourly_pricing" = ps: with ps; [ aiopvpc ]; "pyload" = ps: with ps; [ ]; "python_script" = ps: with ps; [ restrictedpython ]; "qbittorrent" = ps: with ps; [ ]; # missing inputs: python-qbittorrent "qld_bushfire" = ps: with ps; [ georss-qld-bushfire-alert-client ]; "qnap" = ps: with ps; [ ]; # missing inputs: qnapstats "qrcode" = ps: with ps; [ pillow pyzbar ]; "quantum_gateway" = ps: with ps; [ quantum-gateway ]; "qvr_pro" = ps: with ps; [ pyqvrpro ]; "qwikswitch" = ps: with ps; [ ]; # missing inputs: pyqwikswitch "rachio" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa rachiopy ]; "radarr" = ps: with ps; [ ]; "radio_browser" = ps: with ps; [ radios ]; "radiotherm" = ps: with ps; [ radiotherm ]; "rainbird" = ps: with ps; [ ]; # missing inputs: pyrainbird "raincloud" = ps: with ps; [ ]; # missing inputs: raincloudy "rainforest_eagle" = ps: with ps; [ aioeagle ueagle ]; "rainmachine" = ps: with ps; [ regenmaschine ]; "random" = ps: with ps; [ ]; "raspyrfm" = ps: with ps; [ ]; # missing inputs: raspyrfm-client "rdw" = ps: with ps; [ vehicle ]; "recollect_waste" = ps: with ps; [ aiorecollect ]; "recorder" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "recswitch" = ps: with ps; [ ]; # missing inputs: pyrecswitch "reddit" = ps: with ps; [ praw ]; "rejseplanen" = ps: with ps; [ ]; # missing inputs: rjpl "remember_the_milk" = ps: with ps; [ httplib2 ]; # missing inputs: RtmAPI "remote" = ps: with ps; [ ]; "remote_rpi_gpio" = ps: with ps; [ ]; # missing inputs: gpiozero "renault" = ps: with ps; [ renault-api ]; "repetier" = ps: with ps; [ ]; # missing inputs: pyrepetierng "rest" = ps: with ps; [ jsonpath xmltodict ]; "rest_command" = ps: with ps; [ ]; "rflink" = ps: with ps; [ rflink ]; "rfxtrx" = ps: with ps; [ pyrfxtrx ]; "ridwell" = ps: with ps; [ aioridwell ]; "ring" = ps: with ps; [ ha-ffmpeg ring-doorbell ]; "ripple" = ps: with ps; [ ]; # missing inputs: python-ripple-api "risco" = ps: with ps; [ pyrisco ]; "rituals_perfume_genie" = ps: with ps; [ pyrituals ]; "rmvtransport" = ps: with ps; [ pyrmvtransport ]; "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API "roku" = ps: with ps; [ rokuecp ]; "roomba" = ps: with ps; [ roombapy ]; "roon" = ps: with ps; [ roonapi ]; "route53" = ps: with ps; [ boto3 ]; "rova" = ps: with ps; [ ]; # missing inputs: rova "rpi_camera" = ps: with ps; [ ]; "rpi_gpio" = ps: with ps; [ ]; # missing inputs: RPi.GPIO "rpi_power" = ps: with ps; [ rpi-bad-power ]; "rss_feed_template" = ps: with ps; [ aiohttp-cors ]; "rtorrent" = ps: with ps; [ ]; "rtsp_to_webrtc" = ps: with ps; [ pyturbojpeg aiohttp-cors rtsp-to-webrtc ]; "ruckus_unleashed" = ps: with ps; [ pyruckus ]; "russound_rio" = ps: with ps; [ ]; # missing inputs: russound_rio "russound_rnet" = ps: with ps; [ ]; # missing inputs: russound "sabnzbd" = ps: with ps; [ aiohttp-cors ifaddr netdisco zeroconf ]; # missing inputs: pysabnzbd "safe_mode" = ps: with ps; [ pyturbojpeg aiohttp-cors fnvhash hass-nabucasa home-assistant-frontend lru-dict pillow sqlalchemy ]; "saj" = ps: with ps; [ ]; # missing inputs: pysaj "samsungtv" = ps: with ps; [ aiohttp-cors async-upnp-client getmac ifaddr samsungctl samsungtvws wakeonlan zeroconf ]; "satel_integra" = ps: with ps; [ ]; # missing inputs: satel_integra "scene" = ps: with ps; [ ]; "schluter" = ps: with ps; [ ]; # missing inputs: py-schluter "scrape" = ps: with ps; [ beautifulsoup4 jsonpath xmltodict ]; "screenlogic" = ps: with ps; [ screenlogicpy ]; "script" = ps: with ps; [ ]; "scsgate" = ps: with ps; [ ]; # missing inputs: scsgate "search" = ps: with ps; [ aiohttp-cors ]; "season" = ps: with ps; [ ephem ]; "select" = ps: with ps; [ ]; "sendgrid" = ps: with ps; [ sendgrid ]; "sense" = ps: with ps; [ sense-energy ]; "senseme" = ps: with ps; [ aiosenseme ]; "sensibo" = ps: with ps; [ ]; # missing inputs: pysensibo "sensor" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "sentry" = ps: with ps; [ sentry-sdk ]; "serial" = ps: with ps; [ pyserial-asyncio ]; "serial_pm" = ps: with ps; [ pmsensor ]; "sesame" = ps: with ps; [ ]; # missing inputs: pysesame2 "seven_segments" = ps: with ps; [ pillow ]; "seventeentrack" = ps: with ps; [ py17track ]; "sharkiq" = ps: with ps; [ ]; # missing inputs: sharkiq "shell_command" = ps: with ps; [ ]; "shelly" = ps: with ps; [ aioshelly ]; "shiftr" = ps: with ps; [ paho-mqtt ]; "shodan" = ps: with ps; [ shodan ]; "shopping_list" = ps: with ps; [ aiohttp-cors ]; "sia" = ps: with ps; [ pysiaalarm ]; "sigfox" = ps: with ps; [ ]; "sighthound" = ps: with ps; [ pillow simplehound ]; "signal_messenger" = ps: with ps; [ pysignalclirestapi ]; "simplepush" = ps: with ps; [ ]; # missing inputs: simplepush "simplisafe" = ps: with ps; [ simplisafe-python ]; "simulated" = ps: with ps; [ ]; "sinch" = ps: with ps; [ ]; # missing inputs: clx-sdk-xms "siren" = ps: with ps; [ ]; "sisyphus" = ps: with ps; [ ]; # missing inputs: sisyphus-control "sky_hub" = ps: with ps; [ pyskyqhub ]; "skybeacon" = ps: with ps; [ pygatt ]; "skybell" = ps: with ps; [ skybellpy ]; "slack" = ps: with ps; [ slackclient ]; "sleepiq" = ps: with ps; [ asyncsleepiq ]; "slide" = ps: with ps; [ ]; # missing inputs: goslide-api "sma" = ps: with ps; [ pysma ]; "smappee" = ps: with ps; [ aiohttp-cors pysmappee ]; "smart_meter_texas" = ps: with ps; [ smart-meter-texas ]; "smartthings" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa pysmartapp pysmartthings ]; "smarttub" = ps: with ps; [ python-smarttub ]; "smarty" = ps: with ps; [ ]; # missing inputs: pysmarty "smhi" = ps: with ps; [ smhi-pkg ]; "sms" = ps: with ps; [ python-gammu ]; "smtp" = ps: with ps; [ ]; "snapcast" = ps: with ps; [ snapcast ]; "snips" = ps: with ps; [ aiohttp-cors paho-mqtt ]; "snmp" = ps: with ps; [ pysnmp ]; "solaredge" = ps: with ps; [ solaredge stringcase ]; "solaredge_local" = ps: with ps; [ ]; # missing inputs: solaredge-local "solarlog" = ps: with ps; [ sunwatcher ]; "solax" = ps: with ps; [ solax ]; "soma" = ps: with ps; [ pysoma ]; "somfy" = ps: with ps; [ aiohttp-cors pymfy ]; "somfy_mylink" = ps: with ps; [ somfy-mylink-synergy ]; "sonarr" = ps: with ps; [ aiopyarr ]; "songpal" = ps: with ps; [ python-songpal ]; "sonos" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr plexapi plexauth plexwebsocket soco spotipy zeroconf ]; "sony_projector" = ps: with ps; [ pysdcp ]; "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; "spc" = ps: with ps; [ pyspcwebgw ]; "speedtestdotnet" = ps: with ps; [ speedtest-cli ]; "spider" = ps: with ps; [ spiderpy ]; "splunk" = ps: with ps; [ ]; # missing inputs: hass_splunk "spotify" = ps: with ps; [ aiohttp-cors spotipy ]; "sql" = ps: with ps; [ sqlalchemy ]; "squeezebox" = ps: with ps; [ pysqueezebox ]; "srp_energy" = ps: with ps; [ srpenergy ]; "ssdp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "starline" = ps: with ps; [ starline ]; "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank "startca" = ps: with ps; [ xmltodict ]; "statistics" = ps: with ps; [ fnvhash lru-dict sqlalchemy ]; "statsd" = ps: with ps; [ statsd ]; "steam_online" = ps: with ps; [ ]; # missing inputs: steamodd "steamist" = ps: with ps; [ aiohttp-cors aiosteamist discovery30303 ifaddr ]; "stiebel_eltron" = ps: with ps; [ pymodbus ]; # missing inputs: pystiebeleltron "stookalert" = ps: with ps; [ ]; # missing inputs: stookalert "stream" = ps: with ps; [ pyturbojpeg aiohttp-cors av ]; "streamlabswater" = ps: with ps; [ streamlabswater ]; "stt" = ps: with ps; [ aiohttp-cors ]; "subaru" = ps: with ps; [ subarulink ]; "suez_water" = ps: with ps; [ ]; # missing inputs: pysuez "sun" = ps: with ps; [ ]; "supervisord" = ps: with ps; [ ]; "supla" = ps: with ps; [ ]; # missing inputs: asyncpysupla "surepetcare" = ps: with ps; [ surepy ]; "swiss_hydrological_data" = ps: with ps; [ swisshydrodata ]; "swiss_public_transport" = ps: with ps; [ python-opendata-transport ]; "swisscom" = ps: with ps; [ ]; "switch" = ps: with ps; [ ]; "switch_as_x" = ps: with ps; [ ]; "switchbot" = ps: with ps; [ pyswitchbot ]; "switcher_kis" = ps: with ps; [ aioswitcher ]; "switchmate" = ps: with ps; [ ]; # missing inputs: pySwitchmate "syncthing" = ps: with ps; [ aiosyncthing ]; "syncthru" = ps: with ps; [ pysyncthru url-normalize ]; "synology_chat" = ps: with ps; [ ]; "synology_dsm" = ps: with ps; [ py-synologydsm-api ]; "synology_srm" = ps: with ps; [ ]; # missing inputs: synology-srm "syslog" = ps: with ps; [ ]; "system_bridge" = ps: with ps; [ aiohttp-cors ifaddr systembridge zeroconf ]; "system_health" = ps: with ps; [ aiohttp-cors ]; "system_log" = ps: with ps; [ ]; "systemmonitor" = ps: with ps; [ psutil ]; "tado" = ps: with ps; [ python-tado ]; "tag" = ps: with ps; [ ]; "tailscale" = ps: with ps; [ tailscale ]; "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility "tankerkoenig" = ps: with ps; [ pytankerkoenig ]; "tapsaff" = ps: with ps; [ ]; # missing inputs: tapsaff "tasmota" = ps: with ps; [ aiohttp-cors hatasmota paho-mqtt ]; "tautulli" = ps: with ps; [ pytautulli ]; "tcp" = ps: with ps; [ ]; "ted5000" = ps: with ps; [ xmltodict ]; "telegram" = ps: with ps; [ pysocks aiohttp-cors python-telegram-bot ]; "telegram_bot" = ps: with ps; [ pysocks aiohttp-cors python-telegram-bot ]; "tellduslive" = ps: with ps; [ tellduslive ]; "tellstick" = ps: with ps; [ ]; # missing inputs: tellcore-net tellcore-py "telnet" = ps: with ps; [ ]; "temper" = ps: with ps; [ ]; # missing inputs: temperusb "template" = ps: with ps; [ ]; "tensorflow" = ps: with ps; [ numpy pillow pycocotools tensorflow ]; # missing inputs: tf-models-official "tesla_wall_connector" = ps: with ps; [ tesla-wall-connector ]; "tfiac" = ps: with ps; [ ]; # missing inputs: pytfiac "thermoworks_smoke" = ps: with ps; [ stringcase ]; # missing inputs: thermoworks_smoke "thethingsnetwork" = ps: with ps; [ ]; "thingspeak" = ps: with ps; [ ]; # missing inputs: thingspeak "thinkingcleaner" = ps: with ps; [ ]; # missing inputs: pythinkingcleaner "thomson" = ps: with ps; [ ]; "threshold" = ps: with ps; [ ]; "tibber" = ps: with ps; [ fnvhash lru-dict pytibber sqlalchemy ]; "tikteck" = ps: with ps; [ ]; # missing inputs: tikteck "tile" = ps: with ps; [ pytile ]; "time_date" = ps: with ps; [ ]; "timer" = ps: with ps; [ ]; "tmb" = ps: with ps; [ tmb ]; "tod" = ps: with ps; [ ]; "todoist" = ps: with ps; [ todoist ]; "tolo" = ps: with ps; [ tololib ]; "tomato" = ps: with ps; [ ]; "tomorrowio" = ps: with ps; [ ]; # missing inputs: pytomorrowio "toon" = ps: with ps; [ pyturbojpeg aiohttp-cors hass-nabucasa toonapi ]; "torque" = ps: with ps; [ aiohttp-cors ]; "totalconnect" = ps: with ps; [ total-connect-client ]; "touchline" = ps: with ps; [ ]; # missing inputs: pytouchline "tplink" = ps: with ps; [ aiohttp-cors ifaddr python-kasa ]; "tplink_lte" = ps: with ps; [ ]; # missing inputs: tp-connected "traccar" = ps: with ps; [ aiohttp-cors pytraccar stringcase ]; "trace" = ps: with ps; [ ]; "tractive" = ps: with ps; [ aiotractive ]; "tradfri" = ps: with ps; [ pytradfri ]; "trafikverket_train" = ps: with ps; [ pytrafikverket ]; "trafikverket_weatherstation" = ps: with ps; [ pytrafikverket ]; "transmission" = ps: with ps; [ transmissionrpc ]; "transport_nsw" = ps: with ps; [ pytransportnsw ]; "travisci" = ps: with ps; [ ]; # missing inputs: TravisPy "trend" = ps: with ps; [ numpy ]; "tts" = ps: with ps; [ aiohttp-cors mutagen ]; "tuya" = ps: with ps; [ ha-ffmpeg tuya-iot-py-sdk ]; "twentemilieu" = ps: with ps; [ twentemilieu ]; "twilio" = ps: with ps; [ aiohttp-cors twilio ]; "twilio_call" = ps: with ps; [ aiohttp-cors twilio ]; "twilio_sms" = ps: with ps; [ aiohttp-cors twilio ]; "twinkly" = ps: with ps; [ ttls ]; "twitch" = ps: with ps; [ twitchapi ]; "twitter" = ps: with ps; [ twitterapi ]; "ubus" = ps: with ps; [ openwrt-ubus-rpc ]; "ue_smart_radio" = ps: with ps; [ ]; "uk_transport" = ps: with ps; [ ]; "unifi" = ps: with ps; [ aiounifi ]; "unifi_direct" = ps: with ps; [ pexpect ]; "unifiled" = ps: with ps; [ unifiled ]; "unifiprotect" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pyunifiprotect unifi-discovery "universal" = ps: with ps; [ ]; "upb" = ps: with ps; [ upb-lib ]; "upc_connect" = ps: with ps; [ connect-box ]; "upcloud" = ps: with ps; [ upcloud-api ]; "update" = ps: with ps; [ ]; "updater" = ps: with ps; [ ]; "upnp" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr zeroconf ]; "uptime" = ps: with ps; [ ]; "uptimerobot" = ps: with ps; [ pyuptimerobot ]; "usb" = ps: with ps; [ aiohttp-cors pyserial pyudev ]; "uscis" = ps: with ps; [ ]; # missing inputs: uscisstatus "usgs_earthquakes_feed" = ps: with ps; [ geojson-client ]; "utility_meter" = ps: with ps; [ croniter ]; "uvc" = ps: with ps; [ uvcclient ]; "vacuum" = ps: with ps; [ ]; "vallox" = ps: with ps; [ ]; # missing inputs: vallox-websocket-api "vasttrafik" = ps: with ps; [ ]; # missing inputs: vtjp "velbus" = ps: with ps; [ aiohttp-cors pyserial pyudev velbus-aio ]; "velux" = ps: with ps; [ pyvlx ]; "venstar" = ps: with ps; [ venstarcolortouch ]; "vera" = ps: with ps; [ pyvera ]; "verisure" = ps: with ps; [ vsure ]; "versasense" = ps: with ps; [ pyversasense ]; "version" = ps: with ps; [ pyhaversion ]; "vesync" = ps: with ps; [ pyvesync ]; "viaggiatreno" = ps: with ps; [ ]; "vicare" = ps: with ps; [ pyvicare ]; "vilfo" = ps: with ps; [ vilfo-api-client ]; "vivotek" = ps: with ps; [ libpyvivotek ]; "vizio" = ps: with ps; [ pyvizio ]; "vlc" = ps: with ps; [ python-vlc ]; "vlc_telnet" = ps: with ps; [ aiovlc ]; "voicerss" = ps: with ps; [ ]; "volkszaehler" = ps: with ps; [ volkszaehler ]; "volumio" = ps: with ps; [ pyvolumio ]; "volvooncall" = ps: with ps; [ volvooncall ]; "vulcan" = ps: with ps; [ vulcan-api ]; "vultr" = ps: with ps; [ vultr ]; "w800rf32" = ps: with ps; [ ]; # missing inputs: pyW800rf32 "wake_on_lan" = ps: with ps; [ wakeonlan ]; "wallbox" = ps: with ps; [ wallbox ]; "waqi" = ps: with ps; [ waqiasync ]; "water_heater" = ps: with ps; [ ]; "waterfurnace" = ps: with ps; [ waterfurnace ]; "watson_iot" = ps: with ps; [ ]; # missing inputs: ibmiotf "watson_tts" = ps: with ps; [ ibm-watson ]; "watttime" = ps: with ps; [ aiowatttime ]; "waze_travel_time" = ps: with ps; [ wazeroutecalculator ]; "weather" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; "webostv" = ps: with ps; [ aiowebostv ]; "websocket_api" = ps: with ps; [ aiohttp-cors ]; "wemo" = ps: with ps; [ pywemo ]; "whirlpool" = ps: with ps; [ whirlpool-sixth-sense ]; "whois" = ps: with ps; [ whois ]; "wiffi" = ps: with ps; [ wiffi ]; "wilight" = ps: with ps; [ pywilight ]; "wirelesstag" = ps: with ps; [ ]; # missing inputs: wirelesstagpy "withings" = ps: with ps; [ aiohttp-cors ]; # missing inputs: withings-api "wiz" = ps: with ps; [ aiohttp-cors ifaddr pywizlight ]; "wled" = ps: with ps; [ wled ]; "wolflink" = ps: with ps; [ ]; # missing inputs: wolf_smartset "workday" = ps: with ps; [ holidays ]; "worldclock" = ps: with ps; [ ]; "worldtidesinfo" = ps: with ps; [ ]; "worxlandroid" = ps: with ps; [ ]; "wsdot" = ps: with ps; [ ]; "x10" = ps: with ps; [ ]; "xbox" = ps: with ps; [ aiohttp-cors xbox-webapi ]; "xbox_live" = ps: with ps; [ xboxapi ]; "xeoma" = ps: with ps; [ pyxeoma ]; "xiaomi" = ps: with ps; [ ha-ffmpeg ]; "xiaomi_aqara" = ps: with ps; [ pyxiaomigateway aiohttp-cors ifaddr netdisco zeroconf ]; "xiaomi_miio" = ps: with ps; [ construct micloud python-miio ]; "xiaomi_tv" = ps: with ps; [ pymitv ]; "xmpp" = ps: with ps; [ slixmpp ]; "xs1" = ps: with ps; [ ]; # missing inputs: xs1-api-client "yale_smart_alarm" = ps: with ps; [ yalesmartalarmclient ]; "yamaha" = ps: with ps; [ rxv ]; "yamaha_musiccast" = ps: with ps; [ aiohttp-cors aiomusiccast async-upnp-client ifaddr zeroconf ]; "yandex_transport" = ps: with ps; [ aioymaps ]; "yandextts" = ps: with ps; [ ]; "yeelight" = ps: with ps; [ aiohttp-cors async-upnp-client ifaddr yeelight zeroconf ]; "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower "yi" = ps: with ps; [ aioftp ha-ffmpeg ]; "youless" = ps: with ps; [ youless-api ]; "zabbix" = ps: with ps; [ py-zabbix ]; "zamg" = ps: with ps; [ ]; "zengge" = ps: with ps; [ bluepy ]; # missing inputs: zengge "zeroconf" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; "zerproc" = ps: with ps; [ pyzerproc ]; "zestimate" = ps: with ps; [ xmltodict ]; "zha" = ps: with ps; [ aiohttp-cors bellows ifaddr pyserial-asyncio pyserial pyudev zeroconf zha-quirks zigpy-deconz zigpy-xbee zigpy-zigate zigpy-znp zigpy ]; "zhong_hong" = ps: with ps; [ ]; # missing inputs: zhong_hong_hvac "ziggo_mediabox_xl" = ps: with ps; [ ]; # missing inputs: ziggo-mediabox-xl "zodiac" = ps: with ps; [ ]; "zone" = ps: with ps; [ ]; "zoneminder" = ps: with ps; [ zm-py ]; "zwave_js" = ps: with ps; [ aiohttp-cors pyserial pyudev zwave-js-server-python ]; "zwave_me" = ps: with ps; [ aiohttp-cors ifaddr url-normalize zeroconf ]; # missing inputs: zwave_me_ws }; # components listed in tests/components for which all dependencies are packaged supportedComponentsWithTests = [ "abode" "accuweather" "acmeda" "adax" "adguard" "advantage_air" "aemet" "agent_dvr" "air_quality" "airly" "airnow" "airthings" "airtouch4" "airvisual" "airzone" "alarm_control_panel" "alarmdecoder" "alert" "alexa" "almond" "ambee" "amberelectric" "ambiclimate" "ambient_station" "analytics" "androidtv" "apache_kafka" "api" "apple_tv" "apprise" "aprs" "arcam_fmj" "arlo" "aseko_pool_live" "asuswrt" "atag" "august" "aurora" "aurora_abb_powerone" "aussie_broadband" "auth" "automation" "awair" "aws" "axis" "azure_devops" "azure_event_hub" "balboa" "bayesian" "binary_sensor" "blackbird" "blebox" "blink" "blueprint" "bluetooth_le_tracker" "bmw_connected_drive" "bond" "bosch_shc" "braviatv" "broadlink" "brother" "bsblan" "buienradar" "button" "caldav" "calendar" "camera" "canary" "cast" "cert_expiry" "climate" "cloud" "cloudflare" "co2signal" "color_extractor" "comfoconnect" "command_line" "compensation" "config" "configurator" "control4" "conversation" "coolmaster" "coronavirus" "counter" "cover" "cpuspeed" "crownstone" "daikin" "darksky" "datadog" "debugpy" "deconz" "default_config" "deluge" "demo" "denonavr" "derivative" "device_automation" "device_sun_light_trigger" "device_tracker" "devolo_home_control" "devolo_home_network" "dexcom" "dhcp" "diagnostics" "dialogflow" "directv" "discord" "discovery" "dlna_dmr" "dlna_dms" "dnsip" "doorbird" "dsmr" "dte_energy_bridge" "duckdns" "dunehd" "dynalite" "eafm" "ecobee" "econet" "efergy" "elgato" "elkm1" "elmax" "emonitor" "emulated_hue" "emulated_kasa" "emulated_roku" "energy" "enocean" "enphase_envoy" "environment_canada" "epson" "esphome" "everlights" "evil_genius_labs" "ezviz" "faa_delays" "facebook" "facebox" "fail2ban" "fan" "feedreader" "ffmpeg" "fibaro" "fido" "file" "filesize" "filter" "fireservicerota" "firmata" "fjaraskupan" "flic" "flick_electric" "flipr" "flo" "flume" "flunearyou" "flux" "flux_led" "folder" "folder_watcher" "foobot" "forecast_solar" "foscam" "freebox" "freedns" "freedompro" "fritz" "fritzbox" "fritzbox_callmonitor" "fronius" "frontend" "garages_amsterdam" "gdacs" "generic" "generic_hygrostat" "generic_thermostat" "geo_location" "geo_rss_events" "geofency" "geonetnz_quakes" "geonetnz_volcano" "gios" "github" "glances" "goalzero" "gogogate2" "goodwe" "google" "google_assistant" "google_domains" "google_pubsub" "google_translate" "google_travel_time" "google_wifi" "gpslogger" "graphite" "gree" "group" "growatt_server" "guardian" "habitica" "hangouts" "harmony" "hassio" "hddtemp" "heos" "here_travel_time" "hisense_aehw4a1" "history" "history_stats" "hive" "hlk_sw16" "home_connect" "home_plus_control" "homeassistant" "homekit" "homekit_controller" "homematic" "homematicip_cloud" "homewizard" "honeywell" "html5" "http" "huawei_lte" "hue" "huisbaasje" "humidifier" "hunterdouglas_powerview" "hvv_departures" "hyperion" "ialarm" "iaqualink" "icloud" "ifttt" "ign_sismologia" "image" "image_processing" "imap_email_content" "influxdb" "input_boolean" "input_button" "input_datetime" "input_number" "input_select" "input_text" "insteon" "integration" "intellifire" "intent" "intent_script" "ios" "iotawatt" "ipma" "ipp" "iqvia" "islamic_prayer_times" "isy994" "izone" "jellyfin" "jewish_calendar" "juicenet" "keenetic_ndms2" "kira" "kmtronic" "knx" "kodi" "konnected" "kraken" "kulersky" "lastfm" "launch_library" "lcn" "light" "litterrobot" "local_file" "local_ip" "locative" "lock" "logbook" "logentries" "logger" "london_air" "lookin" "lovelace" "luftdaten" "lutron_caseta" "lyric" "mailbox" "manual" "manual_mqtt" "maxcube" "mazda" "media_player" "media_source" "melcloud" "meraki" "met" "met_eireann" "meteoclimatic" "microsoft_face" "microsoft_face_detect" "microsoft_face_identify" "mikrotik" "mill" "min_max" "minecraft_server" "minio" "mjpeg" "mobile_app" "modbus" "modem_callerid" "modern_forms" "mold_indicator" "moon" "motion_blinds" "motioneye" "mqtt" "mqtt_eventstream" "mqtt_json" "mqtt_room" "mqtt_statestream" "mullvad" "mutesync" "my" "myq" "mysensors" "mythicbeastsdns" "nam" "namecheapdns" "nanoleaf" "neato" "ness_alarm" "nest" "netatmo" "netgear" "network" "nexia" "nightscout" "nina" "no_ip" "notify" "notion" "nsw_rural_fire_service_feed" "nuki" "number" "nut" "nws" "nx584" "octoprint" "omnilogic" "onboarding" "oncue" "ondilo_ico" "onewire" "onvif" "open_meteo" "openalpr_cloud" "openalpr_local" "openerz" "opengarage" "openhardwaremonitor" "opentherm_gw" "openuv" "openweathermap" "opnsense" "overkiz" "ovo_energy" "owntracks" "p1_monitor" "panel_custom" "panel_iframe" "persistent_notification" "person" "philips_js" "pi_hole" "picnic" "ping" "plaato" "plant" "plex" "plugwise" "point" "poolsense" "profiler" "prometheus" "prosegur" "proximity" "pure_energie" "push" "pushbullet" "pvoutput" "pvpc_hourly_pricing" "python_script" "qld_bushfire" "rachio" "radarr" "radio_browser" "rainforest_eagle" "rainmachine" "random" "rdw" "recollect_waste" "recorder" "reddit" "remote" "renault" "rest" "rest_command" "rflink" "rfxtrx" "ridwell" "ring" "risco" "rituals_perfume_genie" "rmvtransport" "roku" "roomba" "roon" "rpi_power" "rss_feed_template" "rtsp_to_webrtc" "ruckus_unleashed" "safe_mode" "samsungtv" "scene" "scrape" "screenlogic" "script" "search" "season" "select" "sense" "senseme" "sensor" "sentry" "seventeentrack" "shell_command" "shelly" "shopping_list" "sia" "sigfox" "sighthound" "signal_messenger" "simplisafe" "simulated" "siren" "slack" "sleepiq" "sma" "smappee" "smart_meter_texas" "smartthings" "smarttub" "smhi" "smtp" "snips" "solaredge" "solarlog" "solax" "soma" "somfy" "somfy_mylink" "sonarr" "songpal" "sonos" "soundtouch" "spaceapi" "spc" "speedtestdotnet" "spider" "spotify" "sql" "squeezebox" "srp_energy" "ssdp" "starline" "startca" "statistics" "statsd" "steamist" "stream" "stt" "subaru" "sun" "surepetcare" "switch" "switch_as_x" "switchbot" "switcher_kis" "syncthing" "syncthru" "synology_dsm" "system_bridge" "system_health" "system_log" "tado" "tag" "tailscale" "tankerkoenig" "tasmota" "tcp" "telegram" "telegram_bot" "tellduslive" "template" "tesla_wall_connector" "threshold" "tibber" "tile" "time_date" "timer" "tod" "todoist" "tolo" "tomato" "toon" "totalconnect" "tplink" "traccar" "trace" "tractive" "tradfri" "trafikverket_train" "trafikverket_weatherstation" "transmission" "transport_nsw" "trend" "tts" "tuya" "twentemilieu" "twilio" "twinkly" "twitch" "uk_transport" "unifi" "unifi_direct" "universal" "upb" "upcloud" "update" "updater" "upnp" "uptime" "uptimerobot" "usb" "usgs_earthquakes_feed" "utility_meter" "uvc" "vacuum" "velbus" "venstar" "vera" "verisure" "version" "vesync" "vicare" "vilfo" "vizio" "vlc_telnet" "voicerss" "volumio" "vulcan" "vultr" "wake_on_lan" "wallbox" "water_heater" "watttime" "waze_travel_time" "weather" "webhook" "webostv" "websocket_api" "wemo" "whirlpool" "whois" "wiffi" "wilight" "wiz" "wled" "workday" "worldclock" "wsdot" "xbox" "xiaomi" "xiaomi_aqara" "xiaomi_miio" "yale_smart_alarm" "yamaha" "yamaha_musiccast" "yandex_transport" "yandextts" "yeelight" "youless" "zeroconf" "zerproc" "zha" "zodiac" "zone" "zwave_js" ]; }