Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2023-02-19 18:35:52 +01:00
commit 42e0e189f9
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
117 changed files with 4206 additions and 447 deletions

View File

@ -41,6 +41,7 @@ source/_integrations/analytics.markdown @home-assistant/core @ludeeus
source/_integrations/android_ip_webcam.markdown @engrbm87
source/_integrations/androidtv.markdown @JeffLIrion @ollo69
source/_integrations/anthemav.markdown @hyralex
source/_integrations/anwb_energie.markdown @klaasnicolaas
source/_integrations/apache_kafka.markdown @bachya
source/_integrations/apcupsd.markdown @yuxincs
source/_integrations/api.markdown @home-assistant/core
@ -84,6 +85,7 @@ source/_integrations/bluemaestro.markdown @bdraco
source/_integrations/blueprint.markdown @home-assistant/core
source/_integrations/bluesound.markdown @thrawnarn
source/_integrations/bluetooth.markdown @bdraco
source/_integrations/bluetooth_adapters.markdown @bdraco
source/_integrations/bmw_connected_drive.markdown @gerard33 @rikroe
source/_integrations/bond.markdown @bdraco @prystupa @joshs85 @marciogranzotto
source/_integrations/bosch_shc.markdown @tschamm
@ -152,6 +154,7 @@ source/_integrations/digital_ocean.markdown @fabaff
source/_integrations/discogs.markdown @thibmaek
source/_integrations/discord.markdown @tkdrob
source/_integrations/discovery.markdown @home-assistant/core
source/_integrations/dlink.markdown @tkdrob
source/_integrations/dlna_dmr.markdown @StevenLooman @chishm
source/_integrations/dlna_dms.markdown @chishm
source/_integrations/dnsip.markdown @gjohansson-ST
@ -178,7 +181,9 @@ source/_integrations/emoncms.markdown @borpin
source/_integrations/emonitor.markdown @bdraco
source/_integrations/emulated_hue.markdown @bdraco
source/_integrations/emulated_kasa.markdown @kbickar
source/_integrations/energie_vanons.markdown @klaasnicolaas
source/_integrations/energy.markdown @home-assistant/core
source/_integrations/energyzero.markdown @klaasnicolaas
source/_integrations/enigma2.markdown @fbradyirl
source/_integrations/enocean.markdown @bdurrer
source/_integrations/enphase_envoy.markdown @gtdiehl
@ -203,6 +208,7 @@ source/_integrations/file.markdown @fabaff
source/_integrations/file_upload.markdown @home-assistant/core
source/_integrations/filesize.markdown @gjohansson-ST
source/_integrations/filter.markdown @dgomes
source/_integrations/fire_tv.markdown @JeffLIrion @ollo69
source/_integrations/fireservicerota.markdown @cyberjunky
source/_integrations/firmata.markdown @DaAwesomeP
source/_integrations/fivem.markdown @Sander0542
@ -248,6 +254,7 @@ source/_integrations/google.markdown @allenporter
source/_integrations/google_assistant.markdown @home-assistant/cloud
source/_integrations/google_assistant_sdk.markdown @tronikos
source/_integrations/google_cloud.markdown @lufton
source/_integrations/google_mail.markdown @tkdrob
source/_integrations/google_sheets.markdown @tkdrob
source/_integrations/google_travel_time.markdown @eifinger
source/_integrations/govee_ble.markdown @bdraco @PierreAronnax
@ -284,7 +291,7 @@ source/_integrations/homekit.markdown @bdraco
source/_integrations/homekit_controller.markdown @Jc2k @bdraco
source/_integrations/homematic.markdown @pvizeli @danielperna84
source/_integrations/homewizard.markdown @DCSBL
source/_integrations/honeywell.markdown @rdfurman
source/_integrations/honeywell.markdown @rdfurman @mkmer
source/_integrations/http.markdown @home-assistant/core
source/_integrations/huawei_lte.markdown @scop @fphammerle
source/_integrations/hue.markdown @balloob @marcelveldt
@ -303,6 +310,7 @@ source/_integrations/icloud.markdown @Quentame @nzapponi
source/_integrations/ign_sismologia.markdown @exxamalte
source/_integrations/image_processing.markdown @home-assistant/core
source/_integrations/image_upload.markdown @home-assistant/core
source/_integrations/imap.markdown @engrbm87
source/_integrations/incomfort.markdown @zxdavb
source/_integrations/influxdb.markdown @mdegat01
source/_integrations/inkbird.markdown @bdraco
@ -340,6 +348,7 @@ source/_integrations/kef.markdown @basnijholt
source/_integrations/kegtron.markdown @Ernst79
source/_integrations/keyboard_remote.markdown @bendavid @lanrat
source/_integrations/keymitt_ble.markdown @spycle
source/_integrations/kitchen_sink.markdown @home-assistant/core
source/_integrations/kmtronic.markdown @dgomes
source/_integrations/knx.markdown @Julius2342 @farmio @marvin-w
source/_integrations/kodi.markdown @OnFreund @cgtobi
@ -383,7 +392,6 @@ source/_integrations/lyric.markdown @timmo001
source/_integrations/marantz.markdown @ol-iver @starkillerOG
source/_integrations/martec.markdown @starkillerOG
source/_integrations/mastodon.markdown @fabaff
source/_integrations/matrix.markdown @tinloaf
source/_integrations/mazda.markdown @bdr99
source/_integrations/meater.markdown @Sotolotl @emontnemery
source/_integrations/media_player.markdown @home-assistant/core
@ -398,6 +406,7 @@ source/_integrations/meteo_france.markdown @hacf-fr @oncleben31 @Quentame
source/_integrations/meteoalarm.markdown @rolfberkenbosch
source/_integrations/meteoclimatic.markdown @adrianmo
source/_integrations/metoffice.markdown @MrHarcombe @avee87
source/_integrations/mijndomein_energie.markdown @klaasnicolaas
source/_integrations/mikrotik.markdown @engrbm87
source/_integrations/mill.markdown @danielhiversen
source/_integrations/min_max.markdown @gjohansson-ST
@ -411,6 +420,7 @@ source/_integrations/modern_forms.markdown @wonderslug
source/_integrations/moehlenhoff_alpha2.markdown @j-a-n
source/_integrations/monoprice.markdown @etsinko @OnFreund
source/_integrations/moon.markdown @fabaff @frenck
source/_integrations/mopeka.markdown @bdraco
source/_integrations/motion_blinds.markdown @starkillerOG
source/_integrations/motioneye.markdown @dermotduffy
source/_integrations/mqtt.markdown @emontnemery @jbouwh
@ -469,6 +479,7 @@ source/_integrations/ondilo_ico.markdown @JeromeHXP
source/_integrations/onewire.markdown @garbled1 @epenet
source/_integrations/onvif.markdown @hunterjm
source/_integrations/open_meteo.markdown @frenck
source/_integrations/openai_conversation.markdown @balloob
source/_integrations/openerz.markdown @misialq
source/_integrations/openexchangerates.markdown @MartinHjelmare
source/_integrations/opengarage.markdown @danielhiversen
@ -477,8 +488,9 @@ source/_integrations/opentherm_gw.markdown @mvn23
source/_integrations/openuv.markdown @bachya
source/_integrations/openweathermap.markdown @fabaff @freekode @nzapponi
source/_integrations/opnsense.markdown @mtreinish
source/_integrations/oralb.markdown @bdraco
source/_integrations/oralb.markdown @bdraco @Lash-L
source/_integrations/oru.markdown @bvlaicu
source/_integrations/otbr.markdown @home-assistant/core
source/_integrations/overkiz.markdown @imicknl @vlebourl @tetienne @nyroDev
source/_integrations/ovo_energy.markdown @timmo001
source/_integrations/p1_monitor.markdown @klaasnicolaas
@ -497,7 +509,7 @@ source/_integrations/plugwise.markdown @CoMPaTech @bouwew @brefra @frenck
source/_integrations/plum_lightpad.markdown @ColinHarrington @prystupa
source/_integrations/point.markdown @fredrike
source/_integrations/poolsense.markdown @haemishkyd
source/_integrations/powerwall.markdown @bdraco @jrester
source/_integrations/powerwall.markdown @bdraco @jrester @daniel-simpson
source/_integrations/profiler.markdown @bdraco
source/_integrations/progettihwsw.markdown @ardaseremet
source/_integrations/prometheus.markdown @knyar
@ -535,6 +547,7 @@ source/_integrations/recorder.markdown @home-assistant/core
source/_integrations/rejseplanen.markdown @DarkFox
source/_integrations/remote.markdown @home-assistant/core
source/_integrations/renault.markdown @epenet
source/_integrations/reolink.markdown @starkillerOG
source/_integrations/repairs.markdown @home-assistant/core
source/_integrations/repetier.markdown @MTrab @ShadowBr0ther
source/_integrations/rexel.markdown @imicknl @vlebourl @tetienne @nyroDev
@ -553,7 +566,9 @@ source/_integrations/rpi_power.markdown @shenxn @swetoast
source/_integrations/rss_feed_template.markdown @home-assistant/core
source/_integrations/rtsp_to_webrtc.markdown @allenporter
source/_integrations/ruckus_unleashed.markdown @gabe565
source/_integrations/ruuvi_gateway.markdown @akx
source/_integrations/ruuvitag_ble.markdown @akx
source/_integrations/rympro.markdown @OnFreund
source/_integrations/sabnzbd.markdown @shaiu
source/_integrations/safe_mode.markdown @home-assistant/core
source/_integrations/saj.markdown @fredericvl
@ -580,6 +595,7 @@ source/_integrations/sentry.markdown @dcramer @frenck
source/_integrations/senz.markdown @milanmeu
source/_integrations/serial.markdown @fabaff
source/_integrations/seven_segments.markdown @fabaff
source/_integrations/sfr_box.markdown @epenet
source/_integrations/sharkiq.markdown @JeffResc @funkybunch @AritroSaha10
source/_integrations/shell_command.markdown @home-assistant/core
source/_integrations/shelly.markdown @balloob @bieniu @thecode @chemelli74 @bdraco
@ -631,11 +647,13 @@ source/_integrations/sql.markdown @dgomes @gjohansson-ST
source/_integrations/squeezebox.markdown @rajlaud
source/_integrations/srp_energy.markdown @briglx
source/_integrations/starline.markdown @anonym-tsk
source/_integrations/starlink.markdown @boswelja
source/_integrations/statistics.markdown @fabaff @ThomDietrich
source/_integrations/steam_online.markdown @tkdrob
source/_integrations/steamist.markdown @bdraco
source/_integrations/stiebel_eltron.markdown @fucm
source/_integrations/stookalert.markdown @fwestenberg @frenck
source/_integrations/stookwijzer.markdown @fwestenberg
source/_integrations/stream.markdown @hunterjm @uvjustin @allenporter
source/_integrations/stt.markdown @pvizeli
source/_integrations/subaru.markdown @G-Two
@ -673,6 +691,7 @@ source/_integrations/thermobeacon.markdown @bdraco
source/_integrations/thermoplus.markdown @bdraco
source/_integrations/thermopro.markdown @bdraco
source/_integrations/thethingsnetwork.markdown @fabaff
source/_integrations/thread.markdown @home-assistant/core
source/_integrations/threshold.markdown @fabaff
source/_integrations/tibber.markdown @danielhiversen
source/_integrations/tile.markdown @bachya
@ -736,10 +755,10 @@ source/_integrations/watttime.markdown @bachya
source/_integrations/waze_travel_time.markdown @eifinger
source/_integrations/weather.markdown @home-assistant/core
source/_integrations/webhook.markdown @home-assistant/core
source/_integrations/webostv.markdown @bendavid @thecode
source/_integrations/webostv.markdown @thecode
source/_integrations/websocket_api.markdown @home-assistant/core
source/_integrations/wemo.markdown @esev
source/_integrations/whirlpool.markdown @abmantis
source/_integrations/whirlpool.markdown @abmantis @mkmer
source/_integrations/whois.markdown @frenck
source/_integrations/wiffi.markdown @mampfes
source/_integrations/wilight.markdown @leofig-rj
@ -771,9 +790,10 @@ source/_integrations/zamg.markdown @killer0071234
source/_integrations/zengge.markdown @emontnemery
source/_integrations/zeroconf.markdown @bdraco
source/_integrations/zerproc.markdown @emlove
source/_integrations/zeversolar.markdown @kvanzuijlen
source/_integrations/zha.markdown @dmulcahey @adminiuga @puddly
source/_integrations/zodiac.markdown @JulienTant
source/_integrations/zone.markdown @home-assistant/core
source/_integrations/zoneminder.markdown @rohankapoorcom
source/_integrations/zwave_js.markdown @home-assistant/z-wave
source/_integrations/zwave_me.markdown @lawfulchaos @Z-Wave-Me
source/_integrations/zwave_me.markdown @lawfulchaos @Z-Wave-Me @PoltoS

View File

@ -20,7 +20,7 @@ group :jekyll_plugins do
end
gem 'sinatra', '3.0.5'
gem 'nokogiri', '1.14.1'
gem 'nokogiri', '1.14.2'
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library

View File

@ -27,8 +27,8 @@ GEM
ffi (1.15.5)
ffi (1.15.5-x64-mingw32)
forwardable-extended (2.6.0)
google-protobuf (3.21.12)
google-protobuf (3.21.12-x64-mingw32)
google-protobuf (3.22.0)
google-protobuf (3.22.0-x64-mingw32)
http_parser.rb (0.8.0)
i18n (1.12.0)
concurrent-ruby (~> 1.0)
@ -73,10 +73,10 @@ GEM
multi_json (1.15.0)
mustermann (3.0.0)
ruby2_keywords (~> 0.0.1)
nokogiri (1.14.1)
nokogiri (1.14.2)
mini_portile2 (~> 2.8.0)
racc (~> 1.4)
nokogiri (1.14.1-x64-mingw32)
nokogiri (1.14.2-x64-mingw32)
racc (~> 1.4)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
@ -90,14 +90,14 @@ GEM
rb-inotify (0.10.1)
ffi (~> 1.0)
rexml (3.2.5)
rouge (4.0.1)
rouge (4.1.0)
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass (3.4.25)
sass-embedded (1.57.1)
sass-embedded (1.58.2)
google-protobuf (~> 3.21)
rake (>= 10.0.0)
sass-embedded (1.57.1-x64-mingw32)
sass-embedded (1.58.2-x64-mingw32)
google-protobuf (~> 3.21)
sass-globbing (1.1.5)
sass (>= 3.1)
@ -132,7 +132,7 @@ DEPENDENCIES
jekyll-paginate (= 1.1.0)
jekyll-sitemap (= 1.4.0)
jekyll-toc (= 0.18.0)
nokogiri (= 1.14.1)
nokogiri (= 1.14.2)
rake (= 13.0.6)
sass-globbing (= 1.1.5)
sassc (= 2.1.0)

View File

@ -109,9 +109,9 @@ social:
# Home Assistant release details
current_major_version: 2023
current_minor_version: 1
current_patch_version: 7
date_released: 2023-01-22
current_minor_version: 2
current_patch_version: 5
date_released: 2023-02-15
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

348
package-lock.json generated
View File

