hass-core/homeassistant/generated/config_flows.py
Gleb Sinyavskiy 97eb4c6c62
Add syncthing integration (#38331)
* Scaffold the integration

* Add config flow data schema

* Handle configuration errors

* Get folder states

* Support https

* Fix translations

* Listen to syncthing events in a separate thread

* Bump syncthing

* Automatically reconnect to the syncthing server

* Renames

* Improve loading and unloading

* Update folder states from events

* Refactoring, handle FolderPaused event

* Dynamic folder icons

* Refactoring

* Mark folders as unavailable when senrver is unavailable

* Update folder satus when server is available

* Raise PlatformNotReady

* Implement additional polling

* Stop polling when the server is not available

* Minor fixes

* Remove logging

* Check name uniqueness

* Refactoring

* Minor refactorings

* Bump python-syncthing

* Migrate to aiosyncthing

* Minor fixes

* Update .coveragerc

* Set quality scale

* Bump aiosyncthing, properly handle invalid token

* Fix logging

* Fix logging

* Use CONF_VERIFY_SSL from homeassistant.const

* Bump aiosyncthing. Add Syncthing device

* Fix device name

* Bump aiosyncthing

* Bump aiosyncthing

* Extract SyncthingClient

* Add folder to device_state_attributes

* Do not pass the loop

* Cover config_flow.py

* Move self.async_create_entry outside of the try block

* Raise ConfigEntryNotReady if syncthing server is not reachable

* Fix already configured error message

* Change default name to Syncthing

* Bump aiosyncthing

* Fix formatting

* Fix formatting

* Fix tests

* Fix typo, use lis comprehension

* Fix typo, remove unused CONFIG_SCHEMA

* Bump aiosyncthing

* Remove periods from log messages W0001

* Fix tests

* Black, isort

* Remove empty items from manifest.json

* Fix variable naming

* Remove async_setup

* Use SensorEntity

* Use asyncio.create_task instead of self._hass.loop.create_task

* Do not pass hass to FolderSensor initializer

* Rename device_state_attributes to extra_state_attributes

* Use callbacks

* Simplify tests

* Refactor _listen()

* Use url for the title

* Use the url instead of the name to identify the config entry

* Explicitly set sensor attributes, extract _filter_state

* Use server url instead of name in device_info

* Use server url instead of name in logs

* User server id as a device identifier

* Use URL instead of name to identify config entry

* Use shortened server id instead of name to build entity name and unique id

* Do not use CONF_NAME

* Cleanup unused strings

* Cleanup unused strings

* Add IOT class

* Scaffold the integration

* Add config flow data schema

* Handle configuration errors

* Get folder states

* Support https

* Fix translations

* Listen to syncthing events in a separate thread

* Bump syncthing

* Automatically reconnect to the syncthing server

* Renames

* Improve loading and unloading

* Update folder states from events

* Refactoring, handle FolderPaused event

* Dynamic folder icons

* Refactoring

* Mark folders as unavailable when senrver is unavailable

* Update folder satus when server is available

* Raise PlatformNotReady

* Implement additional polling

* Stop polling when the server is not available

* Minor fixes

* Remove logging

* Check name uniqueness

* Refactoring

* Minor refactorings

* Bump python-syncthing

* Migrate to aiosyncthing

* Minor fixes

* Update .coveragerc

* Set quality scale

* Bump aiosyncthing, properly handle invalid token

* Fix logging

* Fix logging

* Use CONF_VERIFY_SSL from homeassistant.const

* Bump aiosyncthing. Add Syncthing device

* Fix device name

* Bump aiosyncthing

* Bump aiosyncthing

* Extract SyncthingClient

* Add folder to device_state_attributes

* Do not pass the loop

* Cover config_flow.py

* Move self.async_create_entry outside of the try block

* Raise ConfigEntryNotReady if syncthing server is not reachable

* Fix already configured error message

* Change default name to Syncthing

* Bump aiosyncthing

* Fix formatting

* Fix formatting

* Fix tests

* Fix typo, use lis comprehension

* Fix typo, remove unused CONFIG_SCHEMA

* Bump aiosyncthing

* Remove periods from log messages W0001

* Fix tests

* Black, isort

* Remove empty items from manifest.json

* Fix variable naming

* Remove async_setup

* Use SensorEntity

* Use asyncio.create_task instead of self._hass.loop.create_task

* Do not pass hass to FolderSensor initializer

* Rename device_state_attributes to extra_state_attributes

* Use callbacks

* Simplify tests

* Refactor _listen()

* Use url for the title

* Use the url instead of the name to identify the config entry

* Explicitly set sensor attributes, extract _filter_state

* Use server url instead of name in device_info

* Use server url instead of name in logs

* User server id as a device identifier

* Use URL instead of name to identify config entry

* Use shortened server id instead of name to build entity name and unique id

* Do not use CONF_NAME

* Cleanup unused strings

* Cleanup unused strings

* Add IOT class

* Apply suggestions from code review

* Clean up

* Fix dict comprehension

* Clean sensor

* Use the server ID as a config entry unique ID

* Remove the AlreadyConfigured exception

* Clean up old error string

* Format json

* Convert sensor attributes to snake case

* Force CI

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-08 19:12:14 +02:00

288 lines
4.5 KiB
Python

"""Automatically generated by hassfest.
To update, run python3 -m script.hassfest
"""
# fmt: off
FLOWS = [
"abode",
"accuweather",
"acmeda",
"adguard",
"advantage_air",
"aemet",
"agent_dvr",
"airly",
"airnow",
"airvisual",
"alarmdecoder",
"almond",
"ambiclimate",
"ambient_station",
"apple_tv",
"arcam_fmj",
"asuswrt",
"atag",
"august",
"aurora",
"awair",
"axis",
"azure_devops",
"blebox",
"blink",
"bmw_connected_drive",
"bond",
"braviatv",
"broadlink",
"brother",
"bsblan",
"buienradar",
"canary",
"cast",
"cert_expiry",
"climacell",
"cloudflare",
"control4",
"coolmaster",
"coronavirus",
"daikin",
"deconz",
"denonavr",
"devolo_home_control",
"dexcom",
"dialogflow",
"directv",
"doorbird",
"dunehd",
"dynalite",
"eafm",
"ecobee",
"econet",
"elgato",
"elkm1",
"emonitor",
"emulated_roku",
"enocean",
"enphase_envoy",
"epson",
"esphome",
"ezviz",
"faa_delays",
"fireservicerota",
"flick_electric",
"flo",
"flume",
"flunearyou",
"forked_daapd",
"foscam",
"freebox",
"fritz",
"fritzbox",
"fritzbox_callmonitor",
"garmin_connect",
"gdacs",
"geofency",
"geonetnz_quakes",
"geonetnz_volcano",
"gios",
"glances",
"goalzero",
"gogogate2",
"google_travel_time",
"gpslogger",
"gree",
"guardian",
"habitica",
"hangouts",
"harmony",
"heos",
"hisense_aehw4a1",
"hive",
"hlk_sw16",
"home_connect",
"home_plus_control",
"homekit",
"homekit_controller",
"homematicip_cloud",
"huawei_lte",
"hue",
"huisbaasje",
"hunterdouglas_powerview",
"hvv_departures",
"hyperion",
"ialarm",
"iaqualink",
"icloud",
"ifttt",
"insteon",
"ios",
"ipma",
"ipp",
"iqvia",
"islamic_prayer_times",
"isy994",
"izone",
"juicenet",
"keenetic_ndms2",
"kmtronic",
"kodi",
"konnected",
"kostal_plenticore",
"kulersky",
"life360",
"lifx",
"litejet",
"litterrobot",
"local_ip",
"locative",
"logi_circle",
"luftdaten",
"lutron_caseta",
"lyric",
"mailgun",
"mazda",
"melcloud",
"met",
"met_eireann",
"meteo_france",
"metoffice",
"mikrotik",
"mill",
"minecraft_server",
"mobile_app",
"monoprice",
"motion_blinds",
"motioneye",
"mqtt",
"mullvad",
"mutesync",
"myq",
"mysensors",
"nam",
"neato",
"nest",
"netatmo",
"nexia",
"nightscout",
"notion",
"nuheat",
"nuki",
"nut",
"nws",
"nzbget",
"omnilogic",
"ondilo_ico",
"onewire",
"onvif",
"opentherm_gw",
"openuv",
"openweathermap",
"ovo_energy",
"owntracks",
"ozw",
"panasonic_viera",
"philips_js",
"pi_hole",
"picnic",
"plaato",
"plex",
"plugwise",
"plum_lightpad",
"point",
"poolsense",
"powerwall",
"profiler",
"progettihwsw",
"ps4",
"pvpc_hourly_pricing",
"rachio",
"rainmachine",
"recollect_waste",
"rfxtrx",
"ring",
"risco",
"rituals_perfume_genie",
"roku",
"roomba",
"roon",
"rpi_power",
"ruckus_unleashed",
"samsungtv",
"screenlogic",
"sense",
"sentry",
"sharkiq",
"shelly",
"shopping_list",
"simplisafe",
"sma",
"smappee",
"smart_meter_texas",
"smarthab",
"smartthings",
"smarttub",
"smhi",
"sms",
"solaredge",
"solarlog",
"soma",
"somfy",
"somfy_mylink",
"sonarr",
"songpal",
"sonos",
"speedtestdotnet",
"spider",
"spotify",
"squeezebox",
"srp_energy",
"starline",
"subaru",
"syncthing",
"syncthru",
"synology_dsm",
"system_bridge",
"tado",
"tasmota",
"tellduslive",
"tesla",
"tibber",
"tile",
"toon",
"totalconnect",
"tplink",
"traccar",
"tradfri",
"transmission",
"tuya",
"twentemilieu",
"twilio",
"twinkly",
"unifi",
"upb",
"upcloud",
"upnp",
"velbus",
"vera",
"verisure",
"vesync",
"vilfo",
"vizio",
"volumio",
"waze_travel_time",
"wemo",
"wiffi",
"wilight",
"withings",
"wled",
"wolflink",
"xbox",
"xiaomi_aqara",
"xiaomi_miio",
"yeelight",
"zerproc",
"zha",
"zwave",
"zwave_js"
]