# Generated by parse-requirements.py # Do not edit! { version = "2021.6.6"; 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; [ ]; "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 ]; "airvisual" = ps: with ps; [ pyairvisual ]; "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; [ aiohttp-cors ]; "almond" = ps: with ps; [ aiohttp-cors pyalmond ]; "alpha_vantage" = ps: with ps; [ alpha-vantage ]; "amazon_polly" = ps: with ps; [ boto3 ]; "ambiclimate" = ps: with ps; [ aiohttp-cors ambiclimate ]; "ambient_station" = ps: with ps; [ aioambient ]; "amcrest" = ps: with ps; [ amcrest ha-ffmpeg ]; "ampio" = ps: with ps; [ ]; # missing inputs: asmog "analytics" = ps: with ps; [ aiohttp-cors ]; "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; [ ]; # missing inputs: apcaccess "api" = ps: with ps; [ aiohttp-cors ]; "apns" = ps: with ps; [ ]; # missing inputs: apns2 "apple_tv" = ps: with ps; [ aiohttp-cors ifaddr netdisco 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 ]; "arduino" = ps: with ps; [ ]; # missing inputs: PyMata "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 ]; "asterisk_cdr" = ps: with ps; [ ]; # missing inputs: asterisk_mbox "asterisk_mbox" = ps: with ps; [ ]; # missing inputs: asterisk_mbox "asuswrt" = ps: with ps; [ aioasuswrt ]; "atag" = ps: with ps; [ pyatag ]; "aten_pe" = ps: with ps; [ atenpdu ]; "atome" = ps: with ps; [ ]; # missing inputs: pyatome "august" = ps: with ps; [ yalexs ]; "aurora" = ps: with ps; [ auroranoaa ]; "aurora_abb_powerone" = ps: with ps; [ ]; # missing inputs: aurorapy "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 ]; "baidu" = ps: with ps; [ ]; # missing inputs: baidu-aip "bayesian" = ps: with ps; [ ]; "bbb_gpio" = ps: with ps; [ ]; # missing inputs: Adafruit_BBIO "bbox" = ps: with ps; [ ]; # missing inputs: pybbox "beewi_smartclim" = ps: with ps; [ ]; # missing inputs: beewi_smartclim "bh1750" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense "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 ]; "blinkt" = ps: with ps; [ ]; # missing inputs: blinkt "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 ]; "bme280" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense "bme680" = ps: with ps; [ bme680 smbus-cffi ]; "bmp280" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-bmp280 "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 ]; "caldav" = ps: with ps; [ caldav ]; "calendar" = ps: with ps; [ aiohttp-cors ]; "camera" = ps: with ps; [ aiohttp-cors ]; "canary" = ps: with ps; [ ha-ffmpeg py-canary ]; "cast" = ps: with ps; [ 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; [ ]; # missing inputs: 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 ]; "climate" = ps: with ps; [ ]; "cloud" = ps: with ps; [ aiohttp-cors hass-nabucasa ]; "cloudflare" = ps: with ps; [ pycfdns ]; "cmus" = ps: with ps; [ ]; # missing inputs: pycmus "co2signal" = ps: with ps; [ ]; # missing inputs: 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 ]; "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 aiodiscover aiohttp-cors async-upnp-client defusedxml distro emoji hass-nabucasa home-assistant-frontend ifaddr netdisco pillow scapy sqlalchemy zeroconf ]; "delijn" = ps: with ps; [ pydelijn ]; "deluge" = ps: with ps; [ deluge-client ]; "demo" = ps: with ps; [ aiohttp-cors ]; "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 ]; "dexcom" = ps: with ps; [ pydexcom ]; "dhcp" = ps: with ps; [ aiodiscover scapy ]; "dht" = ps: with ps; [ ]; # missing inputs: adafruit-circuitpython-dht "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; [ discordpy ]; "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; [ async-upnp-client ]; "dnsip" = ps: with ps; [ aiodns ]; "dominos" = ps: with ps; [ aiohttp-cors ]; # missing inputs: pizzapi "doods" = ps: with ps; [ pillow ]; # missing inputs: 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; [ ]; # missing inputs: dynalite_devices "dyson" = ps: with ps; [ aiohttp-cors ifaddr libpurecool zeroconf ]; "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[scan] "edimax" = ps: with ps; [ pyedimax ]; "edl21" = ps: with ps; [ pysml ]; "ee_brightbox" = ps: with ps; [ eebrightbox ]; "efergy" = ps: with ps; [ ]; "egardia" = ps: with ps; [ pythonegardia ]; "eight_sleep" = ps: with ps; [ pyeight ]; "elgato" = ps: with ps; [ elgato ]; "eliqonline" = ps: with ps; [ ]; # missing inputs: eliqonline "elkm1" = ps: with ps; [ ]; # missing inputs: elkm1-lib "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 ]; "emulated_kasa" = ps: with ps; [ sense-energy ]; "emulated_roku" = ps: with ps; [ emulated-roku ]; "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; [ ]; # missing inputs: env_canada "envirophat" = ps: with ps; [ smbus-cffi ]; # missing inputs: envirophat "envisalink" = ps: with ps; [ pyenvisalink ]; "ephember" = ps: with ps; [ ]; # missing inputs: 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 ]; "essent" = ps: with ps; [ ]; # missing inputs: PyEssent "etherscan" = ps: with ps; [ ]; # missing inputs: python-etherscan-api "eufy" = ps: with ps; [ ]; # missing inputs: lakeside "everlights" = ps: with ps; [ pyeverlights ]; "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; [ ]; # missing inputs: fiblary3 "fido" = ps: with ps; [ pyfido ]; "file" = ps: with ps; [ ]; "filesize" = ps: with ps; [ ]; "filter" = ps: with ps; [ sqlalchemy ]; "fints" = ps: with ps; [ fints ]; "fireservicerota" = ps: with ps; [ pyfireservicerota ]; "firmata" = ps: with ps; [ pymata-express ]; "fitbit" = ps: with ps; [ aiohttp-cors fitbit ]; "fixer" = ps: with ps; [ fixerio ]; "fleetgo" = ps: with ps; [ ]; # missing inputs: ritassist "flexit" = ps: with ps; [ pymodbus ]; # missing inputs: pyflexit "flic" = ps: with ps; [ pyflic ]; "flick_electric" = ps: with ps; [ pyflick ]; "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; [ flux-led ]; "folder" = ps: with ps; [ ]; "folder_watcher" = ps: with ps; [ watchdog ]; "foobot" = ps: with ps; [ foobot-async ]; "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; [ ]; "fritz" = ps: with ps; [ fritzconnection ]; "fritzbox" = ps: with ps; [ pyfritzhome ]; "fritzbox_callmonitor" = ps: with ps; [ fritzconnection ]; "fritzbox_netmonitor" = ps: with ps; [ fritzconnection ]; "fronius" = ps: with ps; [ ]; # missing inputs: pyfronius "frontend" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow ]; "frontier_silicon" = ps: with ps; [ ]; # missing inputs: afsapi "futurenow" = ps: with ps; [ pyfnip ]; "garadget" = ps: with ps; [ ]; "garages_amsterdam" = ps: with ps; [ garages-amsterdam ]; "garmin_connect" = ps: with ps; [ garminconnect-ha ]; "gc100" = ps: with ps; [ ]; # missing inputs: python-gc100 "gdacs" = ps: with ps; [ aio-georss-gdacs ]; "generic" = ps: with ps; [ ]; "generic_thermostat" = ps: with ps; [ sqlalchemy ]; "geniushub" = ps: with ps; [ ]; # missing inputs: geniushub-client "geo_json_events" = ps: with ps; [ geojson-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; [ PyGithub ]; "gitlab_ci" = ps: with ps; [ python-gitlab ]; "gitter" = ps: with ps; [ ]; # missing inputs: gitterpy "glances" = ps: with ps; [ glances-api ]; "gntp" = ps: with ps; [ gntp ]; "goalfeed" = ps: with ps; [ ]; # missing inputs: pysher "goalzero" = ps: with ps; [ goalzero ]; "gogogate2" = ps: with ps; [ ismartgate ]; "google" = ps: with ps; [ google-api-python-client httplib2 oauth2client ]; "google_assistant" = ps: with ps; [ 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; [ ]; "gpmdp" = ps: with ps; [ websocket-client ]; "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 home-assistant-frontend pillow ]; "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; [ ]; # missing inputs: hikvision "hisense_aehw4a1" = ps: with ps; [ pyaehw4a1 ]; "history" = ps: with ps; [ aiohttp-cors sqlalchemy ]; "history_stats" = ps: with ps; [ 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 ]; "homeworks" = ps: with ps; [ ]; # missing inputs: 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 ]; "htu21d" = ps: with ps; [ smbus-cffi ]; # missing inputs: i2csense "huawei_lte" = ps: with ps; [ getmac huawei-lte-api stringcase url-normalize ]; "huawei_router" = ps: with ps; [ ]; "hue" = ps: with ps; [ aiohue ]; "huisbaasje" = ps: with ps; [ huisbaasje-client ]; "humidifier" = ps: with ps; [ ]; "hunterdouglas_powerview" = ps: with ps; [ ]; # missing inputs: 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; [ 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_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; [ ]; "intent" = ps: with ps; [ aiohttp-cors ]; "intent_script" = ps: with ps; [ ]; "intesishome" = ps: with ps; [ pyintesishome ]; "ios" = ps: with ps; [ aiohttp-cors ifaddr zeroconf ]; "iota" = ps: with ps; [ ]; # missing inputs: pyota "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 ]; "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 "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; [ 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; [ ]; # missing inputs: pylaunches "lcn" = ps: with ps; [ pypck ]; "lg_netcast" = ps: with ps; [ ]; # missing inputs: pylgnetcast "lg_soundbar" = ps: with ps; [ ]; # missing inputs: temescal "life360" = ps: with ps; [ ]; # missing inputs: life360 "lifx" = ps: with ps; [ aiolifx aiolifx-effects ]; "lifx_cloud" = ps: with ps; [ ]; "light" = ps: with ps; [ ]; "lightwave" = ps: with ps; [ ]; # missing inputs: 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; [ ]; "locative" = ps: with ps; [ aiohttp-cors ]; "lock" = ps: with ps; [ ]; "logbook" = ps: with ps; [ aiohttp-cors home-assistant-frontend 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 "loopenergy" = ps: with ps; [ ]; # missing inputs: pyloopenergy "lovelace" = ps: with ps; [ ]; "luci" = ps: with ps; [ openwrt-luci-rpc ]; "luftdaten" = ps: with ps; [ luftdaten ]; "lupusec" = ps: with ps; [ ]; # missing inputs: lupupy "lutron" = ps: with ps; [ pylutron ]; "lutron_caseta" = ps: with ps; [ aiolip pylutron-caseta ]; "lw12wifi" = ps: with ps; [ ]; # missing inputs: lw12 "lyft" = ps: with ps; [ ]; # missing inputs: lyft_rides "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 home-assistant-frontend pillow ]; "marytts" = ps: with ps; [ ]; # missing inputs: speak2mary "mastodon" = ps: with ps; [ mastodon-py ]; "matrix" = ps: with ps; [ matrix-client ]; "maxcube" = ps: with ps; [ ]; # missing inputs: maxcube-api "mazda" = ps: with ps; [ pymazda ]; "mcp23017" = ps: with ps; [ ]; # missing inputs: RPi.GPIO adafruit-circuitpython-mcp230xx "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; [ ]; # missing inputs: 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 "mhz19" = ps: with ps; [ pmsensor ]; "microsoft" = ps: with ps; [ ]; # missing inputs: pycsspeechtts "microsoft_face" = ps: with ps; [ aiohttp-cors ]; "microsoft_face_detect" = ps: with ps; [ aiohttp-cors ]; "microsoft_face_identify" = ps: with ps; [ aiohttp-cors ]; "miflora" = ps: with ps; [ bluepy ]; # missing inputs: miflora "mikrotik" = ps: with ps; [ librouteros ]; "mill" = ps: with ps; [ 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 aiohttp-cors emoji hass-nabucasa pillow ]; "mochad" = ps: with ps; [ ]; # missing inputs: pymochad "modbus" = ps: with ps; [ pymodbus ]; "modem_callerid" = ps: with ps; [ ]; # missing inputs: basicmodem "mold_indicator" = ps: with ps; [ ]; "monoprice" = ps: with ps; [ ]; # missing inputs: pymonoprice "moon" = ps: with ps; [ ]; "motion_blinds" = ps: with ps; [ ]; # missing inputs: motionblinds "motioneye" = ps: with ps; [ motioneye-client ]; "mpchc" = ps: with ps; [ ]; "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 home-assistant-frontend pillow ]; "mychevy" = ps: with ps; [ ]; # missing inputs: mychevy "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; [ ]; # missing inputs: mbddns "nad" = ps: with ps; [ nad-receiver ]; "nam" = ps: with ps; [ nettigo-air-monitor ]; "namecheapdns" = ps: with ps; [ defusedxml ]; "nanoleaf" = ps: with ps; [ pynanoleaf ]; "neato" = ps: with ps; [ aiohttp-cors pybotvac ]; "nederlandse_spoorwegen" = ps: with ps; [ nsapi ]; "nello" = ps: with ps; [ ]; # missing inputs: pynello "ness_alarm" = ps: with ps; [ ]; # missing inputs: nessclient "nest" = ps: with ps; [ aiohttp-cors ha-ffmpeg python-nest ]; # missing inputs: google-nest-sdm "netatmo" = ps: with ps; [ aiohttp-cors hass-nabucasa pyatmo ]; "netdata" = ps: with ps; [ netdata ]; "netgear" = ps: with ps; [ ]; # missing inputs: pynetgear "netgear_lte" = ps: with ps; [ ]; # missing inputs: 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; [ ]; "nightscout" = ps: with ps; [ ]; # missing inputs: py-nightscout "niko_home_control" = ps: with ps; [ ]; # missing inputs: niko-home-control "nilu" = ps: with ps; [ ]; # missing inputs: niluclient "nissan_leaf" = ps: with ps; [ ]; # missing inputs: pycarwings2 "nmap_tracker" = ps: with ps; [ getmac python-nmap ]; "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; [ ]; # missing inputs: 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; [ aiohttp-cors ifaddr netdisco zeroconf ]; "oem" = ps: with ps; [ ]; # missing inputs: oemthermostat "ohmconnect" = ps: with ps; [ defusedxml ]; "ombi" = ps: with ps; [ ]; # missing inputs: pyombi "omnilogic" = ps: with ps; [ omnilogic ]; "onboarding" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow ]; "ondilo_ico" = ps: with ps; [ aiohttp-cors ondilo ]; "onewire" = ps: with ps; [ ]; # missing inputs: pi1wire pyownet "onkyo" = ps: with ps; [ onkyo-eiscp ]; "onvif" = ps: with ps; [ ha-ffmpeg zeep ]; # missing inputs: WSDiscovery onvif-zeep-async "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; [ ]; # missing inputs: openevsewifi "openexchangerates" = ps: with ps; [ ]; "opengarage" = ps: with ps; [ ]; # missing inputs: 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 "orangepi_gpio" = ps: with ps; [ ]; # missing inputs: OPi.GPIO "oru" = ps: with ps; [ ]; # missing inputs: oru "orvibo" = ps: with ps; [ orvibo ]; "osramlightify" = ps: with ps; [ ]; # missing inputs: lightify "otp" = ps: with ps; [ pyotp ]; "ovo_energy" = ps: with ps; [ ovoenergy ]; "owntracks" = ps: with ps; [ pynacl aiohttp-cors hass-nabucasa paho-mqtt ]; "ozw" = ps: with ps; [ aiohttp-cors paho-mqtt python-openzwave-mqtt ]; "panasonic_bluray" = ps: with ps; [ ]; # missing inputs: panacotta "panasonic_viera" = ps: with ps; [ ]; # missing inputs: panasonic_viera "pandora" = ps: with ps; [ pexpect ]; "panel_custom" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow ]; "panel_iframe" = ps: with ps; [ aiohttp-cors home-assistant-frontend pillow ]; "pcal9535a" = ps: with ps; [ ]; # missing inputs: pcal9535a "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 ]; "pi4ioe5v9xxxx" = ps: with ps; [ ]; # missing inputs: pi4ioe5v9xxxx "pi_hole" = ps: with ps; [ hole ]; "picnic" = ps: with ps; [ python-picnic-api ]; "picotts" = ps: with ps; [ ]; "piglow" = ps: with ps; [ ]; # missing inputs: piglow "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; [ aiohttp-cors hass-nabucasa pyplaato ]; "plant" = ps: with ps; [ 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 ]; # missing inputs: 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 ]; "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 ]; "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; [ jsonpath xmltodict ]; "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 ]; # missing inputs: pyzbar "quantum_gateway" = ps: with ps; [ ]; # missing inputs: quantum-gateway "qvr_pro" = ps: with ps; [ ]; # missing inputs: pyqvrpro "qwikswitch" = ps: with ps; [ ]; # missing inputs: pyqwikswitch "rachio" = ps: with ps; [ aiohttp-cors hass-nabucasa rachiopy ]; "radarr" = ps: with ps; [ ]; "radiotherm" = ps: with ps; [ radiotherm ]; "rainbird" = ps: with ps; [ ]; # missing inputs: pyrainbird "raincloud" = ps: with ps; [ ]; # missing inputs: raincloudy "rainforest_eagle" = ps: with ps; [ ]; # missing inputs: eagle200_reader uEagle "rainmachine" = ps: with ps; [ regenmaschine ]; "random" = ps: with ps; [ ]; "raspihats" = ps: with ps; [ smbus-cffi ]; # missing inputs: raspihats "raspyrfm" = ps: with ps; [ ]; # missing inputs: raspyrfm-client "recollect_waste" = ps: with ps; [ aiorecollect ]; "recorder" = ps: with ps; [ 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 "repetier" = ps: with ps; [ ]; # missing inputs: pyrepetier "rest" = ps: with ps; [ jsonpath xmltodict ]; "rest_command" = ps: with ps; [ ]; "rflink" = ps: with ps; [ rflink ]; "rfxtrx" = ps: with ps; [ ]; # missing inputs: pyRFXtrx "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_gpio_pwm" = ps: with ps; [ ]; # missing inputs: pwmled "rpi_pfio" = ps: with ps; [ ]; # missing inputs: pifacecommon pifacedigitalio "rpi_power" = ps: with ps; [ ]; # missing inputs: rpi-bad-power "rpi_rf" = ps: with ps; [ ]; # missing inputs: rpi-rf "rss_feed_template" = ps: with ps; [ aiohttp-cors ]; "rtorrent" = ps: with ps; [ ]; "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; [ aiohttp-cors hass-nabucasa home-assistant-frontend pillow ]; "saj" = ps: with ps; [ ]; # missing inputs: pysaj "samsungtv" = ps: with ps; [ samsungctl samsungtvws wakeonlan ]; "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 ]; "sendgrid" = ps: with ps; [ sendgrid ]; "sense" = ps: with ps; [ sense-energy ]; "sensehat" = ps: with ps; [ ]; # missing inputs: sense-hat "sensibo" = ps: with ps; [ ]; # missing inputs: pysensibo "sensor" = ps: with ps; [ 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; [ ]; # missing inputs: py17track "sharkiq" = ps: with ps; [ sharkiqpy ]; "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 ]; "sht31" = ps: with ps; [ ]; # missing inputs: Adafruit-GPIO Adafruit-SHT31 "sia" = ps: with ps; [ pysiaalarm ]; "sigfox" = ps: with ps; [ ]; "sighthound" = ps: with ps; [ pillow simplehound ]; "signal_messenger" = ps: with ps; [ ]; # missing inputs: 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 "sisyphus" = ps: with ps; [ ]; # missing inputs: sisyphus-control "sky_hub" = ps: with ps; [ ]; # missing inputs: pyskyqhub "skybeacon" = ps: with ps; [ pygatt ]; "skybell" = ps: with ps; [ skybellpy ]; "slack" = ps: with ps; [ slackclient ]; "sleepiq" = ps: with ps; [ sleepyq ]; "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; [ ]; # missing inputs: smart-meter-texas "smarthab" = ps: with ps; [ smarthab ]; "smartthings" = ps: with ps; [ 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 ]; "sochain" = ps: with ps; [ ]; # missing inputs: python-sochain-api "solaredge" = ps: with ps; [ solaredge stringcase ]; "solaredge_local" = ps: with ps; [ ]; # missing inputs: solaredge-local "solarlog" = ps: with ps; [ ]; # missing inputs: sunwatcher "solax" = ps: with ps; [ solax ]; "soma" = ps: with ps; [ pysoma ]; "somfy" = ps: with ps; [ aiohttp-cors pymfy ]; "somfy_mylink" = ps: with ps; [ ]; # missing inputs: somfy-mylink-synergy "sonarr" = ps: with ps; [ sonarr ]; "songpal" = ps: with ps; [ python-songpal ]; "sonos" = ps: with ps; [ aiohttp-cors plexapi plexauth plexwebsocket pysonos ]; "sony_projector" = ps: with ps; [ ]; # missing inputs: pysdcp "soundtouch" = ps: with ps; [ aiohttp-cors ifaddr libsoundtouch zeroconf ]; "spaceapi" = ps: with ps; [ aiohttp-cors ]; "spc" = ps: with ps; [ ]; # missing inputs: 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 defusedxml ifaddr netdisco zeroconf ]; "starline" = ps: with ps; [ starline ]; "starlingbank" = ps: with ps; [ ]; # missing inputs: starlingbank "startca" = ps: with ps; [ xmltodict ]; "statistics" = ps: with ps; [ sqlalchemy ]; "statsd" = ps: with ps; [ statsd ]; "steam_online" = ps: with ps; [ ]; # missing inputs: steamodd "stiebel_eltron" = ps: with ps; [ pymodbus ]; # missing inputs: pystiebeleltron "stookalert" = ps: with ps; [ ]; # missing inputs: stookalert "stream" = ps: with ps; [ aiohttp-cors av ]; "streamlabswater" = ps: with ps; [ ]; # missing inputs: 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; [ ]; "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; [ 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; [ aiohttp-cors ]; "systemmonitor" = ps: with ps; [ psutil ]; "tado" = ps: with ps; [ python-tado ]; "tag" = ps: with ps; [ ]; "tahoma" = ps: with ps; [ tahoma-api ]; "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; [ ]; # missing inputs: 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" = ps: with ps; [ teslajsonpy ]; "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; [ pytibber ]; "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 ]; "tof" = ps: with ps; [ ]; # missing inputs: RPi.GPIO VL53L1X2 "tomato" = ps: with ps; [ ]; "toon" = ps: with ps; [ 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; [ pyhs100 ]; "tplink_lte" = ps: with ps; [ ]; # missing inputs: tp-connected "traccar" = ps: with ps; [ aiohttp-cors stringcase ]; # missing inputs: pytraccar "trace" = ps: with ps; [ ]; "trackr" = ps: with ps; [ ]; # missing inputs: pytrackr "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; [ ]; # missing inputs: PyTransportNSW "travisci" = ps: with ps; [ ]; # missing inputs: TravisPy "trend" = ps: with ps; [ numpy ]; "tts" = ps: with ps; [ aiohttp-cors mutagen ]; "tuya" = ps: with ps; [ tuyaha ]; "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; [ twinkly-client ]; "twitch" = ps: with ps; [ python-twitch-client ]; "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 ]; "universal" = ps: with ps; [ ]; "upb" = ps: with ps; [ upb-lib ]; "upc_connect" = ps: with ps; [ connect-box ]; "upcloud" = ps: with ps; [ upcloud-api ]; "updater" = ps: with ps; [ distro ]; "upnp" = ps: with ps; [ async-upnp-client ]; "uptime" = ps: with ps; [ ]; "uptimerobot" = ps: with ps; [ ]; # missing inputs: pyuptimerobot "uscis" = ps: with ps; [ ]; # missing inputs: uscisstatus "usgs_earthquakes_feed" = ps: with ps; [ geojson-client ]; "utility_meter" = ps: with ps; [ ]; "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; [ python-velbus ]; "velux" = ps: with ps; [ pyvlx ]; "venstar" = ps: with ps; [ venstarcolortouch ]; "vera" = ps: with ps; [ pyvera ]; "verisure" = ps: with ps; [ vsure ]; "versasense" = ps: with ps; [ ]; # missing inputs: 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; [ ]; # missing inputs: libpyvivotek "vizio" = ps: with ps; [ pyvizio ]; "vlc" = ps: with ps; [ python-vlc ]; "vlc_telnet" = ps: with ps; [ ]; # missing inputs: python-telnet-vlc "voicerss" = ps: with ps; [ ]; "volkszaehler" = ps: with ps; [ volkszaehler ]; "volumio" = ps: with ps; [ pyvolumio ]; "volvooncall" = ps: with ps; [ ]; # missing inputs: volvooncall "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 ]; "waze_travel_time" = ps: with ps; [ WazeRouteCalculator ]; "weather" = ps: with ps; [ ]; "webhook" = ps: with ps; [ aiohttp-cors ]; "webostv" = ps: with ps; [ aiopylgtv ]; "websocket_api" = ps: with ps; [ aiohttp-cors ]; "wemo" = ps: with ps; [ pywemo ]; "whois" = ps: with ps; [ python-whois ]; "wiffi" = ps: with ps; [ wiffi ]; "wilight" = ps: with ps; [ pywilight ]; "wink" = ps: with ps; [ aiohttp-cors pubnubsub-handler python-wink ]; "wirelesstag" = ps: with ps; [ ]; # missing inputs: wirelesstagpy "withings" = ps: with ps; [ aiohttp-cors ]; # missing inputs: withings-api "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; [ ]; "wunderground" = ps: with ps; [ ]; "x10" = ps: with ps; [ ]; "xbee" = ps: with ps; [ ]; # missing inputs: xbee-helper "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 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; [ ]; # missing inputs: pymusiccast "yandex_transport" = ps: with ps; [ aioymaps ]; "yandextts" = ps: with ps; [ ]; "yeelight" = ps: with ps; [ yeelight ]; "yeelightsunflower" = ps: with ps; [ ]; # missing inputs: yeelightsunflower "yi" = ps: with ps; [ aioftp ha-ffmpeg ]; "zabbix" = ps: with ps; [ ]; # missing inputs: py-zabbix "zamg" = ps: with ps; [ ]; "zengge" = ps: with ps; [ ]; # 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 zeroconf zha-quirks zigpy-cc 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" = ps: with ps; [ aiohttp-cors homeassistant-pyozw paho-mqtt pydispatcher python-openzwave-mqtt ]; "zwave_js" = ps: with ps; [ aiohttp-cors zwave-js-server-python ]; }; }