@ -14,7 +14,7 @@
"remark-lint-fenced-code-flag": "^3.1.1",
"remark-lint-no-shell-dollars": "^3.1.1",
"remark-stringify": "^10.0.2",
"textlint": "^13.1.0",
"textlint": "^13.3.0",
"textlint-filter-rule-comments": "^1.2.2",
"textlint-rule-common-misspellings": "^1.0.1",
"textlint-rule-terminology": "^3.0.4"
@ -228,59 +228,59 @@
"dev": true
},
"node_modules/@textlint/ast-node-types": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-13.1.0.tgz",
"integrity": "sha512-Lees6mOme6qP8vDcsM/VskiPeHi+z8Tb6LKBb3F0Y/0UBsFo6X7+njDIjtXvO4T48R57srxpa1hyNnjHop4Uog==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-13.3.0.tgz",
"integrity": "sha512-5PGZhAxOJ987c311SayvjGNkcVuX/Dr3k+H/FJDmS/wDcgZ0lEAdJzjCKn9USXXf2r+i14kZCbhzg8V01KSyKg==",
"dev": true
},
"node_modules/@textlint/ast-tester": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-13.1.0.tgz",
"integrity": "sha512-4xkKQpBC1MyHz4B1YgQfYIdxJLZhpfXgdgIYc9WDC2AESnhM75I7LUElY3bDUDMGhP99E4H1Ix5C+CftYqvIHA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-13.3.0.tgz",
"integrity": "sha512-LwGd7JjHNXekgCA4BmE39S9fQrgDHJLk2MSf5+uPdUWQM2ojL/RQiyucghxwGdKib+1DutcPrbJSM4SdT1HWSQ==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"debug": "^4.3.4"
}
},
"node_modules/@textlint/ast-traverse": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-13.1.0.tgz",
"integrity": "sha512-253DKapEjr6L9kx2npNvhaJTmoOJBw38w0D2cvUuHAZv9sx7U5G1aej9ScnIIyIcSotIcDFAVt3B+afA5KMCTA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-13.3.0.tgz",
"integrity": "sha512-bF0OeKlOtE8f9pNKRlgXqCdApZPYCj7n2Ty3DHvGbumC+rC5tapQuIioxwKKC11deQY1nsYTf2gaYV52SdFS6Q==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"node_modules/@textlint/config-loader": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-13.1.0.tgz",
"integrity": "sha512-hQmGt9H9ozeLo2PGETTNrvEYGsA7c+svtldpUT2fBQ9uclWruUK1h8+BPOIqzH0YjTyvMTTajtGhibbu1bZ3/A==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-13.3.0.tgz",
"integrity": "sha512-CZ088hUWjY360MOGDIZkVw2Ln8zLc/3BlMCE4FDsPX1ojKXcJX2vL+9YRVK5gDZYL3+W4mFHGJUkvEmTnroG9g==",
"dev": true,
"dependencies": {
"@textlint/kernel": "^13.1.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/kernel": "^13.3.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"rc-config-loader": "^4.1.2",
"try-resolve": "^1.0.1"
}
},
"node_modules/@textlint/feature-flag": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-13.1.0.tgz",
"integrity": "sha512-YolfMMWZ+8bJWVFl7gu+SgiZT/b9Q+QS6HyAco6o2zDE09GbDofu/MLGNmYqTst4YBPkuyEJ5oGlv395CT23FQ==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-13.3.0.tgz",
"integrity": "sha512-GhMH0UiwQPPjyngvmybw637g6GHdwFVnZj0XpQBKG6W+bQO5ubsc/jsox2E+PgNwRYwlaSOf/hR69BuHtCZyZg==",
"dev": true
},
"node_modules/@textlint/fixer-formatter": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-13.1.0.tgz",
"integrity": "sha512-gb+GPnddmniGpJPC8dQI2iqOciiseQBjHbpmqc1vzrDa+BGsRglcFP6MD24Jak6xwDhsDJtyjvCSRTTvSvkV8g==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-13.3.0.tgz",
"integrity": "sha512-zVZHjnUVCL1yuW7dBwGwPJmyM1xZXBzkC3ADvB9n0Sz9EYSF0903bg0cXy3oZtdbllIXDxuMkUHbhfJReZOYeA==",
"dev": true,
"dependencies": {
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"chalk": "^4.1.2",
"debug": "^4.3.4",
"diff": "^4.0.2",
@ -292,18 +292,18 @@
}
},
"node_modules/@textlint/kernel": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-13.1.0.tgz",
"integrity": "sha512-t/imOABHI6SicIBvGqMONjRustBoCJtuZgD8fYdelsxdcaO07ukbv/puYSYwNQepQ9KXcWSfeTLy+7zgbFW/hg==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-13.3.0.tgz",
"integrity": "sha512-vrFpvuNlqDxA9uNvkw43FZs9DKRRWejCzo3iIL7QGIqXoEVa2yQyKgi4rjsfkUQlU7NW8McPL0lUEKkwH0XD2w==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-tester": "^13.1.0",
"@textlint/ast-traverse": "^13.1.0",
"@textlint/feature-flag": "^13.1.0",
"@textlint/source-code-fixer": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"@textlint/ast-tester": "^13.3.0",
"@textlint/ast-traverse": "^13.3.0",
"@textlint/feature-flag": "^13.3.0",
"@textlint/source-code-fixer": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"fast-equals": "^4.0.3",
"structured-source": "^4.0.0"
@ -325,15 +325,15 @@
}
},
"node_modules/@textlint/linter-formatter": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-13.1.0.tgz",
"integrity": "sha512-JaAUTsuPDoMmFUravEDP2pCyB8npr8q0bjbrYJWVZqTDHAPRWxdU0HFtOhc6cprb6DOkSkbioq/ojj2DjYx3gQ==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-13.3.0.tgz",
"integrity": "sha512-ngf17z3ugKpnZ5oGcvVACrM/LZi/Mgj6iZl3ZdzyR91bIayBA1wzi9aty2XO+M0TVpOnKyBAfNg1VY4iO33pdQ==",
"dev": true,
"dependencies": {
"@azu/format-text": "^1.0.1",
"@azu/style-format": "^1.0.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"chalk": "^4.1.2",
"debug": "^4.3.4",
"is-file": "^1.0.0",
@ -349,12 +349,12 @@
}
},
"node_modules/@textlint/markdown-to-ast": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-13.1.0.tgz",
"integrity": "sha512-pPzxLuAOv0luOh4uUG/H/dq77/C5SiLiUx2qMAEaOZrfF6dl46bIDXUSbtryFBV8Nrpj3kUE3s4al9vPTOUFWA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-13.3.0.tgz",
"integrity": "sha512-TCw8HN9vwVuo7oXb9NSwSjnCfM2TB0IgLxF75CU90R4MrsQYZ7HZTJxPXhYqQFzAYxFyHZrzEhxodYCry2EChw==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"debug": "^4.3.4",
"mdast-util-gfm-autolink-literal": "^0.1.3",
"remark-footnotes": "^3.0.0",
@ -684,61 +684,61 @@
}
},
"node_modules/@textlint/module-interop": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-13.1.0.tgz",
"integrity": "sha512-j3nJZ5rU6U+mxjAWXLAdGJyVuLs0RpHFQKVXapeKVt0JNhix+VDXTCGPw3eSRlno1BPSoxgmQhEHdal3/PeH9w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-13.3.0.tgz",
"integrity": "sha512-3u5gZR8NL3yKHCh7QDttTNYmKMyfx55NmRfS1HalGFTIgaHwAFCz95KX7JA3WhpIa9Hu7zKlaxA1WGUnJDHLyA==",
"dev": true
},
"node_modules/@textlint/source-code-fixer": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-13.1.0.tgz",
"integrity": "sha512-zMDPhouqnp2ey8bGKbMaK3+kNsLa0r6eA41w+8LBKbDUY+vhuw6cQ99BeZfAD9tehMuAuI/kQLIgVvwPchU6qw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-13.3.0.tgz",
"integrity": "sha512-zLTmp8XyuksW90u0Y24wNALKd2xuieI/Vc40RKAYMEJL+sYyL0O2gYllnjcgQtLMz1wzy7rEXHMxvp/dvPX6/w==",
"dev": true,
"dependencies": {
"@textlint/types": "^13.1.0",
"@textlint/types": "^13.3.0",
"debug": "^4.3.4"
}
},
"node_modules/@textlint/text-to-ast": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-13.1.0.tgz",
"integrity": "sha512-5Gzg0CCl5F2ckyhbyRYf2yyBuXZEA7P3UVvRS0Zc/Tr6I/jtOROAZPTlsDrG1HwNd7iR+NqT3PtfKmL5gLt/AA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-13.3.0.tgz",
"integrity": "sha512-d8eN3WDWC27Pd8DpREMIWGEAp4GNiIzDQRezL4az3OLwS4yUsqUh3g2Q9cj7Vm7l3kmrs/0LFl+yxEaklk64Kw==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"node_modules/@textlint/textlint-plugin-markdown": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-13.1.0.tgz",
"integrity": "sha512-CqqOORpmxdFkN6ZguQV+sMJ/uFOIVAps9IbeF3zkygQcHzD3/scojBdIM5GEDG1gdRZvdNeAfbcZNVyUEIK3Rg==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-13.3.0.tgz",
"integrity": "sha512-p6+dOuLKo05ZvujnhQcQc95PIPevF8gqvzb2/7iNsJH1BhH2IjJXVZzEalIMBNnP8ieOb8Fhee51OBkzI0gEGw==",
"dev": true,
"dependencies": {
"@textlint/markdown-to-ast": "^13.1.0"
"@textlint/markdown-to-ast": "^13.3.0"
}
},
"node_modules/@textlint/textlint-plugin-text": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-13.1.0.tgz",
"integrity": "sha512-TPxF8rvg/VE9qnNKznNRDc0NV+vVKP25q1tI8WfmkYPH3SRFGqg9UaCnIe0hSXeZKXUpBJfor8uDHcfd6e7T9w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-13.3.0.tgz",
"integrity": "sha512-j/I+g4IRBbeswRN4H4swQosEQUQUp1D9PBYE0amya9qthP7LviJKWgN8eGjvGFsNMLZIdxsG+DUiN5qlyrRY0g==",
"dev": true,
"dependencies": {
"@textlint/text-to-ast": "^13.1.0"
"@textlint/text-to-ast": "^13.3.0"
}
},
"node_modules/@textlint/types": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-13.1.0.tgz",
"integrity": "sha512-H0oETFHYayeXwFHxlr5wFtwVpOcodZcFp5X3AZDCE6XbCY195exrnKlZsAfj+oEjRnjffahEZ6P5oOIh8Dt65w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-13.3.0.tgz",
"integrity": "sha512-Xr3BBKbCClux2GDFvXDNMDXo4Q/weo0JaRaqUq6dPp2wYQ5UmZA3XhFdIY69hZPiaUIP6mAycZK8VHro9AMp+g==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"node_modules/@textlint/utils": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-13.1.0.tgz",
"integrity": "sha512-DJxYdyH00uWLzYK1IB6UYum3H6Gx/uDcLzAsr+2WhhkO3voosPqig1zd00zrY5RPyaVqYVkucN+Ulp8HqGjyXw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-13.3.0.tgz",
"integrity": "sha512-hJ57KmY6C4LTWPoi1VkSJczIVm6Gc1lo0caK9rEy19AsYoKrqjZY4yh5i/9wUZ1CruGfuomI4TDlM1OT5aKELg==",
"dev": true
},
"node_modules/@types/concat-stream": {
@ -5183,23 +5183,23 @@
"dev": true
},
"node_modules/textlint": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/textlint/-/textlint-13.1.0.tgz",
"integrity": "sha512-QXOT4rVH6j71f9sMO66bRdO6T/K75+hcPkxEjRueScdSTdy9rqMGSNLhj5R14I76mjtGuE+le+wKp6msHkMXAw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/textlint/-/textlint-13.3.0.tgz",
"integrity": "sha512-1JFbDHWBZiqM/NaA875IlX3GuHk7pt6L4ApFFZHiFIqDnj77XzqhG+tPiitnBC/vhngZiGVXclIM9klLGmfoFg==",
"dev": true,
"dependencies": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-traverse": "^13.1.0",
"@textlint/config-loader": "^13.1.0",
"@textlint/feature-flag": "^13.1.0",
"@textlint/fixer-formatter": "^13.1.0",
"@textlint/kernel": "^13.1.0",
"@textlint/linter-formatter": "^13.1.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/textlint-plugin-markdown": "^13.1.0",
"@textlint/textlint-plugin-text": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"@textlint/ast-traverse": "^13.3.0",
"@textlint/config-loader": "^13.3.0",
"@textlint/feature-flag": "^13.3.0",
"@textlint/fixer-formatter": "^13.3.0",
"@textlint/kernel": "^13.3.0",
"@textlint/linter-formatter": "^13.3.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/textlint-plugin-markdown": "^13.3.0",
"@textlint/textlint-plugin-text": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"file-entry-cache": "^5.0.1",
"get-stdin": "^5.0.1",
@ -5220,7 +5220,7 @@
"textlint": "bin/textlint.js"
},
"engines": {
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
"node": ">=16.0.0"
}
},
"node_modules/textlint-filter-rule-comments": {
@ -6281,59 +6281,59 @@
"dev": true
},
"@textlint/ast-node-types": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-13.1.0.tgz",
"integrity": "sha512-Lees6mOme6qP8vDcsM/VskiPeHi+z8Tb6LKBb3F0Y/0UBsFo6X7+njDIjtXvO4T48R57srxpa1hyNnjHop4Uog==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-13.3.0.tgz",
"integrity": "sha512-5PGZhAxOJ987c311SayvjGNkcVuX/Dr3k+H/FJDmS/wDcgZ0lEAdJzjCKn9USXXf2r+i14kZCbhzg8V01KSyKg==",
"dev": true
},
"@textlint/ast-tester": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-13.1.0.tgz",
"integrity": "sha512-4xkKQpBC1MyHz4B1YgQfYIdxJLZhpfXgdgIYc9WDC2AESnhM75I7LUElY3bDUDMGhP99E4H1Ix5C+CftYqvIHA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-13.3.0.tgz",
"integrity": "sha512-LwGd7JjHNXekgCA4BmE39S9fQrgDHJLk2MSf5+uPdUWQM2ojL/RQiyucghxwGdKib+1DutcPrbJSM4SdT1HWSQ==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"debug": "^4.3.4"
}
},
"@textlint/ast-traverse": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-13.1.0.tgz",
"integrity": "sha512-253DKapEjr6L9kx2npNvhaJTmoOJBw38w0D2cvUuHAZv9sx7U5G1aej9ScnIIyIcSotIcDFAVt3B+afA5KMCTA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-13.3.0.tgz",
"integrity": "sha512-bF0OeKlOtE8f9pNKRlgXqCdApZPYCj7n2Ty3DHvGbumC+rC5tapQuIioxwKKC11deQY1nsYTf2gaYV52SdFS6Q==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"@textlint/config-loader": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-13.1.0.tgz",
"integrity": "sha512-hQmGt9H9ozeLo2PGETTNrvEYGsA7c+svtldpUT2fBQ9uclWruUK1h8+BPOIqzH0YjTyvMTTajtGhibbu1bZ3/A==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-13.3.0.tgz",
"integrity": "sha512-CZ088hUWjY360MOGDIZkVw2Ln8zLc/3BlMCE4FDsPX1ojKXcJX2vL+9YRVK5gDZYL3+W4mFHGJUkvEmTnroG9g==",
"dev": true,
"requires": {
"@textlint/kernel": "^13.1.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/kernel": "^13.3.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"rc-config-loader": "^4.1.2",
"try-resolve": "^1.0.1"
}
},
"@textlint/feature-flag": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-13.1.0.tgz",
"integrity": "sha512-YolfMMWZ+8bJWVFl7gu+SgiZT/b9Q+QS6HyAco6o2zDE09GbDofu/MLGNmYqTst4YBPkuyEJ5oGlv395CT23FQ==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-13.3.0.tgz",
"integrity": "sha512-GhMH0UiwQPPjyngvmybw637g6GHdwFVnZj0XpQBKG6W+bQO5ubsc/jsox2E+PgNwRYwlaSOf/hR69BuHtCZyZg==",
"dev": true
},
"@textlint/fixer-formatter": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-13.1.0.tgz",
"integrity": "sha512-gb+GPnddmniGpJPC8dQI2iqOciiseQBjHbpmqc1vzrDa+BGsRglcFP6MD24Jak6xwDhsDJtyjvCSRTTvSvkV8g==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-13.3.0.tgz",
"integrity": "sha512-zVZHjnUVCL1yuW7dBwGwPJmyM1xZXBzkC3ADvB9n0Sz9EYSF0903bg0cXy3oZtdbllIXDxuMkUHbhfJReZOYeA==",
"dev": true,
"requires": {
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"chalk": "^4.1.2",
"debug": "^4.3.4",
"diff": "^4.0.2",
@ -6345,18 +6345,18 @@
}
},
"@textlint/kernel": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-13.1.0.tgz",
"integrity": "sha512-t/imOABHI6SicIBvGqMONjRustBoCJtuZgD8fYdelsxdcaO07ukbv/puYSYwNQepQ9KXcWSfeTLy+7zgbFW/hg==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-13.3.0.tgz",
"integrity": "sha512-vrFpvuNlqDxA9uNvkw43FZs9DKRRWejCzo3iIL7QGIqXoEVa2yQyKgi4rjsfkUQlU7NW8McPL0lUEKkwH0XD2w==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-tester": "^13.1.0",
"@textlint/ast-traverse": "^13.1.0",
"@textlint/feature-flag": "^13.1.0",
"@textlint/source-code-fixer": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"@textlint/ast-tester": "^13.3.0",
"@textlint/ast-traverse": "^13.3.0",
"@textlint/feature-flag": "^13.3.0",
"@textlint/source-code-fixer": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"fast-equals": "^4.0.3",
"structured-source": "^4.0.0"
@ -6380,15 +6380,15 @@
}
},
"@textlint/linter-formatter": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-13.1.0.tgz",
"integrity": "sha512-JaAUTsuPDoMmFUravEDP2pCyB8npr8q0bjbrYJWVZqTDHAPRWxdU0HFtOhc6cprb6DOkSkbioq/ojj2DjYx3gQ==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-13.3.0.tgz",
"integrity": "sha512-ngf17z3ugKpnZ5oGcvVACrM/LZi/Mgj6iZl3ZdzyR91bIayBA1wzi9aty2XO+M0TVpOnKyBAfNg1VY4iO33pdQ==",
"dev": true,
"requires": {
"@azu/format-text": "^1.0.1",
"@azu/style-format": "^1.0.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/types": "^13.3.0",
"chalk": "^4.1.2",
"debug": "^4.3.4",
"is-file": "^1.0.0",
@ -6404,12 +6404,12 @@
}
},
"@textlint/markdown-to-ast": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-13.1.0.tgz",
"integrity": "sha512-pPzxLuAOv0luOh4uUG/H/dq77/C5SiLiUx2qMAEaOZrfF6dl46bIDXUSbtryFBV8Nrpj3kUE3s4al9vPTOUFWA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-13.3.0.tgz",
"integrity": "sha512-TCw8HN9vwVuo7oXb9NSwSjnCfM2TB0IgLxF75CU90R4MrsQYZ7HZTJxPXhYqQFzAYxFyHZrzEhxodYCry2EChw==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"debug": "^4.3.4",
"mdast-util-gfm-autolink-literal": "^0.1.3",
"remark-footnotes": "^3.0.0",
@ -6627,61 +6627,61 @@
}
},
"@textlint/module-interop": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-13.1.0.tgz",
"integrity": "sha512-j3nJZ5rU6U+mxjAWXLAdGJyVuLs0RpHFQKVXapeKVt0JNhix+VDXTCGPw3eSRlno1BPSoxgmQhEHdal3/PeH9w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-13.3.0.tgz",
"integrity": "sha512-3u5gZR8NL3yKHCh7QDttTNYmKMyfx55NmRfS1HalGFTIgaHwAFCz95KX7JA3WhpIa9Hu7zKlaxA1WGUnJDHLyA==",
"dev": true
},
"@textlint/source-code-fixer": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-13.1.0.tgz",
"integrity": "sha512-zMDPhouqnp2ey8bGKbMaK3+kNsLa0r6eA41w+8LBKbDUY+vhuw6cQ99BeZfAD9tehMuAuI/kQLIgVvwPchU6qw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-13.3.0.tgz",
"integrity": "sha512-zLTmp8XyuksW90u0Y24wNALKd2xuieI/Vc40RKAYMEJL+sYyL0O2gYllnjcgQtLMz1wzy7rEXHMxvp/dvPX6/w==",
"dev": true,
"requires": {
"@textlint/types": "^13.1.0",
"@textlint/types": "^13.3.0",
"debug": "^4.3.4"
}
},
"@textlint/text-to-ast": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-13.1.0.tgz",
"integrity": "sha512-5Gzg0CCl5F2ckyhbyRYf2yyBuXZEA7P3UVvRS0Zc/Tr6I/jtOROAZPTlsDrG1HwNd7iR+NqT3PtfKmL5gLt/AA==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-13.3.0.tgz",
"integrity": "sha512-d8eN3WDWC27Pd8DpREMIWGEAp4GNiIzDQRezL4az3OLwS4yUsqUh3g2Q9cj7Vm7l3kmrs/0LFl+yxEaklk64Kw==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"@textlint/textlint-plugin-markdown": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-13.1.0.tgz",
"integrity": "sha512-CqqOORpmxdFkN6ZguQV+sMJ/uFOIVAps9IbeF3zkygQcHzD3/scojBdIM5GEDG1gdRZvdNeAfbcZNVyUEIK3Rg==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-13.3.0.tgz",
"integrity": "sha512-p6+dOuLKo05ZvujnhQcQc95PIPevF8gqvzb2/7iNsJH1BhH2IjJXVZzEalIMBNnP8ieOb8Fhee51OBkzI0gEGw==",
"dev": true,
"requires": {
"@textlint/markdown-to-ast": "^13.1.0"
"@textlint/markdown-to-ast": "^13.3.0"
}
},
"@textlint/textlint-plugin-text": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-13.1.0.tgz",
"integrity": "sha512-TPxF8rvg/VE9qnNKznNRDc0NV+vVKP25q1tI8WfmkYPH3SRFGqg9UaCnIe0hSXeZKXUpBJfor8uDHcfd6e7T9w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-13.3.0.tgz",
"integrity": "sha512-j/I+g4IRBbeswRN4H4swQosEQUQUp1D9PBYE0amya9qthP7LviJKWgN8eGjvGFsNMLZIdxsG+DUiN5qlyrRY0g==",
"dev": true,
"requires": {
"@textlint/text-to-ast": "^13.1.0"
"@textlint/text-to-ast": "^13.3.0"
}
},
"@textlint/types": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-13.1.0.tgz",
"integrity": "sha512-H0oETFHYayeXwFHxlr5wFtwVpOcodZcFp5X3AZDCE6XbCY195exrnKlZsAfj+oEjRnjffahEZ6P5oOIh8Dt65w==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/types/-/types-13.3.0.tgz",
"integrity": "sha512-Xr3BBKbCClux2GDFvXDNMDXo4Q/weo0JaRaqUq6dPp2wYQ5UmZA3XhFdIY69hZPiaUIP6mAycZK8VHro9AMp+g==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0"
"@textlint/ast-node-types": "^13.3.0"
}
},
"@textlint/utils": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-13.1.0.tgz",
"integrity": "sha512-DJxYdyH00uWLzYK1IB6UYum3H6Gx/uDcLzAsr+2WhhkO3voosPqig1zd00zrY5RPyaVqYVkucN+Ulp8HqGjyXw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-13.3.0.tgz",
"integrity": "sha512-hJ57KmY6C4LTWPoi1VkSJczIVm6Gc1lo0caK9rEy19AsYoKrqjZY4yh5i/9wUZ1CruGfuomI4TDlM1OT5aKELg==",
"dev": true
},
"@types/concat-stream": {
@ -9841,23 +9841,23 @@
"dev": true
},
"textlint": {
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/textlint/-/textlint-13.1.0.tgz",
"integrity": "sha512-QXOT4rVH6j71f9sMO66bRdO6T/K75+hcPkxEjRueScdSTdy9rqMGSNLhj5R14I76mjtGuE+le+wKp6msHkMXAw==",
"version": "13.3.0",
"resolved": "https://registry.npmjs.org/textlint/-/textlint-13.3.0.tgz",
"integrity": "sha512-1JFbDHWBZiqM/NaA875IlX3GuHk7pt6L4ApFFZHiFIqDnj77XzqhG+tPiitnBC/vhngZiGVXclIM9klLGmfoFg==",
"dev": true,
"requires": {
"@textlint/ast-node-types": "^13.1.0",
"@textlint/ast-traverse": "^13.1.0",
"@textlint/config-loader": "^13.1.0",
"@textlint/feature-flag": "^13.1.0",
"@textlint/fixer-formatter": "^13.1.0",
"@textlint/kernel": "^13.1.0",
"@textlint/linter-formatter": "^13.1.0",
"@textlint/module-interop": "^13.1.0",
"@textlint/textlint-plugin-markdown": "^13.1.0",
"@textlint/textlint-plugin-text": "^13.1.0",
"@textlint/types": "^13.1.0",
"@textlint/utils": "^13.1.0",
"@textlint/ast-node-types": "^13.3.0",
"@textlint/ast-traverse": "^13.3.0",
"@textlint/config-loader": "^13.3.0",
"@textlint/feature-flag": "^13.3.0",
"@textlint/fixer-formatter": "^13.3.0",
"@textlint/kernel": "^13.3.0",
"@textlint/linter-formatter": "^13.3.0",
"@textlint/module-interop": "^13.3.0",
"@textlint/textlint-plugin-markdown": "^13.3.0",
"@textlint/textlint-plugin-text": "^13.3.0",
"@textlint/types": "^13.3.0",
"@textlint/utils": "^13.3.0",
"debug": "^4.3.4",
"file-entry-cache": "^5.0.1",
"get-stdin": "^5.0.1",

View File

@ -9,7 +9,7 @@
"remark-lint-fenced-code-flag": "^3.1.1",
"remark-lint-no-shell-dollars": "^3.1.1",
"remark-stringify": "^10.0.2",
"textlint": "^13.1.0",
"textlint": "^13.3.0",
"textlint-filter-rule-comments": "^1.2.2",
"textlint-rule-common-misspellings": "^1.0.1",
"textlint-rule-terminology": "^3.0.4"

View File

@ -413,8 +413,6 @@ style:
# Positioning of the element
left: 50%
top: 50%
# Overwrite color for icons
"--paper-item-icon-color": pink
```
### How to use state_image

View File

@ -41,6 +41,11 @@ show_entity_picture:
description: If your entity has a picture, it will replace the icon.
type: boolean
default: false
vertical:
required: false
description: Displays the icon above the name and state.
type: boolean
default: false
tap_action:
required: false
description: Action taken on card tap. See [action documentation](/dashboards/actions/#tap-action). By default, it will show the "more-info" dialog.
@ -77,6 +82,12 @@ entity: person.anne_therese
show_entity_picture: true
```
```yaml
type: tile
entity: person.anne_therese
vertical: true
```
```yaml
type: tile
entity: vacuum.ground_floor

View File

@ -19,7 +19,11 @@ If you decide to use `trusted_networks` as your `auth_provider` there won't be a
</div>
Authentication providers are configured in your `configuration.yaml` under the `homeassistant:` block. You can supply more than one, for example:
Authentication providers are configured in your `configuration.yaml` under the `homeassistant:` block.
If you are moving configuration to packages, this particular configuration must stay within 'configuration.yaml'. See Issue 16441 in the warning block at the bottom of this page.
You can supply more than one, for example:
```yaml
homeassistant:

View File

@ -24,7 +24,7 @@ trace:
stored_traces: 1
```
[template]: /topics/templating/
[template]: /docs/configuration/templating/
## Testing your automation

View File

@ -3,7 +3,7 @@ title: "Automation YAML"
description: "How to use the automation integration with YAML."
---
Automations are created in Home Assistant via the UI, but are stored in a YAML format. If you want to edit the YAML of an automation, go to edit the automation, click on the menu button in the top right and turn on YAML mode.
Automations are created in Home Assistant via the UI, but are stored in a YAML format. If you want to edit the YAML of an automation, select the automation, click on the menu button in the top right then on **Edit in YAML**.
The UI will write your automations to `automations.yaml`. This file is managed by the UI and should not be edited manually.

View File

@ -11,7 +11,7 @@ This is an advanced feature of Home Assistant. You'll need a basic understanding
Templating is a powerful feature that allows you to control information going into and out of the system. It is used for:
- Formatting outgoing messages in, for example, the [notify](/integrations/notify/) platforms and [Alexa](/integrations/alexa/) component.
- Process incoming data from sources that provide raw data, like [MQTT](/integrations/mqtt/), [`rest` sensor](/integrations/rest/) or the [`command_line` sensor](/integrations/sensor.command_line/).
- Process incoming data from sources that provide raw data, like [MQTT](/docs/configuration/templating/#using-templates-with-the-mqtt-integration), [`rest` sensor](/integrations/rest/) or the [`command_line` sensor](/integrations/sensor.command_line/).
- [Automation Templating](/docs/automation/templating/).
## Building templates
@ -154,7 +154,7 @@ Other state examples:
{{ states('sensor.expires') | as_datetime }}
# Make a list of states
{{ ['light.kitchen', 'light.dinig_room'] | map('states') | list }}
{{ ['light.kitchen', 'light.dining_room'] | map('states') | list }}
```
{% endraw %}

View File

@ -514,7 +514,7 @@ It's also supported in script or automation `condition` actions:
{% endraw %}
[template]: /topics/templating/
[template]: /docs/configuration/templating/
[automation-templating]: /getting-started/automation-templating/
## Time condition

View File

@ -136,7 +136,7 @@ There are four `homeassistant` services that aren't tied to any single domain, t
Complete service details and examples can be found on the [Home Assistant integration][homeassistant-integration-services] page.
[templating]: /topics/templating/
[templating]: /docs/configuration/templating/
[google travel time]: /integrations/google_travel_time/
[template sensor]: /integrations/template/
[light]: /integrations/light/

View File

@ -62,7 +62,7 @@ For each Airzone zone (Thermostat) a *climate entity* is created.
**HVAC mode can only be changed on a *parent zone*.**
*Slave zones* can only enable/disable the current HVAC mode selected on the corresponding *parent zone*. Attempting to change the HVAC mode on a *child zone* will result on a Home Assistant error.
*Child zones* can only enable/disable the current HVAC mode selected on the corresponding *parent zone*. Attempting to change the HVAC mode on a *child zone* will result on a Home Assistant error.
## Select

View File

@ -84,7 +84,7 @@ Please refer to the [Amazon documentation][flash-briefing-api-docs] for more inf
[flash-briefing-api-docs]: https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/flash-briefing-skill-api-feed-reference
[large-icon]: /images/integrations/alexa/alexa-512x512.png
[small-icon]: /images/integrations/alexa/alexa-108x108.png
[templates]: /topics/templating/
[templates]: /docs/configuration/templating/
[zero-three-one]: /blog/2016/10/22/flash-briefing-updater-hacktoberfest/
[alexa-settings-site]: https://alexa.amazon.com/
[emulated-hue-component]: /integrations/emulated_hue/

View File

@ -70,7 +70,7 @@ Next you need to create a Lambda function.
- Click your Lambda Function icon in the middle of the diagram and scroll down, you will see a `Function code` window.
- Clear the example code and copy the Python script from this [GitHub Gist](https://gist.github.com/lpomfrey/97381cf4316553b03622c665ae3a47da).
- Click the `Deploy` button of the `Function code` window.
- Scroll down again and you will find `Environment variables`, click on `Edit` button and add the following environment variables as needed:
- Scroll down again and pick the `Configuration' tab, select it and on the left you will now find `Environment variables`, click on `Edit` button and add the following environment variables as needed:
- BASE_URL *(required)*: your Home Assistant instance's Internet accessible URL with port if needed. *Do not include the trailing `/`*.
- NOT_VERIFY_SSL *(optional)*: set to *True* to ignore the SSL issue, if you don't have a valid SSL certificate or you are using self-signed certificate.
- DEBUG *(optional)*: set to *True* to log debugging messages.
@ -394,5 +394,5 @@ Alexa will now respond with a random phrase each time. You can use the include f
[amazon-dev-console]: https://developer.amazon.com
[large-icon]: /images/integrations/alexa/alexa-512x512.png
[small-icon]: /images/integrations/alexa/alexa-108x108.png
[templates]: /topics/templating/
[templates]: /docs/configuration/templating/
[generate-long-lived-access-token]: https://developers.home-assistant.io/docs/auth_api/#long-lived-access-token

View File

@ -83,7 +83,6 @@ Steps to Integrate an Amazon Alexa Smart Home Skill with Home Assistant:
- [Equalizer Mode](#equalizer-mode)
- [Inputs](#inputs)
- [Playback State](#playback-state)
- [Seek](#seek)
- [Scene](#scene)
- [Script](#script)
- [Sensor](#sensor)
@ -501,7 +500,6 @@ The following integrations are currently supported:
- [Equalizer Mode](#equalizer-mode)
- [Inputs](#inputs)
- [Playback State](#playback-state)
- [Seek](#seek)
- [Scene](#scene)
- [Script](#script)
- [Sensor](#sensor)
@ -979,10 +977,9 @@ Home Assistant will attempt to translate the `media_player` `source_list` into a
Requires [Proactive Events](#proactive-events) enabled.
#### Seek
- _"Alexa, skip 30 seconds on device."_
- _"Alexa, go back 10 seconds on device."_
<div class='note info'>
Intents to seek forwards (skip) or to rewind (go back) are not supported at the moment.
</div>
### Scene

View File

@ -1,20 +1,20 @@
---
title: ANWB Energie
description: Get the energy market prices from ANWB Energie using the EnergyZero integration.
description: Connect and control your ANWB Energie devices using the EnergyZero integration
ha_category:
- Energy
- Sensor
ha_domain: anwb_energie
ha_release: 2023.2
ha_integration_type: virtual
ha_supporting_domain: energyzero
ha_supporting_integration: energyzero
ha_supporting_integration: EnergyZero
ha_codeowners:
- '@klaasnicolaas'
ha_config_flow: true
ha_platforms:
- diagnostics
- sensor
ha_iot_class: Cloud Polling
---
{% include integrations/supported_brand.md %}
{% include integrations/supported_brand.md %}

View File

@ -81,5 +81,6 @@ Also, with **power_on_enabled** as True, the Aquos logo on your TV will stay on
- LC-50US40 (no volume control, not fully tested)
- LC-70LE650U
- LC-70LE747E (no volume control)
- LC-60LE650U
If your model is not on the list, give it a test. If everything works correctly, then add it to the list on [GitHub](https://github.com/home-assistant/home-assistant.io/blob/current/source/_integrations/aquostv.markdown).

View File

@ -81,14 +81,17 @@ If you experience an unreliable Bluetooth connection, installing a short USB ext
#### Cambridge Silicon Radio (CSR) Based adapters
- ANNE PRO CSR 4.0 (CSR8510A10)
- Avantree BTDG-40S (CSR8510A10)
- Enbiawit BT403 (CSR8510A10)
- Feasycom FSC-BP119 (CSR8510A10) 📶
- HIDEEZ BT0015-01 (CSR8510A10)
- Maxesla CSR 4.0 (CSR8510A10)
- Nuu You BT40 (CSR8510A10)
- ORICO BTA-403 (CSR8510A10)
- ORICO BTA-409 (CSR8510A10)
- Panda Wireless PBU40 (CSR8510A10)
- PlanexCOMM BT-Micro4 (CSR8510A10)
- QGOO BT-06A (CSR8510A10)
- ROCKETEK BT4Y (CSR8510A10)
- SABRENT BT-UB40 (CSR8510A10)
@ -179,6 +182,7 @@ These adapters do not have a reset pin. If they stop responding, there is curren
- XDO BT802 (RTL8761BU) 📶
- ZEXMTE BT-505 (RTL8761BU) 📶
- ZEXMTE BT-DG54 (RTL8761BU) 📶
- ZEXMTE Z01 (RTL8761BU) 📶
- ZETSAGE BH451A (RTL8761BU) 📶
📶 Denotes external antenna
@ -188,9 +192,13 @@ These adapters do not have a reset pin. If they stop responding, there is curren
- Alfa AWUS036EACS (RTL8821CU) - Frequent connection failures and drop outs
- BASEUS BR8651A01 BA04 - Advertisement drops out
- Belkin F8T003 ver 2. - Fails to setup and add successfully
- Bluegiga BLED112 - No driver available yet for USB id 2458:0001
- EDIMAX EW-7611ULB (RTL8723BU) - Frequent connection failures and drop outs
- EDUP EP-AC1661 (RTL8821CU) - Frequent connection failures and drop outs
- eppfun AK3040G (ATS2851) - No driver available yet for USB id 10d7:b012
- eppfun AK3040A (ATS2851) - No driver available yet for USB id 10d7:b012
- KOAMTAC KBD 401G (CSR8510A10) - Adapter is unstable and drops out
- TRIPP-LITE CU885A/U261-001-BT4 (CSR8510A10) - Adapter is unstable and drops out
- QUMOX Bluetooth 5.0 (Barrot 8041A02) - No working driver
- UGREEEN CM591 (ATS2851) - No driver available yet for USB id 10d7:b012
- tp-link UB400 (CSR4) - Frequent connection failures with active connections

View File

@ -8,6 +8,8 @@ ha_codeowners:
- '@bdraco'
ha_domain: bluetooth_adapters
ha_integration_type: system
ha_quality_scale: internal
ha_iot_class: Local Push
---
Bluetooth Adapters provides access to local and remote Bluetooth Adapters to integrations that use Bluetooth.

View File

@ -20,6 +20,7 @@ ha_platforms:
- binary_sensor
- button
- device_tracker
- diagnostics
- lock
- notify
- sensor

View File

@ -21,7 +21,7 @@ ha_platforms:
- cover
- light
- switch
ha_iot_class: Local Polling
ha_iot_class: Local Push
---
{% include integrations/supported_brand.md %}

View File

@ -178,4 +178,4 @@ data:
summary: "Example"
start_date: "2022-10-01"
end_date: "2022-10-02"
```
```

View File

@ -10,7 +10,10 @@ ha_codeowners:
- '@OnFreund'
ha_domain: coolmaster
ha_platforms:
- binary_sensor
- button
- climate
- sensor
ha_integration_type: integration
---

View File

@ -23,4 +23,4 @@ The CPU Speed integration allows you to monitor the current CPU speed.
## Known issues and limitations
Not all CPUs are supported. For example, some [ARM CPUs](https://github.com/workhorsy/py-cpuinfo/#cpu-support)
are known not to work with this integration.
are known not to work with this integration.

View File

@ -85,8 +85,10 @@ Known supported devices:
- Marantz SR8015
- Marantz NR1504
- Marantz NR1506
- Marantz NR1509
- Marantz NR1510
- Marantz NR1602
- Marantz NR1603
- Marantz NR1604
- Marantz NR1606
- Marantz NR1607

View File

@ -17,6 +17,7 @@ ha_quality_scale: platinum
ha_platforms:
- binary_sensor
- device_tracker
- diagnostics
- sensor
- switch
ha_zeroconf: true

View File

@ -8,7 +8,7 @@ ha_release: 0.25
ha_iot_class: Local Polling
ha_domain: directv
ha_config_flow: true
ha_quality_scale: gold
ha_quality_scale: silver
ha_ssdp: true
ha_platforms:
- media_player

View File

@ -1,20 +1,20 @@
---
title: Energie VanOns
description: Get the energy market prices from Energie VanOns using the EnergyZero integration.
description: Connect and control your Energie VanOns devices using the EnergyZero integration
ha_category:
- Energy
- Sensor
ha_domain: energie_vanons
ha_release: 2023.2
ha_integration_type: virtual
ha_supporting_domain: energyzero
ha_supporting_integration: energyzero
ha_supporting_integration: EnergyZero
ha_codeowners:
- '@klaasnicolaas'
ha_config_flow: true
ha_platforms:
- diagnostics
- sensor
ha_iot_class: Cloud Polling
---
{% include integrations/supported_brand.md %}
{% include integrations/supported_brand.md %}

View File

@ -10,6 +10,7 @@ ha_codeowners:
- '@klaasnicolaas'
ha_domain: energyzero
ha_platforms:
- diagnostics
- sensor
ha_quality_scale: platinum
ha_integration_type: integration
@ -50,4 +51,4 @@ Every day around **14:00 UTC time**, the new prices are published for the follow
For the dynamic gas prices, only entities are created that display the
`current` and `next hour` price because the price is always fixed for
24 hours; new prices are published every morning at **05:00 UTC time**.
24 hours; new prices are published every morning at **05:00 UTC time**.

View File

@ -24,4 +24,4 @@ A sensor platform for the [Enphase Envoy](https://enphase.com/en-us/products-and
For newer models, the username `envoy` without a password will grant access to the device. For older models, the password for the `installer` user can be obtained with this: [tool](https://thecomputerperson.wordpress.com/2016/08/28/reverse-engineering-the-enphase-installer-toolkit/).
In some cases, you need to use the username `envoy` with the last 6 digits of the unit's serial number as password. See [the enphase documentation](https://www4.enphase.com/en-us/support/faq/what-username-and-password-administration-page-envoy-local-interface) for more details on other units.
In some cases, you need to use the username `envoy` with the last 6 digits of the unit's serial number as password. See [the enphase documentation](https://support.enphase.com/s/article/What-is-the-Username-and-Password-for-the-Administration-page-of-the-Envoy-local-interface) for more details on other units.

View File

@ -4,6 +4,7 @@ description: Support for ESPHome devices using the native ESPHome API.
featured: true
ha_category:
- DIY
- Update
ha_release: 0.85
ha_iot_class: Local Push
ha_config_flow: true
@ -27,6 +28,7 @@ ha_platforms:
- select
- sensor
- switch
- update
ha_integration_type: device
ha_dhcp: true
works_with:

View File

@ -11,7 +11,7 @@ ha_codeowners:
ha_domain: eufylife_ble
ha_platforms:
- sensor
ha_integration_type: integration
ha_integration_type: device
---
The EufyLife integration allows you to integrate Eufy smart scales with Home Assistant.

View File

@ -1,6 +1,6 @@
---
title: Amazon Fire TV
description: Instructions on how to integrate Amazon Fire TV devices into Home Assistant.
description: Connect and control your Amazon Fire TV devices using the Android TV integration
ha_category:
- Media Player
ha_domain: fire_tv

View File

@ -1,6 +1,6 @@
---
title: Owntone
description: Instructions on how to integrate an Owntone server into Home Assistant.
title: OwnTone
description: Instructions on how to integrate an OwnTone server into Home Assistant.
ha_category:
- Media Player
ha_release: '0.110'
@ -15,26 +15,26 @@ ha_platforms:
ha_integration_type: integration
---
The Owntone integration allows you to control your [OwnTone (previously forked-daapd)](https://github.com/owntone/owntone-server) server from Home Assistant. This integration can control the Owntone outputs (zones) with limited playback control (play/pause, previous/next track) and media info support. Playlist manipulation is not supported.
The OwnTone integration allows you to control your [OwnTone (previously forked-daapd)](https://github.com/owntone/owntone-server) server from Home Assistant. This integration can control the OwnTone outputs (zones) with limited playback control (play/pause, previous/next track) and media info support. Playlist manipulation is not supported.
## Requirements
The Owntone integration requires an OwnTone server built with libwebsockets enabled, version >= 27.0.
The OwnTone integration requires an OwnTone server built with libwebsockets enabled, version >= 27.0.
{% include integrations/config_flow.md %}
## Outputs
Once the Owntone integration is set up, outputs will automatically be loaded from the server and added to HA in real-time.
Once the OwnTone integration is set up, outputs will automatically be loaded from the server and added to HA in real-time.
## Pipes
As OwnTone supports playing audio input via a pipe, this integration supports the forwarding of basic player controls (play, pause, next track, previous track) directly to the pipe's source. Currently, only the pipe source librespot-java is supported. To use this, configure your Owntone server to autostart pipes and name your librespot-java pipe "librespot-java" (accompanying metadata is also supported through Owntone via a metadata pipe named "librespot-java.metadata"). The Owntone integration will find the librespot-java pipe in the database and will set it up as a source.
As OwnTone supports playing audio input via a pipe, this integration supports the forwarding of basic player controls (play, pause, next track, previous track) directly to the pipe's source. Currently, only the pipe source librespot-java is supported. To use this, configure your OwnTone server to autostart pipes and name your librespot-java pipe "librespot-java" (accompanying metadata is also supported through OwnTone via a metadata pipe named "librespot-java.metadata"). The OwnTone integration will find the librespot-java pipe in the database and will set it up as a source.
## Playlists
The Owntone integration will treat playlists in the database as sources. The number of playlists shown as sources can be set in the integration's configuration options.
The OwnTone integration will treat playlists in the database as sources. The number of playlists shown as sources can be set in the integration's configuration options.
## Spotify
The Owntone integration supports media browsing via the [Spotify integration](/integrations/spotify). However, to play Spotify content, your Owntone instance must be logged in with Spotify. This can be done through Owntone's own web interface. For more details, see [Owntone's notes on Spotify](https://owntone.github.io/owntone-server/integrations/spotify/#spotify). You should log in with the same Spotify account for both the Owntone server and the Home Assistant [Spotify integration](/integrations/spotify).
The OwnTone integration supports media browsing via the [Spotify integration](/integrations/spotify). However, to play Spotify content, your OwnTone instance must be logged in with Spotify. This can be done through OwnTone's own web interface. For more details, see [OwnTone's notes on Spotify](https://owntone.github.io/owntone-server/integrations/spotify/#spotify). You should log in with the same Spotify account for both the OwnTone server and the Home Assistant [Spotify integration](/integrations/spotify).

View File

@ -24,13 +24,13 @@ Home Assistant will serve the images via its server, making it possible to view
You must enter a URL in at least one of the fields **Still Image URL** or **Stream Source URL**, the others are optional.
[Templates](/topics/templating/) are allowed in the URL fields, which can be used to select different images or parameterize the URL depending on the status of sensors. Template validity and network access are checked during the configuration steps.
[Templates](/docs/configuration/templating/) are allowed in the URL fields, which can be used to select different images or parameterize the URL depending on the status of sensors. Template validity and network access are checked during the configuration steps.
{% configuration_basic %}
Still Image URL:
description: "The URL your camera serves the image on, e.g., `http://192.168.1.21:2112/`. Can be a [template](/topics/templating/). Usernames and passwords are allowed in the URL, but if none are provided, the `Username` and `Password` settings will be used during authentication. At least one of still_image_url or stream_source must be provided."
description: "The URL your camera serves the image on, e.g., `http://192.168.1.21:2112/`. Can be a [template](/docs/configuration/templating/). Usernames and passwords are allowed in the URL, but if none are provided, the `Username` and `Password` settings will be used during authentication. At least one of still_image_url or stream_source must be provided."
Stream Source:
description: "The URL your camera serves the live stream on, e.g., `rtsp://192.168.1.21:554/`. Can be a [template](/topics/templating/). Usernames and passwords are allowed in the URL, but if none are provided, the `Username` and `Password` settings will be used during authentication. At least one of still_image_url or stream_source must be provided. Note that a stream_source without a still_image_url can only be used if the [stream integration](/integrations/stream/) is configured."
description: "The URL your camera serves the live stream on, e.g., `rtsp://192.168.1.21:554/`. Can be a [template](/docs/configuration/templating/). Usernames and passwords are allowed in the URL, but if none are provided, the `Username` and `Password` settings will be used during authentication. At least one of still_image_url or stream_source must be provided. Note that a stream_source without a still_image_url can only be used if the [stream integration](/integrations/stream/) is configured."
Username:
description: The username for accessing your camera. Note that this applies to both still_image_url and stream_source.
Password:

View File

@ -40,7 +40,7 @@ This section explains how to generate a Client ID and Client Secret on
13. Click **Credentials** in the menu on the left hand side of the screen, then click **Create credentials** (at the top of the screen), then select *OAuth client ID*.
14. Set the Application type to *TV and Limited Input* and give this credential set a name (like "Home Assistant Credentials") then click **Create**.
15. You will then be presented with a pop-up saying *OAuth client created* showing *Your Client ID* and *Your Client Secret*. Make a note of these (for example, copy and paste them into a text editor) as you will need these shortly. Once you have noted these strings, click **OK**. If you need to find these credentials again at any point then simply navigate to *APIs & Services > Credentials* and you will see *Home Assistant Credentials* (or whatever you named them in the previous step) under *OAuth 2.0 Client IDs*. To view both the *Client ID* and *Client secret*, click on the pencil icon, this will take you to the settings page for these credentials and the information will be on the right hand side of the page.
16. Double check that the *Google Calendar API* has been automatically enabled. To do this, select **Library** from the menu, then search for *Google Calendar API*. If it is enabled, you will see *API Enabled* with a green tick next to it. If it is not enabled, then enable it.
16. You must also enable the *Google Calendar API*. To do this, select **Library** from the menu, then search for *Google Calendar API*. If it is enabled, you will see *API Enabled* with a green tick next to it. If it is not enabled, then enable it.
{% enddetails %}

View File

@ -8,7 +8,7 @@ ha_release: 2023.1
ha_config_flow: true
ha_domain: google_assistant_sdk
ha_codeowners:
- "@tronikos"
- '@tronikos'
ha_integration_type: service
ha_platforms:
- notify
@ -130,6 +130,7 @@ service: google_assistant_sdk.send_text_command
data:
command: "tell me a joke"
media_player: media_player.living_room_speaker
```
You can also send multiple commands in the same conversation context which is useful to unlock doors or open covers that need a PIN. Example:
@ -171,7 +172,7 @@ data:
## Conversation agent
In the configure options of the integration, enable the conversation agent and then you can converse with Google Assistant by pressing the microphone in the frontend (supported browsers only):
In the configure options of the integration, enable the conversation agent and then you can converse with Google Assistant by tapping the Assist icon at the top right of your dashboard:
![Screenshot Conversation](/images/integrations/google_assistant_sdk/conversation.png)

View File

@ -12,7 +12,7 @@ ha_platforms:
- sensor
ha_codeowners:
- '@tkdrob'
ha_integration_type: device
ha_integration_type: service
---
The Google Mail integration allows you to connect your [Google Mail](https://mail.google.com) to Home Assistant. The integration adds a service to allow you to set an email auto-response for when you go on vacation. A `notify` service is also added, allowing you to draft or send emails in plain text.
@ -28,9 +28,9 @@ If you have already set up credentials, you can do step 1 and then skip to step
This section explains how to generate a Client ID and Client Secret on
[Google Developers Console](https://console.cloud.google.com/apis/library/gmail.googleapis.com?project=home-assistant-17698).
1. First, go to the Google Developers Console to enable [Google Mail API](https://console.cloud.google.com/apis/library/gmail.googleapis.com?project=home-assistant-17698)
1. First, go to the Google Developers Console to enable [Gmail API](https://console.cloud.google.com/apis/library/gmail.googleapis.com?project=home-assistant-17698)
2. The wizard will ask you to choose a project to manage your application. Select a project and click continue.
3. Verify that your drive API was enabled and click 'Go to credentials'
3. Verify that your Gmail API was enabled and click 'Go to credentials'
4. Navigate to APIs & Services (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials)
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
6. Select **External** and **Create**.
@ -45,7 +45,7 @@ This section explains how to generate a Client ID and Client Secret on
15. Set the Application type to *Web application* and give this credential set a name (like "Home Assistant Credentials").
16. Add https://my.home-assistant.io/redirect/oauth to *Authorized redirect URIs* then click **Create**.
17. You will then be presented with a pop-up saying *OAuth client created* showing *Your Client ID* and *Your Client Secret*. Make a note of these (for example, copy and paste them into a text editor), as you will need these shortly. Once you have noted these strings, click **OK**. If you need to find these credentials again at any point, then navigate to *APIs & Services > Credentials*, and you will see *Home Assistant Credentials* (or whatever you named them in the previous step) under *OAuth 2.0 Client IDs*. To view both the *Client ID* and *Client secret*, click on the pencil icon; this will take you to the settings page for these credentials, and the information will be on the right-hand side of the page.
18. Double-check that the *Google Drive API* has been automatically enabled. To do this, select **Library** from the menu, then search for *Google Drive API*. If it is enabled you will see *API Enabled* with a green tick next to it. If it is not enabled, then enable it.
18. Double-check that the *Gmail API* has been automatically enabled. To do this, select **Library** from the menu, then search for *Gmail API*. If it is enabled you will see *API Enabled* with a green tick next to it. If it is not enabled, then enable it.
{% enddetails %}

View File

@ -13,7 +13,7 @@ ha_platforms:
ha_integration_type: integration
---
The `gpsd` integration is using the GPS information collected by [gpsd](http://catb.org/gpsd/) and a GPS receiver.
The `gpsd` integration is using the GPS information collected by [gpsd](https://gpsd.gitlab.io/gpsd/index.html) and a GPS receiver.
## Setup

View File

@ -80,7 +80,7 @@ duration:
You have to provide **exactly 2** of `start`, `end` and `duration`.
<br/>
You can use [template extensions](/topics/templating/#home-assistant-template-extensions) such as `now()` or `as_timestamp()` to handle dynamic dates, as shown in the examples below.
You can use [template extensions](/docs/configuration/templating/#home-assistant-template-extensions) such as `now()` or `as_timestamp()` to handle dynamic dates, as shown in the examples below.
</div>

View File

@ -14,7 +14,7 @@ ha_category:
ha_iot_class: Cloud Push
ha_release: 0.66
ha_config_flow: true
ha_quality_scale: platinum
ha_quality_scale: silver
ha_domain: homematicip_cloud
ha_platforms:
- alarm_control_panel

View File

@ -17,20 +17,21 @@ ha_platforms:
- switch
ha_zeroconf: true
ha_integration_type: integration
ha_quality_scale: platinum
---
Integration for the [HomeWizard Energy](https://www.homewizard.nl/energy) platform. It can collect data locally from the HomeWizard Energy products and create them as sensors in Home Assistant.
**Supported devices**
- [Wi-Fi P1 Meter](https://www.homewizard.nl/p1-meter): Depending on the connected DSMR meter: sensors for power import/export, energy consumption (single or three phases) and gas. (Model: `HWE-P1`)
- [Wi-Fi P1 Meter](https://www.homewizard.nl/p1-meter): Sensors for power import/export, energy consumption (single or three phases). information about your smart meter and gas. (Model: `HWE-P1`)
- [Wi-Fi Energy Socket](https://www.homewizard.nl/energy-socket): Sensors for power import/export and energy consumption and switches for controlling the outlet (model: `HWE-SKT`)
- [Wi-Fi Watermeter](https://www.homewizard.com/watermeter): Sensors for active and total water usage (model: `HWE-WTR`)
- [Wi-Fi kWh Meter](https://www.homewizard.nl/kwh-meter): Sensors for power import/export and energy consumption. (Models: `SDM230-wifi`, `SDM630-wifi`)
<div class='note'>
The Wi-Fi Watermeter can be powered via a USB-C cable and with batteries. When using batteries they only connect to Wi-Fi every couple of hours. Because of this, the API can only be used when powered via the USB-C cable. It is not possible to add use this integration when the water meter is powered by batteries.
The Watermeter can be powered via a USB-C cable and with batteries. When using batteries they only connect to Wi-Fi every couple of hours. Because of this, the API can only be used when powered via the USB-C cable. It is not possible to use this integration when the water meter is powered by batteries.
</div>
@ -70,21 +71,20 @@ Sensors for Water meter:
## Energy Socket
The Wifi Energy Socket (`HWE-SKT`) outlet state and status light can be controlled. There are two switches:
The Energy Socket outlet state and status light can be controlled. There are two switches:
- **Switch**: Controls the outlet state of the Energy Socket. This switch is locked out when `Switch Lock` is turned on.
- **Switch lock**: Forces the outlet state in the `on` position and disables the physical button. This option is useful when the socket is used for a device that must not be turned off, such as a refrigerator.
- **Switch**: Controls the outlet state of the Energy Socket. This switch is locked out when _Switch Lock_ is turned on.
- **Switch lock**: Forces the outlet state in the _on_ position and disables the physical button. This option is useful when the socket is used for a device that must not be turned off, such as a refrigerator.
You can also control the green status light brightness with **Status light brightness**. This light turns on when the switch is on.
## Identify
The identify button can be pressed to let the status light blink for a few seconds.
This feature is currently only available for the Wifi P1 meter and the Wifi Energy Socket.
This feature is currently only available for the P1 meter and the Energy Socket.
## Cloud communication
The HomeWizard Energy devices are designed to work with the HomeWizard Energy app and require communication with the HomeWizard cloud to make them function with the app. The "Cloud connection" configuration toggle can be used to turn off all communication with the HomeWizard cloud, making the device fully local. The device cannot communicate with the app, and the device won't receive any future firmware updates.
The HomeWizard Energy devices are designed to work with the HomeWizard Energy app and require communication with the HomeWizard cloud to make them function with the app. The "Cloud connection" configuration toggle can be used to turn off all communication with the HomeWizard cloud, making the device fully local. The device cannot communicate with the app, and the device won't receive any future firmware updates. This feature is currently not available for the Water meter.
Cloud communication is restored when the switch is turned on again. Cloud communications are also restored after a factory reset, or when the device is put in pairing mode.
This feature is currently not available for the Wifi Water meter.

View File

@ -9,6 +9,7 @@ ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@rdfurman'
- '@mkmer'
ha_domain: honeywell
ha_platforms:
- climate

View File

@ -13,7 +13,6 @@ ha_codeowners:
- '@balloob'
- '@marcelveldt'
ha_domain: hue
ha_ssdp: true
ha_homekit: true
ha_platforms:
- binary_sensor

View File

@ -48,4 +48,3 @@ Below is an example for setting up the integration to connect to your Microsoft
- Username: Your full email address
- Password: Your password
- Charset: `US-ASCII`

View File

@ -71,7 +71,7 @@ value_template:
body:
description: The body of the email.
subject:
description: The subject of the email.git.
description: The subject of the email.
date:
description: The date and time the email was sent.
verify_ssl:

View File

@ -506,27 +506,27 @@ The example configuration entry below create two request to your local InfluxDB
```yaml
sensor:
platform: influxdb
host: localhost
username: home-assistant
password: password
queries:
- name: last value of foo
unit_of_measurement: °C
value_template: '{{ value | round(1) }}'
group_function: last
where: '"name" = ''foo'''
measurement: '"°C"'
field: value
database: db1
- name: Min for last hour
unit_of_measurement: "%"
value_template: '{{ value | round(1) }}'
group_function: min
where: '"entity_id" = ''salon'' and time > now() - 1h'
measurement: '"%"'
field: tmp
database: db2
- platform: influxdb
host: localhost
username: home-assistant
password: password
queries:
- name: last value of foo
unit_of_measurement: °C
value_template: '{{ value | round(1) }}'
group_function: last
where: '"name" = ''foo'''
measurement: '"°C"'
field: value
database: db1
- name: Min for last hour
unit_of_measurement: "%"
value_template: '{{ value | round(1) }}'
group_function: min
where: '"entity_id" = ''salon'' and time > now() - 1h'
measurement: '"%"'
field: tmp
database: db2
```
{% endraw %}

View File

@ -18,8 +18,8 @@ ha_config_flow: true
ha_platforms:
- binary_sensor
- climate
- light
- fan
- light
- number
- sensor
- switch

View File

@ -51,4 +51,4 @@ If you have two solar sensors named `Solar1` and `Solar2` you would use:
In the Grid Consumption settings, select `MainsConsumption.wh`
In the Return to grid settings, select `MainsExport.wh`
In the Solar production settings, select `Solar.wh`
In the Solar production settings, select `Solar.wh`

View File

@ -15,7 +15,7 @@ ha_config_flow: true
ha_integration_type: integration
---
This integration allows you to locally control a MicroBot Push (previously manufactured by Naran but now under the Keymitt brand).
This integration allows you to locally control a [MicroBot Push](https://keymitt.com/products/microbot-push) (previously manufactured by Naran but now under the Keymitt brand).
### Prerequisites

View File

@ -10,6 +10,8 @@ ha_codeowners:
ha_domain: kitchen_sink
ha_iot_class: Calculated
ha_platforms:
- lock
- sensor
ha_integration_type: integration
---

View File

@ -2,8 +2,8 @@
title: LD2410 BLE
description: Instructions on how to integrate LD2410 BLE devices into Home Assistant.
ha_category:
- Sensor
- Presence Detection
- Sensor
ha_bluetooth: true
ha_release: 2023.2
ha_iot_class: Local Push
@ -12,8 +12,9 @@ ha_codeowners:
ha_domain: ld2410_ble
ha_config_flow: true
ha_platforms:
- binary_sensor
- sensor
ha_integration_type: integration
ha_integration_type: device
---
Integrates LD2410 BLE sensors from [Hi-Link](http://www.hlktech.net/) into Home Assistant.

View File

@ -10,6 +10,7 @@ ha_release: 0.32
ha_domain: litejet
ha_config_flow: true
ha_platforms:
- diagnostics
- light
- scene
- switch

View File

@ -39,18 +39,18 @@ You will need a Litter-Robot account as well as a Wi-Fi-enabled Litter-Robot or
| Entity | Domain | Description |
| ----------------------------- | -------- | -------------------------------------------------------------------------------- |
| Litter Box | `vacuum` | Main entity that represents a Litter-Robot unit. |
| Night Light Mode | `switch` | When turned on, automatically turns on the night light in darker settings. |
| Panel Lockout | `switch` | When turned on, disables the buttons on the unit to prevent changes to settings. |
| Last Seen | `sensor` | Displays the time the unit was last seen / reported an update. |
| Litter box | `vacuum` | Main entity that represents a Litter-Robot unit. |
| Night light mode | `switch` | When turned on, automatically turns on the night light in darker settings. |
| Panel lockout | `switch` | When turned on, disables the buttons on the unit to prevent changes to settings. |
| Last seen | `sensor` | Displays the time the unit was last seen / reported an update. |
| Litter level | `sensor` | Displays the litter level, only for Litter-Robot 4. |
| Pet weight | `sensor` | Displays the last measured pet weight, only for Litter-Robot 4. |
| Sleep Mode Start Time | `sensor` | When sleep mode is enabled, displays the current or next sleep mode start time. |
| Sleep Mode End Time | `sensor` | When sleep mode is enabled, displays the current or last sleep mode end time. |
| Status Code | `sensor` | Displays the status code (Clean Cycle in Progress, Ready, Drawer Full, etc). |
| Waste Drawer | `sensor` | Displays the current waste drawer level. |
| Clean Cycle Wait Time Minutes | `select` | View and select the clean cycle wait time. |
| Reset Waste Drawer | `button` | Button to reset the waste drawer level to 0%, only for Litter-Robot 3. |
| Sleep mode start time | `sensor` | When sleep mode is enabled, displays the current or next sleep mode start time. |
| Sleep mode end time | `sensor` | When sleep mode is enabled, displays the current or last sleep mode end time. |
| Status code | `sensor` | Displays the status code (Clean Cycle in Progress, Ready, Drawer Full, etc). |
| Waste drawer | `sensor` | Displays the current waste drawer level. |
| Clean cycle wait time minutes | `select` | View and select the clean cycle wait time. |
| Reset waste drawer | `button` | Button to reset the waste drawer level to 0%, only for Litter-Robot 3. |
| Firmware | `update` | View and update to the latest firmware, only for Litter-Robot 4. |
### Feeder-Robot

View File

@ -193,7 +193,7 @@ payload_open:
type: string
default: OPEN
qos:
description: The maximum QoS level of the state topic.
description: The maximum QoS level of the state topic. It will also be used for messages published to command topic.
required: false
type: integer
default: 0

View File

@ -18,6 +18,7 @@ The `mastodon` platform uses [Mastodon](https://joinmastodon.org/) to deliver no
### Setup
Go to **Preferences** in the Mastodon web interface, then to **Development** and create a new application.
If you want to grant only required accesses, uncheck all checkboxes then check only **read:accounts** and **write:statuses**.
### Configuration

View File

@ -6,8 +6,6 @@ ha_category:
- Notifications
ha_iot_class: Cloud Push
ha_release: 0.69
ha_codeowners:
- '@tinloaf'
ha_domain: matrix
ha_platforms:
- notify

View File

@ -0,0 +1,203 @@
---
title: Matter
description: Instructions on how to integrate Matter with Home Assistant.
ha_category:
- Binary Sensor
- Light
- Sensor
- Switch
ha_release: '2022.12'
ha_iot_class: Local Push
ha_config_flow: true
ha_codeowners:
- '@marcelveldt'
- '@MartinHjelmare'
ha_domain: matter
ha_platforms:
- binary_sensor
- light
- sensor
- switch
ha_integration_type: integration
---
The Matter integration allows you to control Matter devices on your local WiFi or Thread network.
Matter is [the new standard for home automation](https://en.wikipedia.org/wiki/Matter_(standard)) which has just been released. It is in the process of being adopted by the tech industry. Matter is a local protocol, device control is done without the need of any cloud. You can use a Matter compatible device with Home Assistant without having to connect to a vendor specific cloud.
Matter devices are available using either WiFi based communication or [Thread](/integrations/thread/), both are supported by Home Assistant. Bluetooth is used for adding new devices to your Matter network.
Home Assistant only supports control of Matter devices. Home Assistant is not a bridge itself and it cannot turn devices within Home Assistant into Matter compatible devices.
At this time there are only a few devices available that are compatible with the standard and some of them require you to join a beta/developer program. It is to be expected that more devices will hit the market during the 2nd quarter of 2023 and beyond.
<p class='note'>
Both the Matter standard itself and its implementation within Home Assistant are in a very early stage where only the basics are working and/or breaking changes can still happen. Using it in production is not recommended yet until it matures a bit more.
</p>
One of the great features of Matter is the so called _Multi Fabric_ feature: you can join the same device to multiple controllers. For example: add it to Google Home, Apple Home, and Home Assistant at the same time.
For devices where Home Assistant provides an native integration (with local API), Matter may not be the best option. Matter, being a universal standard, might not have the nitty-gritty features that come with a product specific protocol. A good example is Philips Hue: the communication over Matter only provides the basic controls over lights, the official integration brings all Hue unique features like (dynamic) scenes, entertainment mode, etc.
<p class='note'>
The Matter protocol relies on (local) IPv6 and mDNS (multicast traffic) which should be able to travel freely in your network. Matter devices (and any Thread Border routers) must be on the same LAN/VLAN as Home Assistant. Implementations like mDNS reflectors usually do more harm than good.
</p>
{% include integrations/config_flow.md %}
_If you run Home Assistant Container, Home Assistant Core, or you dont want to use the built-in Matter Server add-on, please see the [advanced installation instructions](#advanced-installation-instructions)._
## Current state of the integration
While the support for Matter is evolving, we will regularly update the Matter integration with new features or device support. Because it might be hard to track what's supported and what not, we list the current state here and try to update this information as often as possible.
Platform support in Home Assistant is currently limited to switches, lights, and (binary) sensors. The light platform is limited to _on/off_ and _brightness_ control only, support for _color_ and _color temperature_ control will be added soon.
### Known issues
- Support for bridges (e.g. Hue bridge) is NOT working yet. Please do not try to add a bridge as it will break the integration.
- Door/window sensors show up reversed (closed instead of open)
_Both issues will be fixed in Home Assistant 2023.3._
## Adding Matter devices to Home Assistant
Each Matter network is called a fabric. Each home automation controller that controls Matter devices has its own fabric. You can add devices directly to the fabric of your Home Assistant instance, or share them from another fabric (ie Google, Apple) to Home Assistant's fabric. We're going to explore all these options below.
### Add a device using the iOS Companion app
This will use the Bluetooth connection of your phone to add the device.
1) Open The Home Assistant app on your phone.
2) Go to Settings, Devices & Services.
3) On the Devices tab, press the `Add device` button.
4) Choose `Add Matter device` as the top of the list.
5) Scan the QR-code of the Matter device with your phone camera or press `More options...` to manually enter the Commission code.
6) Press the `Add to Home Assistant` button which will start the commissioning process which may take up to a few minutes.
7) If you're adding a test board or beta device you might get a prompt about an Uncertified Accessory". In this dialog press `Add Anyway`.
8) Once prompted you can enter a custom Accessory Name, this is just an internal reference and not visible in Home Assistant so you can type whatever you like here.
9) Once the process is complete and you pressed the `Done` button, you are redirected to the Device within Home Assistant and its ready for use.
<lite-youtube videoid="8y79Kq3QfCQ" videotitle="Add Matter device via iOS app in Home Assistant"></lite-youtube>
### Add a device using the Android Companion app
This will use the Bluetooth connection of your phone to add the device.
1) Open The Home Assistant app on your phone.
2) Go to Settings, Devices & Services.
3) On the Devices tab, press the `Add device` button.
4) Choose `Add Matter device` as the top of the list.
5) Scan the QR-code of the Matter device with your phones camera or press the `Setup without QR-code` button to manually enter the Commission code.
6) The process will start adding the device which takes up to a few minutes.
7) If you're adding a test board (e.g. ESP32 running the example apps) and commissioning fails, you might need to take some actions in the Google Developer console, have a look at any instructions for your test device.
8) Once the process is complete and you pressed the `Done` button, you are redirected to the Device within Home Assistant and its ready for use.
<lite-youtube videoid="Fk0n0r0eKcE" videotitle="Add Matter device via Android app in Home Assistant"></lite-youtube>
### Share a device from Apple Home
This method will allow you to select a Matter device from Apple Home and share it to Home Assistant. The result is that the device can be controlled from both Apple Home and Home Assistant at the same time.
1) Find your device in Apple Home and press the jogwheel to edit it. In the page with detailed descriptions and settings for the device, scroll all the way down and press the button `Turn On Pairing Mode`.
2) You are now given a Setup code, copy this to the clipboard.
3) Follow the [Add a device using the iOS Companion app](#add-a-device-using-the-ios-companion-app) directions above to add the device to Home Assistant where you paste the code you just received from Apple Home.
<lite-youtube videoid="nyGyZv90jnQ" videotitle="Share Matter device from Apple Home to Home Assistant"></lite-youtube>
### Share a device from Google Home
This method will allow you to share a device that was added to Google Home to Home Assistant. The result is that the device can be controlled from both Google Home and Home Assistant at the same time.
1) Open the device in Google Home and press the settings button (jog wheel) in the top right.
2) Click `Linked Matter apps and services`.
3) Press the button `Link apps and services` to link the device to Home Assistant.
4) Choose Home Assistant from the list, you are redirected to the Home Assistant Companion app now. Press `Add device`.
5) Your device will now be added to Home Assistant. When the process finishes, you're redirected to the device page in Home Assistant.
<lite-youtube videoid="-B4WWevd2JI" videotitle="Share Matter device from Google Home to Home Assistant"></lite-youtube>
## Device specific instructions
Because availability of actual Matter devices is sparse and proper HOWTO documentation even more, we provide a few step by step instructions for devices we have currently tested.
### TP-Link Tapo P125M (power plug)
This device runs Matter out of the box, so you can add it directly to the controller(s) of your choice!
Look for the M addition in the model name, a device without the M (regular P125) is not Matter compliant. This device is available in the US only.
[TP-Link Tapo P125M on Amazon](https://amzn.to/3RILJah)
### ESP32 dev board running Matter example app
This is the most convenient and easy way to start playing with Matter. We have [prepared a page for you](https://nabucasa.github.io/matter-example-apps/) where you can easily flash Matter firmware to a supported ESP32 development board. We actually recommend the M5 Stamp C3 device running the Lightning app.
NOTE for Android users: You need to follow the instructions at the bottom of the page to add the test device to the Google developer console, otherwise commissioning will fail. iOS users will not have this issue but they will get a prompt during commissioning asking if you trust the development device.
1) Make sure you are using the Google Chrome or Microsoft Edge browser.
2) Open https://nabucasa.github.io/matter-example-apps/
3) Attach the ESP32 device using an USB cable.
4) Click the radiobutton next to the example you like to setup, in case of an M5 Stamp, click `Lightning app for M5STAMP C3`.
5) Press `Connect`.
6) In the popup dialog that appears choose the correct serial device, in most cases this will be something like "cu-usbserial" or alike.
7) Click `Install Matter Lightning app example` and let it install the firmware on the device, this will take a few minutes.
8) Once the device is flashed with the Matter firmware, connect to the device again but this time choose `Logs & console`.
9) You are presented with a console interface where you see live logging of events. This is actually an interactive shell where you can type commands. For a list of all commands, type `matter help` and press enter.
10) To add the device, we need the QR code. In the console type in `matter onboardingcodes ble` and copy/paste the URL in your browser.
11) Use the QR code to add the device using one of the above instructions on your phone, e.g. using the Home Assistant Companion app.
### Eve Energy (power plug), Eve Door & Window (contact sensor), Eve Motion (motion sensor)
1) Look for the Thread logo on the box to ensure you have the new device which is compatible with Matter.
2) The Eve device runs on HomeKit by default, you will need an iOS device to set it up out of the box.
3) The Eve device uses Thread for communication, therefore you will need to have a Thread Border Router configured in your network setup, such as the Apple TV 4K (2021/2022), Homepod Mini, or Homepod V2.
4) You need to join the [Eve Beta program here](https://www.evehome.com/en/meet-matter) and wait for instructions per email.
5) Update the firmware of your Eve device using the Eve beta app to Matter.
6) During the update process the Eve app will create a new QR code for you to save somewhere safe. This QR code is required when you want to add the device to a Matter controller. The normal QR code attached to the device will no longer work!
7) During the upgrade process, the Eve app will join the device to Apple Home using Matter.
8) Confirm that the device is working properly within Apple Home.
9) Follow our instructions above to share the device from Apple Home to Home Assistant.
Once the initial firmware upgrade to Matter is complete, the device can also be paired to non-Apple based Thread networks, like Google Home or later Home Assistant's own Thread implementation based on OTBR but you do need an Apple ecosystem running (iOS phone + Border router) for the first time setup.
- [Eve Energy on Amazon](https://amzn.to/3YuO62P)
- [Eve Door & Window on Amazon](https://amzn.to/3RIU6ml)
- [Eve Motion on Amazon](https://amzn.to/3jDujiP)
## Troubleshooting
### I do not see the option to add a Matter device in the settings
We've added the option to **Add a Matter device** from the **Settings**>**Devices** in a recent version of the Home Assistant frontend, available from version 2023.3 and upwards or if you're running the Home Assistant nightly channel. If you are on a previous version of Home Assistant, you should see a button **Configure** on the Matter integration card within **Settings**>**Devices & Services**>**Integrations**. Click that **Configure** button and you should be able to see the **Commission** button on the Companion app.
### I do not see the button "Commission using the Companion app"
This button will only be visible within the Home Assistant Companion App (so not in the browser) and your device meets all requirements for Matter support.
- For iOS, minimum version is iOS 16 (minimal 16.3 is preferred) and the most recent version of the HA companion app.
- For Android, minimum version is 8.1 and the most recent version of both the Google Home app and the (full) HA Companion app, downloaded from the app store.
### When I'm trying to commission using the Android app, I get an error stating "Matter is currently unavailable"
See above, make sure your device meets all requirements to support Matter. Update Android to the latest version and the Google Home and Home Assistant Companion app. To quickly verify if your device meets all requirements to support Matter, on your Android device go to **Settings**>**Google**>**Devices & Sharing**. There should be an entry there for **Matter devices**.
### Unable to commission devices, it keeps giving errors or stops working randomly
We've seen cases (e.g. on UniFi hardware) where IPv6 derived from the Internet Provider causes issues with the discovery of Matter devices. Keep this in mind when you experience issues trying to add or control Matter devices. Protocols like Matter are designed for regular residential network setups and do not play nice with enterprise solutions like VLAN's, Multicast filtering, and IGMP snooping. To avoid issues, try to keep your network as simple and flat as possible.
## Advanced installation instructions
If you are using Home Assistant Container, Home Assistant Core, or you don't want to use the built-in Matter Server add-on, you will need to run the Matter Server yourself, to which the Matter integration will connect.
### Running Matter Server
This application provides the connection between your Matter network (called Fabric in technical terms) and Home Assistant. The Home Assistant Matter integration connects to this server via a websocket connection. You need to run the Matter Server before you can use the integration.
There are multiple ways to run the server:
**Option 1: The official Matter Server add-on, as described above**
_This option is only available for Home Assistant OS (the recommended installation type) and Home Assistant Supervised installations._
**Option 2: Run the Matter server yourself**
This option is considered a very advanced setup and only for experienced users. You can find instructions on how to run the Matter Server in the [project repository](https://github.com/home-assistant-libs/python-matter-server).
_Disclaimer: Some links on this page are affiliate links._

View File

@ -1,52 +0,0 @@
---
title: Matter
description: Instructions on how to integrate Matter with Home Assistant.
ha_category:
- Binary Sensor
- Light
- Sensor
- Switch
ha_release: '2022.12'
ha_iot_class: Local Push
ha_config_flow: true
ha_codeowners:
- '@marcelveldt'
- '@MartinHjelmare'
ha_domain: matter
ha_platforms:
- binary_sensor
- light
- sensor
- switch
ha_integration_type: integration
---
This integration allows you to communicate with and control Matter devices on your local WiFi or Thread network.
<p class='note'>
Both Matter and the implementation within Home Assistant are in early (v1) state and features may be missing or could be improved.
</p>
{% include integrations/config_flow.md %}
If you run Home Assistant Container, Home Assistant Core, or you dont want to use the built-in Matter Server add-on, please see the [advanced installation instructions](#advanced-installation-instructions).
## Advanced installation instructions
If you are using Home Assistant Container, Home Assistant Core, or you don't want to use the built-in Matter Server add-on, you will need to run the Matter Server yourself, to which the Matter integration will connect.
### Running Matter Server
This application provides the connection between your Matter network (called Fabric in technical terms) and Home Assistant. The Home Assistant Matter integration connects to this server via a websocket connection. You need to run the Matter Server before you can use the integration.
There are multiple ways to run the server:
**Option 1: The official Matter Server add-on, as described above**
_This option is only available for Home Assistant OS (the recommended installation type) and Home Assistant Supervised installations._
**Option 2: Run the Matter server yourself**
This option is considered a very advanced setup and only for experienced users. You can find instructions on how to run the Matter Server in the [project repository](https://github.com/home-assistant-libs/python-matter-server).

View File

@ -147,7 +147,7 @@ Currently only supported on [Denon AVR](/integrations/denonavr/) and [Songpal](
#### Service `media_player.shuffle_set`
Currently only supported on [Sonos](/integrations/sonos), [Spotify](/integrations/spotify), [MPD](/integrations/mpd), [Kodi](/integrations/kodi), [Roon](/integrations/roon), [Owntone](/integrations/forked_daapd), [Squeezebox](/integrations/squeezebox) and [Universal](/integrations/universal).
Currently only supported on [Sonos](/integrations/sonos), [Spotify](/integrations/spotify), [MPD](/integrations/mpd), [Kodi](/integrations/kodi), [Roon](/integrations/roon), [OwnTone](/integrations/forked_daapd), [Squeezebox](/integrations/squeezebox) and [Universal](/integrations/universal).
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ---------------------------------------------------- |

View File

@ -1,20 +1,20 @@
---
title: Mijndomein Energie
description: Get the energy market prices from Mijndomein Energie using the EnergyZero integration.
description: Connect and control your Mijndomein Energie devices using the EnergyZero integration
ha_category:
- Energy
- Sensor
ha_domain: mijndomein_energie
ha_release: 2023.2
ha_integration_type: virtual
ha_supporting_domain: energyzero
ha_supporting_integration: energyzero
ha_supporting_integration: EnergyZero
ha_codeowners:
- '@klaasnicolaas'
ha_config_flow: true
ha_platforms:
- diagnostics
- sensor
ha_iot_class: Cloud Polling
---
{% include integrations/supported_brand.md %}
{% include integrations/supported_brand.md %}

View File

@ -1157,7 +1157,7 @@ logger:
default: warning
logs:
homeassistant.components.modbus: debug
pymodbus.client: debug
pymodbus: debug
```
and restart Home Assistant, reproduce the problem, and include the log in the issue.

View File

@ -11,9 +11,9 @@ ha_codeowners:
ha_domain: moehlenhoff_alpha2
ha_platforms:
- binary_sensor
- button
- climate
- sensor
- button
ha_integration_type: integration
---

View File

@ -12,7 +12,7 @@ ha_domain: mopeka
ha_config_flow: true
ha_platforms:
- sensor
ha_integration_type: integration
ha_integration_type: device
---
Integrates [Mopeka](https://www.mopekaiot.com/) devices into Home Assistant.

View File

@ -23,6 +23,7 @@ ha_platforms:
- diagnostics
- fan
- humidifier
- light
- lock
- number
- scene
@ -31,7 +32,9 @@ ha_platforms:
- siren
- switch
- text
- tag
- update
- vacuum
ha_integration_type: integration
ha_quality_scale: gold
---
@ -514,6 +517,7 @@ The following software has built-in support for MQTT discovery:
- [Arilux AL-LC0X LED controllers](https://github.com/smrtnt/Arilux_AL-LC0X)
- [ebusd](https://github.com/john30/ebusd)
- [ecowitt2mqtt](https://github.com/bachya/ecowitt2mqtt)
- [EMS-ESP32 (and EMS-ESP)](https://github.com/emsesp/EMS-ESP32)
- [ESPHome](https://esphome.io)
- [ESPurna](https://github.com/xoseperez/espurna)
- [HASS.Agent](https://github.com/LAB02-Research/HASS.Agent)
@ -523,6 +527,7 @@ The following software has built-in support for MQTT discovery:
- [room-assistant](https://github.com/mKeRix/room-assistant) (starting with 1.1.0)
- [SmartHome](https://github.com/roncoa/SmartHome)
- [SpeedTest-CLI MQTT](https://github.com/adorobis/speedtest-CLI2mqtt)
- [SwitchBot-MQTT-BLE-ESP32](https://github.com/devWaves/SwitchBot-MQTT-BLE-ESP32)
- [Tasmota](https://github.com/arendst/Tasmota) (starting with 5.11.1e, development halted)
- [Teleinfo MQTT](https://fmartinou.github.io/teleinfo2mqtt) (starting with 3.0.0)
- [Tydom2MQTT](https://fmartinou.github.io/tydom2mqtt/)
@ -747,7 +752,7 @@ script:
## Publish & Dump services
The MQTT integration will register the service `mqtt.publish` which allows publishing messages to MQTT topics. There are two ways of specifying your payload. You can either use `payload` to hard-code a payload or use `payload_template` to specify a [template](/topics/templating/) that will be rendered to generate the payload.
The MQTT integration will register the service `mqtt.publish` which allows publishing messages to MQTT topics. There are two ways of specifying your payload. You can either use `payload` to hard-code a payload or use `payload_template` to specify a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) that will be rendered to generate the payload.
### Service `mqtt.publish`

View File

@ -26,7 +26,7 @@ Once loaded, the `notify` platform will expose a service that can be called to s
| `target` | yes | Some platforms allow specifying a recipient that will receive the notification. See your platform page if it is supported.
| `data` | yes | On platforms who have extended functionality. See your platform page if it is supported.
The notify integration supports specifying [templates](/topics/templating/). This will allow you to use the current state of Home Assistant in your notifications.
The notify integration supports specifying [templates](/docs/configuration/templating/). This will allow you to use the current state of Home Assistant in your notifications.
In an [action](/getting-started/automation-action/) of your [automation setup](/getting-started/automation/) it could look like this with a customized subject.

View File

@ -1,5 +1,5 @@
---
title: OpenAI conversation agent
title: OpenAI Conversation
description: Instructions on how to integrate OpenAI as a conversation agent
ha_category:
- Voice

View File

@ -193,4 +193,3 @@ provided by OpenUV. So, this strategy is followed:
If you receive a re-authentication notification and are certain that your key has merely
reached its daily call limit, you can safely ignore it.

View File

@ -20,7 +20,9 @@ Integrates [Oral-B](https://oralb.com/) devices into Home Assistant.
{% include integrations/config_flow.md %}
The Oral-B integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional.
The Oral-B integration will automatically discover devices once the [Bluetooth](/integrations/bluetooth) integration is enabled and functional.
The integration can discover most Bluetooth-enabled Oral-B toothbrushes. Brushes not listed as supported below may not be correctly identified or have some modes missing.
## Supported devices
@ -34,7 +36,9 @@ The Oral-B integration will automatically discover devices once the [Bluetooth](
- [Smart Series 7000](https://oralb.com/en-us/products/electric-toothbrushes/smart-7000-rechargeable-electric-toothbrush/)
- Smart Series 8000
- [Genius Series 9000](https://oralb.com/en-us/products/electric-toothbrushes/genius-9600-rechargeable-electric-toothbrush-white/)
- Genius Series 10000
- Triumph V2
- [Genius X](https://www.service.oralb.com/us/en/products/3771/)
## Sensor

View File

@ -3,13 +3,12 @@ title: Open Thread Border Router
ha_category:
- Other
ha_release: 2023.2
ha_quality_scale: internal
ha_codeowners:
- '@home-assistant/core'
ha_domain: otbr
ha_iot_class: Local Polling
ha_platforms:
ha_integration_type: integration
ha_integration_type: service
ha_config_flow: true
---
The Open Thread Border Router integration allows calling an Open Thread Border Router's REST API from Python and via WebSocket.

View File

@ -24,8 +24,8 @@ The service `persistent_notification.create` takes in `message`, `title`, and `n
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `message` | no | Body of the notification. Accepts [templates](/topics/templating/).
| `title` | yes | Title of the notification. Accepts [templates](/topics/templating/).
| `message` | no | Body of the notification. Accepts [templates](/docs/configuration/templating/).
| `title` | yes | Title of the notification. Accepts [templates](/docs/configuration/templating/).
| `notification_id` | yes | If `notification_id` is given, it will overwrite the notification if there already was a notification with that ID.
Here is how an [action](/getting-started/automation-action/) of your [automation setup](/getting-started/automation/) with static content could look like.
@ -38,7 +38,7 @@ action:
title: "Custom subject"
```
If you want to show some runtime information, you have to use [templates](/topics/templating/).
If you want to show some runtime information, you have to use [templates](/docs/configuration/templating/).
{% raw %}

View File

@ -20,7 +20,7 @@ Let's say, for example, that you have three trackers: `tracker_gps`, `tracker_ro
1. You're at home, all three devices show state `home` - the state of your Person entity will be `home` with source `tracker_router` or `tracker_ble`, whichever was most recently updated.
2. You just left home. `tracker_gps` shows state `not_home`, but the other two trackers show state `home` (they may not have yet updated due to their `consider_home` setting see [device_tracker](/integrations/device_tracker/#configuring-a-device_tracker-platform)). Since the stationary trackers have priority, you are considered `home`.
3. After some time, both stationary trackers show state `not_home`. Now your Person entity has state 'not_home' with source `tracker_gps`.
3. After some time, both stationary trackers show state `not_home`. Now your Person entity has state `not_home` with source `tracker_gps`.
4. While you are away from home, your Home Assistant instance is restarted. Until the `tracker_gps` receives an update, your status will be determined by the stationary trackers, since they will have the most recent update after a restart. Obviously, the state will be `not_home`.
5. Then you're going into a zone you have defined as `zone1`, `tracker_gps` sends an update, and now your state is `zone1` with source `tracker_gps`.
6. You've returned home and your mobile device has connected to the router, but `tracker_gps` hasn't updated yet. Your state will be `home` with source `tracker_router`.

View File

@ -39,10 +39,16 @@ Password:
The following *binary sensors* are created:
| Condition | Description |
| Binary Sensor | Description |
| :------------------ | :--------------------------------- |
| anomaly | Device anomaly. |
The following *binary sensors* are created for each port (or LACP):
| Binary Sensor | Description |
| :------------------ | :--------------------------------- |
| link | Link status. |
## Buttons
The following *buttons* are created:
@ -55,16 +61,22 @@ The following *buttons* are created:
The following *sensors* are created:
| Condition | Description |
| Sensors | Description |
| :------------------ | :--------------------------------- |
| fan_1_speed | Fan 1 Speed. |
| fan_2_speed | Fan 2 Speed. |
| ports | Number of used ports. |
| rx | Total RX bytes. |
| rx_errors | Total number of RX errors. |
| rx_speed | Total RX speed. |
| temperature | Switch temperature. |
| tx | Total TX bytes. |
| tx_speed | Total TX speed. |
| uptime | Uptime seconds. |
The following sensors are created for each port (or LACP):
The following *sensors* are created for each port (or LACP):
| Condition | Description |
| Sensors | Description |
| :------------------ | :--------------------------------- |
| link_speed | Link speed. |
| rx | RX bytes. |

View File

@ -2,8 +2,8 @@
title: Rain Bird
description: Instructions on how to integrate your Rain Bird LNK WiFi Module within Home Assistant.
ha_category:
- Irrigation
- Binary Sensor
- Irrigation
- Sensor
- Switch
ha_config_flow: true
@ -15,6 +15,7 @@ ha_codeowners:
ha_domain: rainbird
ha_platforms:
- binary_sensor
- number
- sensor
- switch
ha_integration_type: integration
@ -74,4 +75,4 @@ automation:
data:
entity_id: switch.rain_bird_sprinkler_1
duration: 5
```
```

View File

@ -1,17 +1,19 @@
---
title: Reolink NVR/camera
title: Reolink IP NVR/camera
description: Instructions on how to integrate Reolink devices (NVR/cameras) into Home Assistant.
ha_category:
- Camera
ha_iot_class: Local Polling
ha_iot_class: Local Push
ha_release: 2023.1
ha_domain: reolink
ha_codeowners:
- "@starkillerOG"
- '@starkillerOG'
ha_config_flow: true
ha_platforms:
- Camera
- binary_sensor
- camera
ha_integration_type: integration
ha_dhcp: true
---
The integration allows you to control [Reolink](https://reolink.com/) NVRs or cameras.
@ -63,6 +65,7 @@ The following models have been tested and confirmed to work:
- RLC-410W
- RLC-411
- RLC-420
- RLC-510A
- RLC-511
- RLC-511W
- RLC-520
@ -73,7 +76,9 @@ The following models have been tested and confirmed to work:
- RLC-820A
- RLC-823A
- RLN8-410 NVR
- RLN16-410 NVR
- Reolink Duo Floodlight PoE
- Reolink TrackMix PoE
- Reolink Video Doorbell (PoE and Wi-Fi)
Battery-powered cameras are not yet supported.
@ -82,8 +87,12 @@ The following models are lacking the HTTP webserver API and can therfore not wor
- E1 Pro
## Troubleshooting
- Older firmware versions do not expose the necessary information the integration needs to function. Ensure the camera is updated to the [latest firmware](https://reolink.com/download-center/) prior to setting up the integration. Note that Reolink auto update and check for update functions in the app/windows/web client often do not show the latest available firmware version. Therefore check the version in the [Reolink download center](https://reolink.com/download-center/) online.
- Ensure at least one of the HTTP/HTTPS ports is enabled in the [windows](https://reolink.com/software-and-manual/)/web client under `Settings`->`Network`->`Advanced`->`Port Settings`, see [additional instructions](https://support.reolink.com/hc/en-us/articles/900004435763-How-to-Set-up-Reolink-Ports-Settings-via-Reolink-Client-New-Client-) on the Reolink site.
## Reolink firmware limitations
- The Reolink NVR only sends event-notifications if motion happens on the camera connected to the first (index "0") channel, therefore the binary sensors of all channels will only be updated when the first channel sees motion.
- Reolink doorbell presses only generate ONVIF event notifications when the doorbell is directly connected to your network. The doorbell visitor binary sensor will not work when connecting the Reolink doorbell to an NVR.
- Older firmware versions do not expose the necessary information the integration needs to function. Ensure the camera is updated to the [latest firmware](https://reolink.com/download-center/) prior to setting up the integration.
- The Reolink NVR only sends event-notifications if motion happens on the camera connected to the first (index "0") channel, therefore the binary sensors of all channels will only be updated when the first channel sees motion. Beta NVR firmware v3.0.0.211_23011204 fixes this issue, you can request beta firmware from reolink support, release firmware is expected in a few weeks.
- Reolink doorbell presses only generate ONVIF event notifications when the doorbell is directly connected to your network. The doorbell visitor binary sensor will not work when connecting the Reolink doorbell to an NVR. Beta NVR firmware v3.0.0.211_23011204 fixes this issue, you can request beta firmware from reolink support, release firmware is expected in a few weeks.

View File

@ -44,7 +44,7 @@ feed_id:
required: true
type: string
title:
description: The title of the feed, which is parsed as [template](/topics/templating/).
description: The title of the feed, which is parsed as [template](/docs/configuration/templating/).
required: false
type: template
items:
@ -53,11 +53,11 @@ items:
type: list
keys:
title:
description: The title of the item, which is parsed as [template](/topics/templating/).
description: The title of the item, which is parsed as [template](/docs/configuration/templating/).
required: false
type: template
description:
description: The description of the item, which is parsed as [template](/topics/templating/).
description: The description of the item, which is parsed as [template](/docs/configuration/templating/).
required: false
type: template
{% endconfiguration %}

View File

@ -253,10 +253,10 @@ This example tries to retrieve the price for electricity.
```yaml
# Example configuration.yaml entry
scrape:
- resource: https://elen.nu/timpriser-pa-el-for-elomrade-se3-stockholm/
- resource: https://elen.nu/dagens-spotpris/se3-stockholm/
sensor:
- name: Electricity price
select: ".text-lg:is(span)"
select: ".text-lg.font-bold"
index: 1
value_template: '{{ value | replace (",", ".") | float }}'
unit_of_measurement: "öre/kWh"

View File

@ -7,7 +7,7 @@ ha_release: 0.7
ha_quality_scale: internal
ha_domain: sensor
ha_codeowners:
- "@home-assistant/core"
- '@home-assistant/core'
ha_integration_type: entity
---

View File

@ -12,6 +12,7 @@ ha_domain: sfr_box
ha_platforms:
- binary_sensor
- button
- diagnostics
- sensor
ha_integration_type: device
---

View File

@ -289,4 +289,3 @@ Please check from the device Web UI that the configured server is reachable.
- Generation 1 "Shelly 4Pro" and "Shelly Sense" are not supported (devices based on old CoAP v1 protocol)
- Before set up, battery-powered devices must be woken up by pressing the button on the device.
- OTA update service does not support battery-powered devices

View File

@ -136,7 +136,7 @@ Use `db_size` as column for value.
Change `table_schema="homeassistant"` to the name that you use as the database name, to ensure that your sensor will work properly.
```sql
SELECT table_schema "database", Round(Sum(data_length + index_length) / 1024, 1) "value" FROM information_schema.tables WHERE table_schema="homeassistant" GROUP BY table_schema;
SELECT table_schema "database", Round(Sum(data_length + index_length) / POWER(1024,2), 1) "value" FROM information_schema.tables WHERE table_schema="homeassistant" GROUP BY table_schema;
```
Use `value` as column for value.

View File

@ -2,11 +2,11 @@
title: Starlink
description: Instructions on how to integrate Starlink into Home Assistant.
ha_category:
- Sensor
- Binary Sensor
- Button
- Switch
- Network
- Sensor
- Switch
ha_release: 2023.2
ha_iot_class: Local Polling
ha_config_flow: true
@ -14,16 +14,17 @@ ha_codeowners:
- '@boswelja'
ha_domain: starlink
ha_platforms:
- sensor
- binary_sensor
- switch
- button
- sensor
- switch
ha_integration_type: integration
ha_quality_scale: silver
---
The Starlink integration allows you to integrate your [Starlink](https://www.starlink.com/) into Home Assistant.
**Important:** Your Starlink must **not** be in bypass mode. In this mode, the local API is unavailable, and this integration will not work.
**Important:** If your Starlink is in bypass mode, you will need to open a route to it so that the local API can be accessed. Otherwise this integration will not work.
{% include integrations/config_flow.md %}
@ -32,8 +33,8 @@ The Starlink integration allows you to integrate your [Starlink](https://www.sta
- Ping - The ping that Starlink has measured, in ms
- Azimuth - The direction Dishy is facing in degrees
- Elevation - Dishy's current elevation in degrees
- Uplink throughput - The amount of data being uploaded through Starlink in Mbit/s
- Downlink throughput - The amount of data being downloaded through Starlink in Mbit/s
- Uplink throughput - The amount of data being uploaded through Starlink in Bit/s
- Downlink throughput - The amount of data being downloaded through Starlink in Bit/s
- Last boot time - The time Starlink was last turned on
### Binary Sensor

View File

@ -2,8 +2,8 @@
title: Stookwijzer
description: Instructions on how to use Stookwijzer data within Home Assistant
ha_category:
- Sensor
- Environment
- Sensor
ha_release: 2023.2
ha_iot_class: Cloud Polling
ha_codeowners:
@ -11,8 +11,8 @@ ha_codeowners:
ha_domain: stookwijzer
ha_config_flow: true
ha_platforms:
- sensor
- diagnostics
- sensor
ha_integration_type: service
---

View File

@ -50,12 +50,12 @@ timeout:
type: integer
default: 10
body_on:
description: "The body of the POST request that commands the switch to become enabled. This value can be a [template](/topics/templating/)."
description: "The body of the POST request that commands the switch to become enabled. This value can be a [template](/docs/configuration/templating/)."
required: false
type: string
default: "ON"
body_off:
description: "The body of the POST request that commands the switch to become disabled. This value can also be a [template](/topics/templating/)."
description: "The body of the POST request that commands the switch to become disabled. This value can also be a [template](/docs/configuration/templating/)."
required: false
type: string
default: "OFF"
@ -94,7 +94,7 @@ Make sure that the URL matches exactly your endpoint or resource.
### Switch with templated value
This example shows a switch that uses a [template](/topics/templating/) to allow Home Assistant to determine its state. In this example, the REST endpoint returns this JSON response with true indicating the switch is on.
This example shows a switch that uses a [template](/docs/configuration/templating/) to allow Home Assistant to determine its state. In this example, the REST endpoint returns this JSON response with true indicating the switch is on.
```json
{"is_active": "true"}

View File

@ -8,7 +8,7 @@ ha_category:
- Light
- Switch
ha_release: '2022.10'
ha_iot_class: Local Polling
ha_iot_class: Local Push
ha_config_flow: true
ha_codeowners:
- '@jafar-atili'

View File

@ -5,9 +5,9 @@ ha_category:
- Binary Sensor
- Cover
- Light
- Lock
- Sensor
- Switch
- Lock
ha_release: 0.78
ha_iot_class: Local Push
ha_codeowners:
@ -27,7 +27,6 @@ ha_platforms:
- lock
- sensor
- switch
- lock
ha_config_flow: true
ha_integration_type: integration
---

View File

@ -23,9 +23,10 @@ ha_platforms:
- switch
- update
ha_integration_type: integration
ha_zeroconf: true
---
The Synology DSM integration provides access to various statistics from your [Synology NAS](https://www.synology.com) (_DSM 5.x and higher_) as well as cameras from the [Surveillance Station](https://www.synology.com/en-us/surveillance).
The Synology DSM integration provides access to various statistics from your [Synology NAS](https://www.synology.com) (_DSM 5.x and higher_) as well as cameras from the [Surveillance Station](https://www.synology.com/surveillance).
{% include integrations/config_flow.md %}
@ -52,7 +53,7 @@ Due to the nature of the Synology DSM API, it is required to grant the user admi
When creating the user, it is possible to deny access to all locations and applications. By doing this, the user will not be able to login to the web interface or view any of the files on the Synology NAS. It is still able to read the utilization and storage information using the API.
If you want to add cameras from [Surveillance Station](https://www.synology.com/en-us/surveillance), the user needs application permission for [Surveillance Station](https://www.synology.com/en-us/surveillance).
If you want to add cameras from [Surveillance Station](https://www.synology.com/surveillance), the user needs application permission for [Surveillance Station](https://www.synology.com/surveillance).
### If you utilize 2-Step Verification or Two Factor Authentication (2FA) with your Synology NAS
@ -110,11 +111,11 @@ Similar to the [normal disk sensors](#disk-sensors), there are binary sensors re
## Switch
A switch is available to enable/disable the [Surveillance Station](https://www.synology.com/en-us/surveillance) Home mode.
A switch is available to enable/disable the [Surveillance Station](https://www.synology.com/surveillance) Home mode.
## Cameras
For each camera added in [Surveillance Station](https://www.synology.com/en-us/surveillance), a camera will be created in Home Assistant.
For each camera added in [Surveillance Station](https://www.synology.com/surveillance), a camera will be created in Home Assistant.
## Buttons

View File

@ -13,7 +13,7 @@ ha_platforms:
ha_integration_type: integration
---
This platform allows you to detect presence by looking at connected devices to a [Synology SRM](https://www.synology.com/en-us/srm) router.
This platform allows you to detect presence by looking at connected devices to a [Synology SRM](https://www.synology.com/srm) router.
## Configuration

View File

@ -3,14 +3,20 @@ title: Thread
ha_category:
- Other
ha_release: 2023.2
ha_quality_scale: internal
ha_codeowners:
- '@home-assistant/core'
ha_domain: thread
ha_iot_class: Local Polling
ha_platforms:
ha_integration_type: integration
ha_integration_type: service
ha_config_flow: true
---
The Thread integration is currently a placheolder, but will manage Thread network credentials in a future release.
The integration is automatically setup when the "Silicon Labs Multiprotocol" add-on is installed.
The Thread integration helps you track the different Thread networks in your home and helps you manage their credentials. It is currently a work in progress.
Thread is a low-power mesh networking standard which allows users to connect their devices within a home network. It uses the same RF technology as Zigbee, but provides IP connectivity similar to Wi-Fi. Unlike Zigbee, Thread does not allow to control devices directly: It is just a communication protocol. A higher level protocol such as Matter or HomeKit is required to control Thread enabled devices. Thread allows devices to communicate with each other without the need for a central gateway or router. This makes it ideal for home automation, where a large number of devices may need to be connected.
To connect a Thread network to Home Assistant, Thread Border Routers (TBRs) are used. TBRs are devices that bridge the Thread network to a local Wi-Fi or Ethernet network. To add a TBR to Home Assistant, you can use our [Home Assistant Yellow](/yellow/) hub or the [Home Assistant SkyConnect](/skyconnect/) Zigbee/Thread stick.
Home Assistant communicates with TBRs over the local network. This means that TBRs do not have to be physically attached to Home Assistant to be used. You might already have a TBR as part of other products in your home, like a Google Nest Hub Gen 2 or Apple HomePod Mini. Each vendor forms their own network when you start using their products, so you can end up having a Home Assistant, an Apple, and a Google Thread network in your home. These are all separate networks using different credentials, which prevents devices to roam between TBRs.
It is possible to align credentials for TBRs from different vendors and have them form a single network together. This allows you to freely move devices between rooms without losing connectivity. To do this, you need to make sure that all TBRs use the same credentials.

View File

@ -4,7 +4,7 @@ description: Instructions on how to integrate Torque sensors into Home Assistant
ha_category:
- Car
ha_release: '0.10'
ha_iot_class: Cloud Polling
ha_iot_class: Local Push
ha_domain: torque
ha_platforms:
- sensor

View File

@ -71,7 +71,7 @@ children:
required: false
type: list
state_template:
description: "A [template](/topics/templating/) can be specified to render the state of the media player. In this way, the state may depend on entities that are not themselves media players, like switches or input booleans."
description: "A [template](/docs/configuration/templating/) can be specified to render the state of the media player. In this way, the state may depend on entities that are not themselves media players, like switches or input booleans."
required: false
type: template
commands:

View File

@ -86,7 +86,7 @@ charging_topic:
required: false
type: string
cleaning_template:
description: Defines a [template](/topics/templating/) to define the cleaning state of the vacuum. This is required if `cleaning_topic` is set.
description: Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to define the cleaning state of the vacuum. This is required if `cleaning_topic` is set.
required: false
type: string
cleaning_topic:
@ -98,7 +98,7 @@ command_topic:
required: false
type: string
docked_template:
description: Defines a [template](/topics/templating/) to define the docked state of the vacuum. This is required if `docked_topic` is set.
description: Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to define the docked state of the vacuum. This is required if `docked_topic` is set.
required: false
type: string
docked_topic:
@ -121,7 +121,7 @@ entity_category:
type: string
default: None
error_template:
description: Defines a [template](/topics/templating/) to define potential error messages emitted by the vacuum. This is required if `error_topic` is set.
description: Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to define potential error messages emitted by the vacuum. This is required if `error_topic` is set.
required: false
type: string
error_topic:
@ -133,7 +133,7 @@ fan_speed_list:
required: false
type: [string, list]
fan_speed_template:
description: Defines a [template](/topics/templating/) to define the fan speed of the vacuum. This is required if `fan_speed_topic` is set.
description: Defines a [template](/docs/configuration/templating/#using-templates-with-the-mqtt-integration) to define the fan speed of the vacuum. This is required if `fan_speed_topic` is set.
required: false
type: string
fan_speed_topic:

View File

@ -7,7 +7,6 @@ ha_category:
ha_iot_class: Local Push
ha_release: 0.18
ha_codeowners:
- '@bendavid'
- '@thecode'
ha_domain: webostv
ha_config_flow: true

View File

@ -9,11 +9,12 @@ ha_iot_class: Cloud Push
ha_config_flow: true
ha_codeowners:
- '@abmantis'
- '@mkmer'
ha_domain: whirlpool
ha_platforms:
- climate
- sensor
ha_integration_type: integration
ha_integration_type: hub
---
The `whirlpool` integration integrates Whirlpool 6th Sense Live, and Whirlpool/Maytag Washer and Dryer appliances into Home Assistant.

View File

@ -1615,7 +1615,7 @@ Sensor Dirty Left*:
Current Clean Time:
description: The current cleaning time of the vacuum. If the vacuum is not cleaning, this sensor will have the same value as the "Last Clean Duration" sensor.
Current Clean Area:
description: The current area that has been cleaned. If the vacuum is not cealning, this sensor will have the same value as the "Last Clean Area" sensor.
description: The current area that has been cleaned. If the vacuum is not cleaning, this sensor will have the same value as the "Last Clean Area" sensor.
Last Clean Area*:
description: The last cleaned area in square meters
Last Clean Duration*:

View File

@ -9,7 +9,7 @@ ha_domain: zeversolar
ha_platforms:
- sensor
ha_config_flow: true
ha_integration_type: integration
ha_integration_type: device
ha_codeowners:
- '@kvanzuijlen'
---

View File

@ -144,7 +144,7 @@ a new pop-up asking for a radio type. In the pop-up:
| Radio Type | Zigbee Radio Hardware |
| ------------- | ------------- |
| `ezsp` | Silicon Labs EmberZNet protocol (e.g., Elelabs, HUSBZB-1, Telegesis) |
| `ezsp` | Silicon Labs EmberZNet protocol (e.g., Home Assistant SkyConnect, Elelabs, HUSBZB-1, Telegesis) |
| `deconz` | dresden elektronik deCONZ protocol (e.g., ConBee I/II, RaspBee I/II) |
| `znp` | Texas Instruments (e.g., CC253x, CC26x2, CC13x2) |
| `zigate` | ZiGate Serial protocol (e.g., ZiGate USB-TTL, PiZiGate, ZiGate WiFi) |
@ -234,10 +234,11 @@ zha:
ledvance_provider: true # Auto update LEDVANCE/OSRAM devices
salus_provider: true # Auto update SALUS/Computime devices
inovelli_provider: true # Auto update INOVELLI devices
thirdreality_provider: true # Auto update 3REALITY devices
#otau_directory: /path/to/your/ota/folder # Utilize .ota files to update everything else
```
You can choose if the IKEA, LEDVANCE, SALUS, or INOVELLI provider should be set to enabled (`true`) or disabled (`false`) individually. After the OTA firmware upgrades are finished, you can set these to `false` again if you do not want ZHA to automatically download and perform OTA firmware upgrades in the future.
You can choose if the IKEA, LEDVANCE, SALUS, INOVELLI or THIRDREALITY provider should be set to enabled (`true`) or disabled (`false`) individually. After the OTA firmware upgrades are finished, you can set these to `false` again if you do not want ZHA to automatically download and perform OTA firmware upgrades in the future.
Note that the `otau_directory` setting is optional and can be used for any firmware files you have downloaded yourself, for any device type and manufacturer. For example, Philips Hue firmwares manually downloaded from [here](https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/OTA-Image-Types---Firmware-versions) and/or [here](https://github.com/Koenkk/zigbee-OTA/blob/a02a4cb33f7c46b4d2916805bfcad582124ec975/index.json) added to the `otau_directory` can be flashed, although a manual `zha.issue_zigbee_cluster_command` command currently (as of 2021.3.3) must be issued against the IEEE of the Philips Hue device under Developer Tools->Services, e.g.:
@ -433,11 +434,11 @@ Tip to new users is that, while there is no official list of supported devices,
### ZHA exception and deviation handling
The ZHA implementation in Home Assistant relies on a library called "[ZHA Device Handlers](https://github.com/zigpy/zha-device-handlers)" to resolve issues with Zigbee devices that do not fully conform with the Zigbee standards. The few devices that deviate from the Zigbee specifications set by the [Zigbee Alliance](https://zigbeealliance.org) may therefore require proper bug reports with debug logs from users to assistant the developers in writing custom [ZHA Device Handlers](https://github.com/zigpy/zha-device-handlers/blob/dev/README.md) for all of a device functions to work properly with the ZHA integration.
Home Assistant's ZHA integration already supports most standard device types out-of-the-box as long as they follow the official Zigbee specifications, but for devices that manufacturers have not properly not fully Zigbee compatible, the ZHA integration has implemented a library called "[ZHA Device Handlers (also known as "zha-quirk")](https://github.com/zigpy/zha-device-handlers)" that handle and resolve compliance issues via custom conversion/translation of Zigbee parameters (clusters and attributes) for specific devices which do not conform with the Zigbee standards.
The few devices that will, for example, not join/pair properly or, while joined/paired, do not present all attributes in the ZHA integration likely deviate from the Zigbee specifications set by the [CSA (Connectivity Standards Alliance)](https://csa-iot.org/all-solutions/zigbee/). These devices may therefore require the creation of a bug report by a device owner, supplying debug logs. The device owner may need to actively assist in troubleshooting by providing the information developers need to create custom ZHA Device Handlers.
Such a custom "ZHA Device Handler" are Python scripts that internally are also referred to as a "quirk" because they fix "quirks", like deviations from the standard specifications. ZHA Device Handles do this by transparently, acting as a translator, translating and converting non-compliant device messages and instead present them to the application as coming from a virtual compliant device. These ZHA Device Handlers for Home Assistant can thus be used to parse custom messages to and from Zigbee devices. The ZHA Device Handlers that are made can then be reused by all users in future versions of Home Assistant.
The custom quirks implementations for zigpy implemented as ZHA Device Handlers for Home Assistant are a similar concept to that of [Hub-connected Device Handlers for the SmartThings Classics platform](https://docs.smartthings.com/en/latest/device-type-developers-guide/) as well as that of [Zigbee-Herdsman Converters (formerly Zigbee-Shepherd Converters) as used by Zigbee2mqtt](https://www.zigbee2mqtt.io/how_tos/how_to_support_new_devices.html), meaning they are each virtual representations of a physical device that expose additional functionality that is not provided out-of-the-box by the existing integration between these platforms.
### Reporting issues

Some files were not shown because too many files have changed in this diff Show More