Browse Source

Second try to add files after node red was installed

hmetzner 3 years ago
parent
commit
428d9d15a4
100 changed files with 38893 additions and 52 deletions
  1. 1 0
      .HA_VERSION
  2. 2 0
      .gitignore
  3. 562 0
      .storage/auth
  4. 21 0
      .storage/auth_provider.homeassistant
  5. 10 0
      .storage/core.analytics
  6. 49 0
      .storage/core.area_registry
  7. 16 0
      .storage/core.config
  8. 466 0
      .storage/core.config_entries
  9. 2148 0
      .storage/core.device_registry
  10. 9163 0
      .storage/core.entity_registry
  11. 2117 0
      .storage/core.restore_state
  12. 8 0
      .storage/core.uuid
  13. 32 0
      .storage/energy
  14. 106 0
      .storage/esphome.1c57455992efa560b2971faa1f42e33a
  15. 70 0
      .storage/esphome.2e50b97a66348e98f9983e21a20a050b
  16. 12 0
      .storage/frontend.user_data_76eee73abb344efcb74f3f20a1c24015
  17. 13 0
      .storage/hacs.critical
  18. 37 0
      .storage/hacs.hacs
  19. 23724 0
      .storage/hacs.repositories
  20. 18 0
      .storage/http
  21. 8 0
      .storage/http.auth
  22. 16 0
      .storage/image
  23. 27 0
      .storage/lovelace.lovelace_mydash
  24. 18 0
      .storage/lovelace_dashboards
  25. 14 0
      .storage/lovelace_resources
  26. 10 0
      .storage/mobile_app
  27. 13 0
      .storage/onboarding
  28. 34 0
      .storage/person
  29. 8 0
      .storage/repairs.issue_registry
  30. 6 0
      .storage/trace.saved_traces
  31. 63 0
      .storage/zone
  32. 15 3
      configuration.yaml
  33. 7 1
      custom_components/config_editor/__init__.py
  34. 1 1
      custom_components/config_editor/manifest.json
  35. BIN
      custom_components/hacs/__pycache__/__init__.cpython-310.pyc
  36. BIN
      custom_components/hacs/__pycache__/base.cpython-310.pyc
  37. BIN
      custom_components/hacs/__pycache__/config_flow.cpython-310.pyc
  38. BIN
      custom_components/hacs/__pycache__/const.cpython-310.pyc
  39. BIN
      custom_components/hacs/__pycache__/diagnostics.cpython-310.pyc
  40. BIN
      custom_components/hacs/__pycache__/entity.cpython-310.pyc
  41. BIN
      custom_components/hacs/__pycache__/enums.cpython-310.pyc
  42. BIN
      custom_components/hacs/__pycache__/exceptions.cpython-310.pyc
  43. BIN
      custom_components/hacs/__pycache__/frontend.cpython-310.pyc
  44. BIN
      custom_components/hacs/__pycache__/sensor.cpython-310.pyc
  45. BIN
      custom_components/hacs/__pycache__/system_health.cpython-310.pyc
  46. 37 18
      custom_components/hacs/base.py
  47. 1 1
      custom_components/hacs/const.py
  48. 14 4
      custom_components/hacs/frontend.py
  49. BIN
      custom_components/hacs/hacs_frontend/__pycache__/__init__.cpython-310.pyc
  50. BIN
      custom_components/hacs/hacs_frontend/__pycache__/version.cpython-310.pyc
  51. BIN
      custom_components/hacs/hacs_frontend/c.014b1a3b.js.gz
  52. BIN
      custom_components/hacs/hacs_frontend/c.07dde5c0.js.gz
  53. BIN
      custom_components/hacs/hacs_frontend/c.09384688.js.gz
  54. 1 1
      custom_components/hacs/hacs_frontend/c.eab771ac.js
  55. BIN
      custom_components/hacs/hacs_frontend/c.0a1cf8d0.js.gz
  56. 2 2
      custom_components/hacs/hacs_frontend/c.a7d20849.js
  57. BIN
      custom_components/hacs/hacs_frontend/c.0ca5587f.js.gz
  58. 6 6
      custom_components/hacs/hacs_frontend/c.ed83d060.js
  59. BIN
      custom_components/hacs/hacs_frontend/c.0f6bb17e.js.gz
  60. 2 2
      custom_components/hacs/hacs_frontend/c.d5a56e52.js
  61. BIN
      custom_components/hacs/hacs_frontend/c.11ad1623.js.gz
  62. BIN
      custom_components/hacs/hacs_frontend/c.138a5fae.js.gz
  63. 1 1
      custom_components/hacs/hacs_frontend/c.cfbcc2a8.js
  64. BIN
      custom_components/hacs/hacs_frontend/c.14dc9dca.js.gz
  65. BIN
      custom_components/hacs/hacs_frontend/c.167d87ac.js.gz
  66. 1 0
      custom_components/hacs/hacs_frontend/c.25ed1ae4.js
  67. BIN
      custom_components/hacs/hacs_frontend/c.25ed1ae4.js.gz
  68. 1 0
      custom_components/hacs/hacs_frontend/c.2645c235.js
  69. BIN
      custom_components/hacs/hacs_frontend/c.2645c235.js.gz
  70. BIN
      custom_components/hacs/hacs_frontend/c.28c2a1ee.js.gz
  71. 1 1
      custom_components/hacs/hacs_frontend/c.886b012a.js
  72. BIN
      custom_components/hacs/hacs_frontend/c.2d5ed670.js.gz
  73. 1 1
      custom_components/hacs/hacs_frontend/c.f737bc56.js
  74. BIN
      custom_components/hacs/hacs_frontend/c.2ee83bd0.js.gz
  75. 1 1
      custom_components/hacs/hacs_frontend/c.eedd7a8a.js
  76. BIN
      custom_components/hacs/hacs_frontend/c.3243a8b0.js.gz
  77. 1 1
      custom_components/hacs/hacs_frontend/c.682e5f92.js
  78. BIN
      custom_components/hacs/hacs_frontend/c.3da15c48.js.gz
  79. BIN
      custom_components/hacs/hacs_frontend/c.3f8082e4.js.gz
  80. 1 1
      custom_components/hacs/hacs_frontend/c.476721bc.js
  81. BIN
      custom_components/hacs/hacs_frontend/c.3f859915.js.gz
  82. 1 1
      custom_components/hacs/hacs_frontend/c.6e0bb230.js
  83. BIN
      custom_components/hacs/hacs_frontend/c.4204ca09.js.gz
  84. 1 1
      custom_components/hacs/hacs_frontend/c.70483bd2.js
  85. BIN
      custom_components/hacs/hacs_frontend/c.4266acdb.js.gz
  86. 1 1
      custom_components/hacs/hacs_frontend/c.c87dd2e2.js
  87. BIN
      custom_components/hacs/hacs_frontend/c.42d6aebd.js.gz
  88. 1 1
      custom_components/hacs/hacs_frontend/c.b48cc788.js
  89. BIN
      custom_components/hacs/hacs_frontend/c.456b65b4.js.gz
  90. BIN
      custom_components/hacs/hacs_frontend/c.476721bc.js.gz
  91. BIN
      custom_components/hacs/hacs_frontend/c.48057b49.js.gz
  92. BIN
      custom_components/hacs/hacs_frontend/c.497c36cc.js.gz
  93. 1 1
      custom_components/hacs/hacs_frontend/c.8ed395e6.js
  94. BIN
      custom_components/hacs/hacs_frontend/c.4c04acb5.js.gz
  95. BIN
      custom_components/hacs/hacs_frontend/c.4d0a19ff.js.gz
  96. 1 1
      custom_components/hacs/hacs_frontend/c.c78ed058.js
  97. BIN
      custom_components/hacs/hacs_frontend/c.4fa7acdf.js.gz
  98. 1 1
      custom_components/hacs/hacs_frontend/c.6fe7dd6c.js
  99. BIN
      custom_components/hacs/hacs_frontend/c.4feb0cb8.js.gz
  100. 0 0
      custom_components/hacs/hacs_frontend/c.50ff9066.js

+ 1 - 0
.HA_VERSION

@@ -0,0 +1 @@
+2022.11.2

+ 2 - 0
.gitignore

@@ -0,0 +1,2 @@
+*.db*
+

+ 562 - 0
.storage/auth

@@ -0,0 +1,562 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "auth",
+  "data": {
+    "users": [
+      {
+        "id": "76eee73abb344efcb74f3f20a1c24015",
+        "group_ids": [
+          "system-admin"
+        ],
+        "is_owner": true,
+        "is_active": true,
+        "name": "Test",
+        "system_generated": false,
+        "local_only": false
+      },
+      {
+        "id": "a6bd9667f720400d8551ba2d1ffa08c1",
+        "group_ids": [
+          "system-read-only"
+        ],
+        "is_owner": false,
+        "is_active": true,
+        "name": "Home Assistant Content",
+        "system_generated": true,
+        "local_only": false
+      },
+      {
+        "id": "4a33ca4dd68142379685c2df2522ffee",
+        "group_ids": [
+          "system-admin"
+        ],
+        "is_owner": false,
+        "is_active": true,
+        "name": "Holger",
+        "system_generated": false,
+        "local_only": false
+      },
+      {
+        "id": "0b5c1be565704d28992fada0dddec5dc",
+        "group_ids": [
+          "system-users"
+        ],
+        "is_owner": false,
+        "is_active": true,
+        "name": "Nele",
+        "system_generated": false,
+        "local_only": false
+      }
+    ],
+    "groups": [
+      {
+        "id": "system-admin",
+        "name": "Administrators"
+      },
+      {
+        "id": "system-users",
+        "name": "Users"
+      },
+      {
+        "id": "system-read-only",
+        "name": "Read Only"
+      }
+    ],
+    "credentials": [
+      {
+        "id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "auth_provider_type": "homeassistant",
+        "auth_provider_id": null,
+        "data": {
+          "username": "test"
+        }
+      },
+      {
+        "id": "9f798200ec224f4cba157fdfcadc5380",
+        "user_id": "4a33ca4dd68142379685c2df2522ffee",
+        "auth_provider_type": "homeassistant",
+        "auth_provider_id": null,
+        "data": {
+          "username": "holger"
+        }
+      },
+      {
+        "id": "52420d6654ab41698220ce99c0906505",
+        "user_id": "0b5c1be565704d28992fada0dddec5dc",
+        "auth_provider_type": "homeassistant",
+        "auth_provider_id": null,
+        "data": {
+          "username": "nele"
+        }
+      }
+    ],
+    "refresh_tokens": [
+      {
+        "id": "29ff1de781524cfda318a30eb0f3b328",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T13:27:00.216457+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "66fc7329a0e09095a74ab82f3c71e51be87a67592b9684dea34aed2c5691ca466763f9835d2ebcb91acd4278c34f381e244c4f8bb48d51e8ad7dfb30fc261851",
+        "jwt_key": "9db8bbe6b4182e2107ae9dd63e241ca8581c42bb1065415e07991f84cbed211ab2a2f00cd9f3ee476d3ef770b197a451a371400fd9e8599765a3b103afe9cb78",
+        "last_used_at": "2022-01-13T13:27:00.216737+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "8e7f37b24d58451eb80e93a367ce981d",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T13:32:00.220776+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "21a03ac20c26bef6909892f7f6bc57c4f7dd42234441f56308ae81136e903d08981d72db79b31ea180e890d3735accaa6623ca3d37505ec6cb6e9170634813df",
+        "jwt_key": "3b66d67824187a0ca9a61e213b6cb849006d22b8777bfd812caa6514e27e1b27fec79b6d4a3ff29d7a0bbd7c0aca64dcfaa8e16cd0cf5e797ed8286874cdeba3",
+        "last_used_at": "2022-01-13T13:32:00.221078+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "01b083f6340f43418cd170ae8e1afc85",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T15:07:44.531412+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "21a0bc64da8bd3e28d5f59b673560ddec36da732c697e209852cecd925fc70273c961bf33eb7b3a1e1f392094b5892ef2bcc3176b763e7b2012563822edbb7a1",
+        "jwt_key": "4307edb6f37c43000fbdfd7b26cae9875587da9b7c9183dae4f8b98ce1cb675e6d90f1872150149190fbf050254ce1fef45547b88f0cee1203fab730d2a226a9",
+        "last_used_at": "2022-01-13T15:07:44.531853+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "8300c55fd71b4a02899c26316d8c8df3",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T15:32:02.451196+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "381621080c0dfbaaada7d5ae2ab6abfada815dbd3755ce6997d4586f328909a030ba460a4bceebc3382d79d12c89d8f471e24ecdd616cdbeffebe1918ba55983",
+        "jwt_key": "390bedfef3bff7cceffcbc9200182ce487dc63e1cde2b2da395abc3f84282ed9e5551c84f5550695f5da0dca08392006c427a32aba18cf39d00cb25706c11964",
+        "last_used_at": "2022-01-13T15:32:02.451495+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "e8d112f2aaca4bc786638b329d4339fc",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T15:45:41.567395+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "954e7d78980d400e1e39688c099cda62651067275358e4c08578a66cd25a03a2f3e33080b7845b480c62feecb4b6db4085717e5bba23ff7b386496f26857725a",
+        "jwt_key": "c7d5f3fe6c25b491c700388e3b2b8a00cb5c2d183783e44e0b1026d0606edf660b8b3c93412739745f31958333ac498a2a20de5a6e8c61d713d66e187e010df2",
+        "last_used_at": "2022-01-31T08:02:55.452115+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "1d9e1bb6bc7b472cae6ad0c51950bca1",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-13T16:58:44.990997+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "e3bc30ea6d1a3a47448a9cd5c6aff0473d2e80861a6ac8c624c19c5dbde88ea75f2e4786658bb98c102a2c40327d50002fd80297f29c9f62c29f50dabd24c038",
+        "jwt_key": "ffa77e783ce6107c6d9b7007884b23ff0f7c13e840c86faf07bcc34591cacf5b0784592083333774e297bcf4b13b715540b35a24afa6adb92f3d5c550835e769",
+        "last_used_at": "2022-08-10T11:20:41.529540+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "e47bd670053143d8bb89c3fb57b93bc6",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-14T09:54:25.463034+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "ec3476eebe1b766e6a87d5dfbb99d832071c0b8318ddc32e2ad6c01ba025657d9fcb5b34c2bbbd9e8287a078ba44311c160a26d9bd222021d1e6cf3275822086",
+        "jwt_key": "8a99b15c7bf0b921b2b1619b6736a52e56da708f57b3a9f432d38e95fde91d9be7c73c3385c2a12b700028dcc5383d84ec8d989364a00e0519b5c6db37b28c17",
+        "last_used_at": "2022-01-15T12:00:19.221760+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "a1440b56bc5342bf8b90d7de19466996",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-01-24T23:20:05.902888+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "68c2943615b2040327d43b4f6d31ea7742ef5deff1e41f59879114f59f020c5e0d25691ec18ce0fa2f9d911386bb49835621c2327337fe7896e842367eb7fb83",
+        "jwt_key": "7838501878fe8e2c0de17061ad77de4d5562706774a65c081268052ee3d9c9bfaf1523f904e5ae98290199950b72062dd203003713c6e6c6a036fd40616c9dc6",
+        "last_used_at": "2022-01-24T23:20:05.903071+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "06b53e4cb0ca47da9362750b1f61a7e3",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-02-07T20:08:04.857822+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "dd688480cf95c4514036d632b1ea63de55bd3ee3f2893f13266c34aebae23826833ce1e524ef03bb8a45b07db0e0df7c39cfd683c8c31440362d5953a1ade700",
+        "jwt_key": "0a7522c0113e5c581f62da123231544405c96e48d25ad5fa50e305f947489647811c82b67d929ca9b3dc4e7605a86300737f92fae661a12bb663da168ecfc11f",
+        "last_used_at": "2022-02-07T20:08:04.858095+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "78ce42ac2ff04e228859b27cefa9f6f8",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-02-08T06:55:08.832867+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "bfc269801da51cacafdde9bd3ef89c4a272bb3380fcc8f23e75495dac6d51effd85fbed8e832baad273b007584e89cd331b55b976ac0aa55aa08e8569e0f1846",
+        "jwt_key": "76d23519bc3276179d5f863d4a70f90315342d89fbed4dcac0d0a33b02234bf9238817887ef70d83e593caefafc3c61fa8df553d1abc993c777d1238818ad3f1",
+        "last_used_at": "2022-03-10T17:21:01.086723+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "ffd38fb886dc41e3b8249c4cf4ff68ea",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-03-10T22:43:48.516221+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "d9fe2051be14bc47b6bdfc1ffe00d1bbfc13b9d011eb994e2c39847cc29ee86cf3af3b522c5c84ab6a77eb32cb539565bc23beb5307109e0818782ac2e7ef990",
+        "jwt_key": "083d436a1ad66594dc9fc0c1ce36eedffc25d440c875dba4146b6da57bec473e653a690bdfd5175f782945baed69756e33817438a70e9fceec253f39f90770e6",
+        "last_used_at": "2022-03-10T22:43:48.516413+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "a51e5afaefc34d89aa5f220967a8d6db",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-03-21T10:51:55.106764+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "21fc76c6af09b2951f926a7967615eb167d6a8c97dfb39c4d78659fc41864b2188c173371bcbe14f35dcc1eeb118289b4fbfe356b963042045f8161dc86f7956",
+        "jwt_key": "4431af19836cf67d7bc3f1b6835118a4e873764d26871d6ebc36df5bfb4e72f4b38041aed5efcd4f42d5fefdbafe06cd850c05eb6d9deb0e2127895427ec8901",
+        "last_used_at": "2022-03-22T07:02:45.684663+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2021.12.9"
+      },
+      {
+        "id": "19cc6710b48844a0ab5413abed3ca5e9",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-06-28T16:08:36.761848+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "ddf745e0e80ba6a39efa3cb35943b924073b98ea0f92ad0102ebcb4c090b76a52a794eb2dc00f2151a6d401f7cd8e3e8680813520d4563bedfa37308cb728261",
+        "jwt_key": "0d17850332bd6961b3b69d8b94036ee474651fa1fa2112e1e4ed288a8793288185a5f75b988750f2da8093f931a427fb6680c98e7b2648addda2442b1f9a133e",
+        "last_used_at": "2022-06-28T16:08:36.762002+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.6.7"
+      },
+      {
+        "id": "f80a6755d8cb4b58b0fb7bafbbeb1615",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-06-28T16:10:38.084307+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "8489d1f9357702c63c968e4a63fb3c0a194cc28f08a11b4241909917422808d9e26305425fdd2f8ec8c217b928dbcad820a62436592c08c82cf23d5f5eba6346",
+        "jwt_key": "67cb95134be1e7e9fa37e9b621f59434c870ec5d16943e34f32a96a7113df7c812b2bed974b2e209b2583c38260ff1b6b223cf34f96250619752d857d6c77387",
+        "last_used_at": "2022-09-07T10:35:53.484459+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.6.7"
+      },
+      {
+        "id": "8072d9a0140e455491342e583e7e877f",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-09T12:51:17.761398+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "bd5db68577f7e2f7eedf5cada56a4fa69feeb601ff5725a663352b1db561474949d9e4609e26c6388804617da33dc9ef7a1f0e7720b427a7cd63196c3ebf5b9d",
+        "jwt_key": "761f475424bdac89ece51d364394ef384e15b89977153a23bd4142b1c68d4df60616a9cb2b189cd916e538f186f40dd0ec1d98ae853302eddedccf145448709e",
+        "last_used_at": "2022-08-09T12:51:17.761737+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "f73548c86d494a72bc50335abb806072",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-09T12:51:54.185062+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "7864bc8edc1481b67ffc1baa565b929b4f7f89687106dd1edf6768ed7bcaa39e16e1a761e3554ed2558704c4480c57c83192479d9c1c66b5fcb3b2ee3bba7880",
+        "jwt_key": "55ac81157bc969989358b5c3bac3ce8384bfa644730fe9e29df72594ddba35041632a43fe198598a595139151ee5d1277f057e2107a8717b1e663dd696636ef5",
+        "last_used_at": "2022-08-10T08:39:38.116056+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "ad498d042ae141158cdf2dceb471ab59",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-10T08:40:12.029049+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "a8b202b96ec3ae7ca5b19025a1f2ee171e588976a7107264da0c82b3da1f1f99c91867b1e34c4d06c667fbaf3bffc5b1280b0a861d0f0146cf2542f66efb519a",
+        "jwt_key": "282baece00a7d9c79d776623ae84e2864233275657ab4f45a5787cffb62761ee6ce444f763d3e43f7efbd313fd192d6bede2b51672ffb9288d12a4c39429c3ee",
+        "last_used_at": "2022-08-10T08:40:12.029308+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "c87ddb68aee64f3388866a7cc1a6b9ba",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-10T08:52:35.105409+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "20cf72a8f1fe8fd350c8bdaa36c3566cf3bedf8f86b8b20945328741762eece280e864dffcd8efa0e9464375a2f17908512b1336e1df32e6877fa5472412b2cd",
+        "jwt_key": "96a970b0c47f8ad0ef45e22296a1ab797f3a882d98d42a27db94873bde22e3a6b1bbeb2021c6645fd555a51933072f8bc3041bdaafbd2c255b4938298468693f",
+        "last_used_at": "2022-08-10T08:52:35.105734+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "b4d1fb3d04ec41a583ebb4541277d197",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-10T08:52:56.968029+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "f465000553338831c38b537b3c59ad66b6cdeae835112743e89a0338cc4e12f535f33495580b85a8e58bd1d4161baefa2da701905dd9ea7157789d68d207fa3d",
+        "jwt_key": "e22e09aa01a989668ea44ef555e75c757aa53fc286f8f494fb1203861ff92c4d59a312a2a0e5d5c657daadf22f894474590fba62e2f90fd293c7a513745cd9ad",
+        "last_used_at": "2022-11-12T06:20:46.179430+00:00",
+        "last_used_ip": "79.216.224.113",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "cbf3eb5524b04266a0692c13c7bc9a9f",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-10T20:36:02.516456+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "f8c52f9fd07d350a8dedeb780691be685b678f5a10a61409cbed77d95700806a1570accd5a31d5901a934226c007e9322a24e66e16e34e425aa863c51c14f5b0",
+        "jwt_key": "60f2e9e44ee762f9d455d7b5bb5b8947a38ecd131c0a7348ab0de891be637e754e1920a7bc2ee533ed064a6afaa1a3b689e815c2ee3cdb4cb99f22cb889ff9bb",
+        "last_used_at": "2022-08-10T20:36:02.516716+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "cc8a514b9e584407bb32a105075521a3",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-11T18:49:19.674171+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "f9959aa851a6d9a0317c86d2d92c6cd98372375fb8a25008fbb19647ca0ec4c3b4bf4825d3b3df3c6bf1768f0ae1402b616e03299c127d82e6be95a68c983ed2",
+        "jwt_key": "df9634246b549d94c275ee91d96c2a6c393ecb802f4eeea010ba8ab016ac805a927e16ac2b0e5c58abd5d536dbe5d6fbddd932affd96884bc84bf8ef11cfbc08",
+        "last_used_at": "2022-08-13T05:28:45.376369+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "13aeea763670457db579a664a2811875",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-11T18:53:01.573576+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "42f5d16a2851ca284a650e4ff4f8ad3aeb9ba5e59fbe76c334fc64a6ea04f00d9281dff25cae976ccb3fbc693c04f841b801effa775825ebdc880d9837fb6224",
+        "jwt_key": "1fb59bc210c3cdcceee3cf19aa4d99575d6a25a004d4451492cfde9ca3f7c78de561f9bfa7ec5271f81bae702f91e25a8747a20a726cdc86d395a5c466ac1052",
+        "last_used_at": "2022-08-11T18:53:01.573846+00:00",
+        "last_used_ip": "192.168.1.75",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "8fa19e866a9e4900825b20d7826c8008",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://home-assistant.io/iOS",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-11T19:00:49.951392+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "d0eb38b3e4f62eaac691ba6e949b6a255ca2e5436ae69269fa1a1bd7b4dcabf237b5a753e4074b06e003acb1e5eb338c0a345141aeb9e165258da0e028bac5b6",
+        "jwt_key": "a7d9fe2986307f53c62e9d040795ec5ca4ed232567cb80c2f14d446eb9ac406d8deff9607ab60d5eeaf5f67f77771a5da8787f23807fd68fe69a43906af04a6f",
+        "last_used_at": "2022-08-14T13:43:24.647146+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "750fe2307ead4484b2023823dc139f8b",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-11T19:04:42.116960+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "e9e0c3185f34e8d7817dc77a11da3a794b6c8c94d89deeed8ff64020d68bb02c6b69771159cd315b2eae41578c42512e405b610f5cde2f9310655b9761a0f6a6",
+        "jwt_key": "f18546ab6e3849034b742c8ff07867f8a5e8d84c6e367f67dc38e9e090b4807ba6fab7d3e301e98109d4a18abef2e5072de7d23bf576ee8b52baa8da1707fdc0",
+        "last_used_at": "2022-08-11T19:04:42.117283+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "a3f0e51e7570446da000c828696ed8e4",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "https://hassio.metzner.myhome-server.de/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-11T19:04:56.178528+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "d35f5ff8780e3e252a8526b2da8a0c4d6293b8454eed35ced15c839bc9b4c6b21fe9b2cf490022df8b8d69537c2841ecaba6c2d3081e635b098fab8ac73bb060",
+        "jwt_key": "368985859ae0a24a1adac387d2123e3331806624aa9ba2688e2d90e5f1c1bc8ccf2c4e0ba0c90c5d30b71d9c71dd7ccbe88a7e2422c0cd80b7c8cfae21983821",
+        "last_used_at": "2022-09-15T10:24:51.985801+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "ea2dc283962741b5afdda95acf5a33d5",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "client_id": "http://192.168.1.146:8123/",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-11-11T15:23:25.648313+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "05bcd50b892e3c166a03155077cb0fedb4d2bccbbddd605ad4d7cc58474cb5a74d32ccb67280282405380addbd2bbfaadc898fcb83dda3f3ae031cb296c3eeda",
+        "jwt_key": "e16b45367a2401baeaa7b05a2d570777144a512102f7a9d9309f6228e6da3e2b3f650aacae805b3224ec9fcaec454df256b8cd76bdb681699d8c16d846853d3c",
+        "last_used_at": "2022-11-12T05:18:38.893856+00:00",
+        "last_used_ip": "192.168.1.108",
+        "credential_id": "5a9dbf4a6efc4b699860177fffb1d50f",
+        "version": "2022.11.1"
+      },
+      {
+        "id": "bd512dfb9405470e9a2a42bef1ca242e",
+        "user_id": "a6bd9667f720400d8551ba2d1ffa08c1",
+        "client_id": null,
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "system",
+        "created_at": "2022-06-28T16:04:08.083179+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "991eb8b1cd52e00d910afa9aa2cbe11f8e1db85702baa1441f250438ef8fea5b1c017b31407f59dcb5f833cc96de2ae8fe16d2ae0e8160aabcec32f073852f71",
+        "jwt_key": "94f88c8b2d47ed6ef1d3c13d185c36997533655fef0208220c814e0318c3bb3319a384115b9a26347f2fbb50941423903085de1973e6f892d43f9c57641e4a94",
+        "last_used_at": null,
+        "last_used_ip": null,
+        "credential_id": null,
+        "version": "2022.6.7"
+      },
+      {
+        "id": "e474a69cba924568b279f6b307e637de",
+        "user_id": "4a33ca4dd68142379685c2df2522ffee",
+        "client_id": "https://home-assistant.io/iOS",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-14T12:31:13.810224+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "d8b615f214cdb39e5a5e3228ae906ee2faae9d60ac12c24c601d31e9877d1feef633b6b90a25a1954d6edcad05d9974ed2777709d105fa534b43bcd5ac4351fc",
+        "jwt_key": "2aab40082ac506916881563242f128d1c5ec3ad9ece654875eb8c85c4de27de79e0d13a36fbaa0e66a8f387cd34eaf753413a8bf7dc09e0f694f97b43c574c8e",
+        "last_used_at": "2022-11-15T16:33:16.706336+00:00",
+        "last_used_ip": "84.178.156.224",
+        "credential_id": "9f798200ec224f4cba157fdfcadc5380",
+        "version": "2022.8.2"
+      },
+      {
+        "id": "9acbb98144e54302af7748fd6f019915",
+        "user_id": "0b5c1be565704d28992fada0dddec5dc",
+        "client_id": "https://home-assistant.io/android",
+        "client_name": null,
+        "client_icon": null,
+        "token_type": "normal",
+        "created_at": "2022-08-14T14:34:29.259456+00:00",
+        "access_token_expiration": 1800.0,
+        "token": "c2a3df2dcedddf0525d52bccb0b619dd78ece7fb1a04bf9e4b76b3613e0e64a24fe3067302046024957ed2dc1f34e35aba421ab58d9584280d8be73c143f58e7",
+        "jwt_key": "84d559812b0e9f6c4bcd11621d571d709ef508e6d39e9ed3dff67a85cc019a54a51d4f09b0ce9df102312ed79a1d6bd62591d9fcaa088ab8139296252a373ced",
+        "last_used_at": "2022-09-22T20:44:52.755278+00:00",
+        "last_used_ip": "172.20.0.2",
+        "credential_id": "52420d6654ab41698220ce99c0906505",
+        "version": "2022.8.2"
+      }
+    ]
+  }
+}

+ 21 - 0
.storage/auth_provider.homeassistant

@@ -0,0 +1,21 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "auth_provider.homeassistant",
+  "data": {
+    "users": [
+      {
+        "username": "test",
+        "password": "JDJiJDEyJHNrWGNHYnJpaDBtcExmM25QM3NEQk9Sd2FkUkdTekRxNnBYYUhWS0lWVmFDL2cuQ0ZsU1RL"
+      },
+      {
+        "username": "holger",
+        "password": "JDJiJDEyJHd4VGlEay52Q29URzRBalB1MDJpMXVKSHZnVzBaMEN5QVMvUjRGN0ZCVnNha1F0T05VUm9t"
+      },
+      {
+        "username": "nele",
+        "password": "JDJiJDEyJGMxR1ZHdG1aSnZXa0ZnS1doby5MSk9yVll1N0NnQnFWMi9qYTNZNEZjOUhzZHhvYkVUNlRp"
+      }
+    ]
+  }
+}

+ 10 - 0
.storage/core.analytics

@@ -0,0 +1,10 @@
+{
+    "version": 1,
+    "minor_version": 1,
+    "key": "core.analytics",
+    "data": {
+        "preferences": {},
+        "onboarded": true,
+        "uuid": null
+    }
+}

+ 49 - 0
.storage/core.area_registry

@@ -0,0 +1,49 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "core.area_registry",
+  "data": {
+    "areas": [
+      {
+        "name": "Wohnzimmer",
+        "id": "wohnzimmer",
+        "picture": null
+      },
+      {
+        "name": "Küche",
+        "id": "kuche",
+        "picture": null
+      },
+      {
+        "name": "Schlafzimmer",
+        "id": "schlafzimmer",
+        "picture": null
+      },
+      {
+        "name": "Studio",
+        "id": "studio",
+        "picture": null
+      },
+      {
+        "name": "Bad",
+        "id": "bad",
+        "picture": null
+      },
+      {
+        "name": "Garten",
+        "id": "garten",
+        "picture": null
+      },
+      {
+        "name": "Environment",
+        "id": "environment",
+        "picture": null
+      },
+      {
+        "name": "Nele",
+        "id": "nele",
+        "picture": null
+      }
+    ]
+  }
+}

+ 16 - 0
.storage/core.config

@@ -0,0 +1,16 @@
+{
+    "version": 1,
+    "minor_version": 1,
+    "key": "core.config",
+    "data": {
+        "latitude": 49.35436372470542,
+        "longitude": 8.261064291000368,
+        "elevation": 0,
+        "unit_system": "metric",
+        "location_name": "Home",
+        "time_zone": "Europe/Berlin",
+        "external_url": null,
+        "internal_url": null,
+        "currency": "EUR"
+    }
+}

+ 466 - 0
.storage/core.config_entries

@@ -0,0 +1,466 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "core.config_entries",
+  "data": {
+    "entries": [
+      {
+        "entry_id": "2473ec57313d75372bd51c8bd55d7c56",
+        "version": 1,
+        "domain": "met",
+        "title": "Home",
+        "data": {
+          "track_home": true
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "onboarding",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "a9d89ed6635a271e2b3316969e2e5f73",
+        "version": 1,
+        "domain": "sonos",
+        "title": "Sonos",
+        "data": {},
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": "sonos",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "fa0e280bd4614fd2cb17e63bf2db4efc",
+        "version": 1,
+        "domain": "synology_dsm",
+        "title": "192.168.1.37",
+        "data": {
+          "host": "192.168.1.37",
+          "port": "5001",
+          "ssl": true,
+          "verify_ssl": false,
+          "username": "admin",
+          "password": "17202078",
+          "mac": [
+            "00-11-32-16-E3-40"
+          ]
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "ssdp",
+        "unique_id": "CAL1N04726",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "7fd6567c425121dd83004442e55652a6",
+        "version": 1,
+        "domain": "sun",
+        "title": "Sun",
+        "data": {},
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "import",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "8d2b402e4788a72ce69ea0667859d989",
+        "version": 1,
+        "domain": "hacs",
+        "title": "",
+        "data": {
+          "token": "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"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "4433d59ea2d81e3a4e090239274540b9",
+        "version": 1,
+        "domain": "deconz",
+        "title": "00212E042731",
+        "data": {
+          "host": "192.168.1.146",
+          "port": 1505,
+          "api_key": "6C9C028B2D"
+        },
+        "options": {
+          "master": true,
+          "allow_clip_sensor": false,
+          "allow_deconz_groups": true,
+          "allow_new_devices": true
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": "00212E042731",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "eef0a59ade45f05cb7f8e3ed78e2598e",
+        "version": 1,
+        "domain": "syncthru",
+        "title": "Samsung C48x Series",
+        "data": {
+          "url": "http://192.168.1.137/",
+          "name": "Samsung C48x Series"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "ssdp",
+        "unique_id": "uuid:16a65700-007c-1000-bb49-30cda7b8331e",
+        "disabled_by": "user"
+      },
+      {
+        "entry_id": "e3751b4b152e3d1476fb05e3f4de7f2a",
+        "version": 1,
+        "domain": "gardena_smart_system",
+        "title": "",
+        "data": {
+          "id": "1251f527-558b-4fe7-a634-8e6766823fb5",
+          "client_id": "1251f527-558b-4fe7-a634-8e6766823fb5",
+          "client_secret": "dfc1d398-b741-4d77-9d39-b4680e14ef40"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": "1251f527-558b-4fe7-a634-8e6766823fb5",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "1c3b30a4f5aa0f24e626f052bc2569a2",
+        "version": 1,
+        "domain": "mqtt",
+        "title": "192.168.1.146",
+        "data": {
+          "broker": "192.168.1.146",
+          "port": 1883,
+          "discovery": true,
+          "discovery_prefix": "homeassistant"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "fbb54d1ab5a3c94fe1b12b5772f18896",
+        "version": 1,
+        "domain": "tasmota",
+        "title": "Tasmota",
+        "data": {
+          "discovery_prefix": "tasmota/discovery"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "mqtt",
+        "unique_id": "tasmota",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "1c57455992efa560b2971faa1f42e33a",
+        "version": 1,
+        "domain": "esphome",
+        "title": "smartmeter",
+        "data": {
+          "host": "192.168.1.122",
+          "port": 6053,
+          "password": "",
+          "noise_psk": "nc/DDxg2mjIDat3SJd/7otH9KBA7te/egr9X8pGi1Io="
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "zeroconf",
+        "unique_id": "smartmeter",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "7e1f2e269535685ee8eee3c6cf873e71",
+        "version": 1,
+        "domain": "mobile_app",
+        "title": "iPhone (3)",
+        "data": {
+          "model": "iPhone11,8",
+          "supports_encryption": true,
+          "os_version": "15.6.1",
+          "app_data": {
+            "push_token": "eRfAduNhZkN7i3KZJ8eXMr:APA91bHKhgFxrS9-dsztC1fIuNVYcFp5WXNtuiimCfL5YWl3GqhnHIymSMO2iD85iRNaxmghvfjU-uTYlQzXOb01x4spr455qBEOSj08ynLkP9UT2t4bKOnJpue4FjlShb8xP36CVbdi",
+            "push_url": "https://mobile-apps.home-assistant.io/api/sendPushNotification"
+          },
+          "app_id": "io.robbie.HomeAssistant",
+          "device_id": "8FA84453-1AE0-4112-9E92-B6682553F231",
+          "app_version": "2022.10.1 (2022.424)",
+          "device_name": "iPhone (3)",
+          "manufacturer": "Apple",
+          "app_name": "Home Assistant",
+          "os_name": "iOS",
+          "webhook_id": "64ee7979339c0cb4aa927a247bdc300cc427711e1408e106f45db4fded66eb8e",
+          "secret": "a3310e664a397a6db4a8ef2477b9cccb4c73a22e02e28ba2020c925282b943fd",
+          "user_id": "4a33ca4dd68142379685c2df2522ffee",
+          "no_legacy_encryption": true
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "registration",
+        "unique_id": "io.robbie.HomeAssistant-8FA84453-1AE0-4112-9E92-B6682553F231",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "5f2e6a346ecabb7acdded5114523a6c3",
+        "version": 1,
+        "domain": "mobile_app",
+        "title": "Mi 9 SE",
+        "data": {
+          "app_id": "io.homeassistant.companion.android",
+          "app_name": "Home Assistant",
+          "app_version": "2022.9.1-full (2700)",
+          "device_name": "Mi 9 SE",
+          "manufacturer": "Xiaomi",
+          "model": "Mi 9 SE",
+          "os_name": "Android",
+          "os_version": "30",
+          "supports_encryption": false,
+          "app_data": {
+            "push_websocket_channel": true,
+            "push_url": "https://mobile-apps.home-assistant.io/api/sendPush/android/v1",
+            "push_token": "dp_UzSuwSlizxujvbxjCQk:APA91bFzp9kONdmzOLWwE5iqFmKXXeveWJktniOiMA-7uO01DJzylX0LRTdsdJcYQRRpSJvXqFKZcygsXmIPPaGrFNuB4BJt3UWUn5CFGMuyZpQJngl3YMNbnaF6m2H9wFapDuWEcwEM"
+          },
+          "device_id": "5b906e52dd67a3a2",
+          "webhook_id": "67234ec04648d78af8fa7656afc1dd24d9505ab5e6da6653a19f0bc3ff9a21cc",
+          "user_id": "0b5c1be565704d28992fada0dddec5dc"
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "registration",
+        "unique_id": "io.homeassistant.companion.android-5b906e52dd67a3a2",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "97f60d66699d663f523acb98d13c68f7",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Gas_taeglich",
+        "data": {},
+        "options": {
+          "name": "Gas_taeglich",
+          "source": "sensor.gas_used",
+          "cycle": "daily",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "2e50b97a66348e98f9983e21a20a050b",
+        "version": 1,
+        "domain": "esphome",
+        "title": "updownlight",
+        "data": {
+          "host": "192.168.1.169",
+          "port": 6053,
+          "password": "",
+          "noise_psk": "2M3DWxk37LQNhf8ZCanRyh1eVcGWd82HcuqHyp4mvzU="
+        },
+        "options": {},
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "zeroconf",
+        "unique_id": "updownlight",
+        "disabled_by": null
+      },
+      {
+        "entry_id": "e638fd63be01ea8c252792dda4edf2f8",
+        "version": 1,
+        "domain": "group",
+        "title": "Wohnzimmer Ambient",
+        "data": {},
+        "options": {
+          "group_type": "light",
+          "name": "Wohnzimmer Ambient",
+          "entities": [
+            "light.hue_play_links",
+            "light.hue_play_rechts",
+            "light.rgbcww_stableuchte",
+            "light.philips_go"
+          ],
+          "hide_members": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "d2b1efa2ce55af3fc67d3dd56e914ec3",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Gas_woechentlich",
+        "data": {},
+        "options": {
+          "name": "Gas_woechentlich",
+          "source": "sensor.gas_used",
+          "cycle": "weekly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "a86dad2ce166d142874f3479e4841454",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Gas_monatlich",
+        "data": {},
+        "options": {
+          "name": "Gas_monatlich",
+          "source": "sensor.gas_used",
+          "cycle": "monthly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "f54f49772b715416c4c42b2a7263a46f",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Gas_jaehrlich",
+        "data": {},
+        "options": {
+          "name": "Gas_jaehrlich",
+          "source": "sensor.gas_used",
+          "cycle": "yearly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "91ce1a7d78f8195bb2b24619256ea1c5",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Strom_jaehrlich",
+        "data": {},
+        "options": {
+          "name": "Strom_jaehrlich",
+          "source": "sensor.total_energy",
+          "cycle": "yearly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "7dae199f114fdb59756a511eba396c07",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Strom_monatlich",
+        "data": {},
+        "options": {
+          "name": "Strom_monatlich",
+          "source": "sensor.total_energy",
+          "cycle": "monthly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "6dbe1d51c24c2674e34a89f2f289a56d",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Strom_taeglich",
+        "data": {},
+        "options": {
+          "name": "Strom_taeglich",
+          "source": "sensor.total_energy",
+          "cycle": "daily",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      },
+      {
+        "entry_id": "78720d6354eee99595178cb454798df0",
+        "version": 1,
+        "domain": "utility_meter",
+        "title": "Strom_woechentlich",
+        "data": {},
+        "options": {
+          "name": "Strom_woechentlich",
+          "source": "sensor.total_energy",
+          "cycle": "weekly",
+          "offset": 0.0,
+          "tariffs": [],
+          "net_consumption": false,
+          "delta_values": false
+        },
+        "pref_disable_new_entities": false,
+        "pref_disable_polling": false,
+        "source": "user",
+        "unique_id": null,
+        "disabled_by": null
+      }
+    ]
+  }
+}

File diff suppressed because it is too large
+ 2148 - 0
.storage/core.device_registry


File diff suppressed because it is too large
+ 9163 - 0
.storage/core.entity_registry


File diff suppressed because it is too large
+ 2117 - 0
.storage/core.restore_state


+ 8 - 0
.storage/core.uuid

@@ -0,0 +1,8 @@
+{
+    "version": 1,
+    "minor_version": 1,
+    "key": "core.uuid",
+    "data": {
+        "uuid": "fe60c3ac6e0548ee8e39268cbe01decf"
+    }
+}

+ 32 - 0
.storage/energy

@@ -0,0 +1,32 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "energy",
+  "data": {
+    "energy_sources": [
+      {
+        "type": "grid",
+        "flow_from": [
+          {
+            "stat_energy_from": "sensor.total_energy",
+            "stat_cost": "sensor.total_energy",
+            "entity_energy_from": "sensor.total_energy",
+            "entity_energy_price": null,
+            "number_energy_price": null
+          }
+        ],
+        "flow_to": [],
+        "cost_adjustment_day": 0.0
+      },
+      {
+        "type": "gas",
+        "stat_energy_from": "sensor.gas_used",
+        "stat_cost": null,
+        "entity_energy_from": "sensor.gas_used",
+        "entity_energy_price": null,
+        "number_energy_price": null
+      }
+    ],
+    "device_consumption": []
+  }
+}

+ 106 - 0
.storage/esphome.1c57455992efa560b2971faa1f42e33a

@@ -0,0 +1,106 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "esphome.1c57455992efa560b2971faa1f42e33a",
+  "data": {
+    "device_info": {
+      "uses_password": false,
+      "name": "smartmeter",
+      "mac_address": "CC:50:E3:C7:63:00",
+      "compilation_time": "Oct 10 2022, 16:55:39",
+      "model": "d1_mini",
+      "manufacturer": "",
+      "has_deep_sleep": false,
+      "esphome_version": "2022.6.3",
+      "project_name": "",
+      "project_version": "",
+      "webserver_port": 0,
+      "bluetooth_proxy_version": 0
+    },
+    "services": [],
+    "api_version": {
+      "major": 1,
+      "minor": 6
+    },
+    "sensor": [
+      {
+        "object_id": "total_energy",
+        "key": 173145652,
+        "name": "Total energy",
+        "unique_id": "smartmetersensortotal_energy",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 0,
+        "device_class": "energy",
+        "unit_of_measurement": "kWh",
+        "accuracy_decimals": 1,
+        "force_update": false,
+        "state_class": 2,
+        "last_reset_type": 0
+      },
+      {
+        "object_id": "power",
+        "key": 2391494160,
+        "name": "Power",
+        "unique_id": "smartmetersensorpower",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 0,
+        "device_class": "energy",
+        "unit_of_measurement": "W",
+        "accuracy_decimals": 1,
+        "force_update": false,
+        "state_class": 0,
+        "last_reset_type": 0
+      },
+      {
+        "object_id": "gas_used",
+        "key": 157580000,
+        "name": "Gas used",
+        "unique_id": "smartmetersensorgas_used",
+        "disabled_by_default": false,
+        "icon": "mdi:fire",
+        "entity_category": 0,
+        "device_class": "gas",
+        "unit_of_measurement": "m³",
+        "accuracy_decimals": 1,
+        "force_update": false,
+        "state_class": 2,
+        "last_reset_type": 0
+      }
+    ],
+    "text_sensor": [
+      {
+        "object_id": "total_energy_text",
+        "key": 180917854,
+        "name": "Total energy text",
+        "unique_id": "smartmetertext_sensortotal_energy_text",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 0
+      },
+      {
+        "object_id": "power_text",
+        "key": 3389062658,
+        "name": "Power text",
+        "unique_id": "smartmetertext_sensorpower_text",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 0
+      }
+    ],
+    "switch": [
+      {
+        "object_id": "auto_restart",
+        "key": 1029395680,
+        "name": "Auto Restart",
+        "unique_id": "smartmeterswitchauto_restart",
+        "disabled_by_default": false,
+        "icon": "mdi:restart",
+        "entity_category": 1,
+        "assumed_state": false,
+        "device_class": ""
+      }
+    ]
+  }
+}

+ 70 - 0
.storage/esphome.2e50b97a66348e98f9983e21a20a050b

@@ -0,0 +1,70 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "esphome.2e50b97a66348e98f9983e21a20a050b",
+  "data": {
+    "device_info": {
+      "uses_password": false,
+      "name": "updownlight",
+      "mac_address": "E8:9F:6D:93:E8:21",
+      "compilation_time": "Sep 16 2022, 09:46:39",
+      "model": "esp01_1m",
+      "has_deep_sleep": false,
+      "esphome_version": "2022.6.3",
+      "project_name": "",
+      "project_version": "",
+      "webserver_port": 0
+    },
+    "services": [],
+    "api_version": {
+      "major": 1,
+      "minor": 6
+    },
+    "sensor": [
+      {
+        "object_id": "updownlight_wifi_signal",
+        "key": 3230051649,
+        "name": "Updownlight WiFi Signal",
+        "unique_id": "e89f6d93e821-wifisignal",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 2,
+        "device_class": "signal_strength",
+        "unit_of_measurement": "dBm",
+        "accuracy_decimals": 0,
+        "force_update": false,
+        "state_class": 1,
+        "last_reset_type": 0
+      }
+    ],
+    "text_sensor": [],
+    "light": [
+      {
+        "object_id": "updownlight",
+        "key": 2333633314,
+        "name": "updownlight",
+        "unique_id": "updownlightlightupdownlight",
+        "disabled_by_default": false,
+        "icon": "",
+        "entity_category": 0,
+        "supported_color_modes": [
+          19,
+          35
+        ],
+        "min_mireds": 161.2903,
+        "max_mireds": 357.1429,
+        "effects": [
+          "None",
+          "Strobe Effect",
+          "Flicker Effect",
+          "Slow Random Effect",
+          "Fast Random Effect"
+        ],
+        "legacy_supports_brightness": true,
+        "legacy_supports_rgb": true,
+        "legacy_supports_white_value": true,
+        "legacy_supports_color_temperature": true
+      }
+    ]
+  }
+}

+ 12 - 0
.storage/frontend.user_data_76eee73abb344efcb74f3f20a1c24015

@@ -0,0 +1,12 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "frontend.user_data_76eee73abb344efcb74f3f20a1c24015",
+  "data": {
+    "language": {
+      "language": "de",
+      "number_format": "language",
+      "time_format": "language"
+    }
+  }
+}

+ 13 - 0
.storage/hacs.critical

@@ -0,0 +1,13 @@
+{
+    "version": "6",
+    "minor_version": 1,
+    "key": "hacs.critical",
+    "data": [
+        {
+            "repository": "test/test",
+            "reason": "Security issues, known to steal auth tokens.",
+            "link": "https://github.com/hacs/default/pull/2",
+            "acknowledged": true
+        }
+    ]
+}

+ 37 - 0
.storage/hacs.hacs

@@ -0,0 +1,37 @@
+{
+  "version": "6",
+  "minor_version": 1,
+  "key": "hacs.hacs",
+  "data": {
+    "archived_repositories": [
+      "custom-components/wienerlinien",
+      "KTibow/lovelace-dark-soft-ui-theme",
+      "KTibow/lovelace-light-soft-ui-theme",
+      "GeorgeSG/lovelace-folder-card",
+      "eavanvalkenburg/sia",
+      "Cyr-ius/hass-hue-service-advanced",
+      "Cyr-ius/hass-cozytouch",
+      "georgezhao2010/climate_ewelink",
+      "custom-components/authenticated",
+      "marcomow/ble-bulb-card",
+      "ThomasPrior/EthermineInfo",
+      "spycle/microbot_push",
+      "DavidMStraub/homeassistant-homeconnect",
+      "Sholofly/arrisdcx960",
+      "lukich48/hass_mqtt_template_switch"
+    ],
+    "renamed_repositories": {
+      "78wesley/Darkish-Theme": "78wesley/Home-Assistant-Darkish-Theme",
+      "9a4gl/hass-peltec": "9a4gl/hass-centrometal-boiler",
+      "DarkSir23/sensor.mylar": "WillowMist/sensor.mylar",
+      "nbogojevic/homeassistant-midea-dehumidifier-lan": "nbogojevic/homeassistant-midea-air-appliances-lan",
+      "nikrolls/homeassistant-goldair-climate": "nicole-ashley/homeassistant-goldair-climate",
+      "dmitry-k/yandex_smart_home": "dext0r/yandex_smart_home",
+      "uvjustin/alarmdotcom": "pyalarmdotcom/alarmdotcom",
+      "wills106/homsassistant-solax-modbus": "wills106/homeassistant-solax-modbus",
+      "wernerhp/ha_integration_load_shedding": "wernerhp/ha.integration.load_shedding",
+      "TheLastProject/lovelace-valetudo-map-card": "Hypfer/lovelace-valetudo-map-card"
+    },
+    "ignored_repositories": []
+  }
+}

File diff suppressed because it is too large
+ 23724 - 0
.storage/hacs.repositories


+ 18 - 0
.storage/http

@@ -0,0 +1,18 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "http",
+  "data": {
+    "use_x_forwarded_for": true,
+    "trusted_proxies": [
+      "172.20.0.0"
+    ],
+    "ip_ban_enabled": true,
+    "login_attempts_threshold": 3,
+    "server_port": 8123,
+    "cors_allowed_origins": [
+      "https://cast.home-assistant.io"
+    ],
+    "ssl_profile": "modern"
+  }
+}

+ 8 - 0
.storage/http.auth

@@ -0,0 +1,8 @@
+{
+    "version": 1,
+    "minor_version": 1,
+    "key": "http.auth",
+    "data": {
+        "content_user": "a6bd9667f720400d8551ba2d1ffa08c1"
+    }
+}

+ 16 - 0
.storage/image

@@ -0,0 +1,16 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "image",
+  "data": {
+    "items": [
+      {
+        "id": "ad75ffd3b4903ae2768206a3f295aeb7",
+        "filesize": 35548,
+        "content_type": "image/jpeg",
+        "name": "ProfilWeb.jpg",
+        "uploaded_at": "2022-08-14T12:28:07.113163+00:00"
+      }
+    ]
+  }
+}

+ 27 - 0
.storage/lovelace.lovelace_mydash

@@ -0,0 +1,27 @@
+{
+    "version": 1,
+    "minor_version": 1,
+    "key": "lovelace.lovelace_mydash",
+    "data": {
+        "config": {
+            "views": [
+                {
+                    "title": "Home",
+                    "cards": [
+                        {
+                            "show_name": true,
+                            "show_icon": true,
+                            "type": "button",
+                            "tap_action": {
+                                "action": "toggle"
+                            },
+                            "entity": "switch.studio_schalter",
+                            "name": "Sonos Switch 02",
+                            "show_state": true
+                        }
+                    ]
+                }
+            ]
+        }
+    }
+}

+ 18 - 0
.storage/lovelace_dashboards

@@ -0,0 +1,18 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "lovelace_dashboards",
+  "data": {
+    "items": [
+      {
+        "show_in_sidebar": true,
+        "title": "MyDash",
+        "require_admin": false,
+        "mode": "storage",
+        "url_path": "lovelace-mydash",
+        "id": "lovelace_mydash",
+        "icon": "mdi:air-humidifier"
+      }
+    ]
+  }
+}

+ 14 - 0
.storage/lovelace_resources

@@ -0,0 +1,14 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "lovelace_resources",
+  "data": {
+    "items": [
+      {
+        "url": "/hacsfiles/config-editor-card/config-editor-card.js?hacstag=43357760344",
+        "type": "module",
+        "id": "0b5bf34d707641dfa6236902ee102b73"
+      }
+    ]
+  }
+}

+ 10 - 0
.storage/mobile_app

@@ -0,0 +1,10 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "mobile_app",
+  "data": {
+    "deleted_ids": [
+      "455d1a69fedba6f95994be0632e45a8addae77d9bc3c1fbdda42598591e7826d"
+    ]
+  }
+}

+ 13 - 0
.storage/onboarding

@@ -0,0 +1,13 @@
+{
+    "version": 4,
+    "minor_version": 1,
+    "key": "onboarding",
+    "data": {
+        "done": [
+            "user",
+            "core_config",
+            "analytics",
+            "integration"
+        ]
+    }
+}

+ 34 - 0
.storage/person

@@ -0,0 +1,34 @@
+{
+  "version": 2,
+  "minor_version": 1,
+  "key": "person",
+  "data": {
+    "items": [
+      {
+        "name": "Test",
+        "user_id": "76eee73abb344efcb74f3f20a1c24015",
+        "device_trackers": [],
+        "id": "test",
+        "picture": null
+      },
+      {
+        "name": "Holger",
+        "device_trackers": [
+          "device_tracker.iphone_3"
+        ],
+        "user_id": "4a33ca4dd68142379685c2df2522ffee",
+        "picture": "/api/image/serve/ad75ffd3b4903ae2768206a3f295aeb7/512x512",
+        "id": "holger"
+      },
+      {
+        "name": "Nele",
+        "device_trackers": [
+          "device_tracker.mi_9_se"
+        ],
+        "user_id": "0b5c1be565704d28992fada0dddec5dc",
+        "picture": null,
+        "id": "nele"
+      }
+    ]
+  }
+}

+ 8 - 0
.storage/repairs.issue_registry

@@ -0,0 +1,8 @@
+{
+  "version": 1,
+  "minor_version": 2,
+  "key": "repairs.issue_registry",
+  "data": {
+    "issues": []
+  }
+}

+ 6 - 0
.storage/trace.saved_traces

@@ -0,0 +1,6 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "trace.saved_traces",
+  "data": {}
+}

+ 63 - 0
.storage/zone

@@ -0,0 +1,63 @@
+{
+  "version": 1,
+  "minor_version": 1,
+  "key": "zone",
+  "data": {
+    "items": [
+      {
+        "latitude": 49.364013946195676,
+        "longitude": 8.26249122619629,
+        "name": "Maria",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 50.0,
+        "id": "maria"
+      },
+      {
+        "latitude": 49.475189208984375,
+        "longitude": 7.6574267469151724,
+        "name": "Rodenbach",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 150.0,
+        "id": "rodenbach"
+      },
+      {
+        "latitude": 49.36212038805629,
+        "longitude": 8.258178234100344,
+        "name": "Georg & Traude",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 50.0,
+        "id": "georg_traude"
+      },
+      {
+        "latitude": 49.350128173828125,
+        "longitude": 8.142948950138289,
+        "name": "KJT NW",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 50.0,
+        "id": "kjt_nw"
+      },
+      {
+        "latitude": 49.33050537109375,
+        "longitude": 8.689852869294732,
+        "name": "Office",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 100.0,
+        "id": "office"
+      },
+      {
+        "latitude": 54.907562255859375,
+        "longitude": 8.306476371586259,
+        "name": "Sylt",
+        "icon": "mdi:map-marker",
+        "passive": false,
+        "radius": 1753.0,
+        "id": "sylt"
+      }
+    ]
+  }
+}

+ 15 - 3
configuration.yaml

@@ -12,6 +12,16 @@ panel_iframe:
     url: "https://esph.metzner.myhome-server.de/"
     icon: mdi:chip
     require_admin: true
+  configurator:
+    title: Configurator
+    icon: mdi:wrench
+    url: http://192.168.1.146:3218/
+    require_admin: true
+  nodered:
+    title: Node-Red
+    icon: mdi:shuffle-variant
+    url: http://192.168.1.146:1880/
+    require_admin: true
 
 # Configure a default setup of Home Assistant (frontend, api, etc)
 default_config:
@@ -27,8 +37,10 @@ scene: !include scenes.yaml
 
 #Stop to record the history of some domains and entities
 recorder:
-#  auto_purge: true
-#  purge_keep_days: 5
+  db_url: mysql://homeassistant:ha_dbdatabasepassword@192.168.1.146:3307/ha_db?charset=utf8mb4
+  db_max_retries : 10
+  auto_purge: true
+  purge_keep_days: 60
   exclude:
     domains:
       - updater
@@ -81,6 +93,6 @@ mqtt:
 http:
   use_x_forwarded_for: true
   trusted_proxies:
-    - 172.20.0.3
+    - 172.20.0.0/24
   ip_ban_enabled: true
   login_attempts_threshold: 3

+ 7 - 1
custom_components/config_editor/__init__.py

@@ -86,14 +86,20 @@ async def websocket_create(hass, connection, msg):
             if not os.path.isdir(dirnm):
                 os.makedirs(dirnm, exist_ok=True)
             try:
-                mode = os.stat(fullpath).st_mode
+                stat_res = os.stat(fullpath)
+                mode = stat_res.st_mode
+                uid = stat_res.st_uid
+                gid = stat_res.st_gid
             except:
                 mode = 0o666
+                uid = 0
+                gid = 0
             with AtomicWriter(fullpath, overwrite=True).open() as fdesc:
                 fdesc.write(content)
             with open(fullpath, 'a') as fdesc:
                 try:
                     os.fchmod(fdesc.fileno(), mode)
+                    os.fchown(fdesc.fileno(), uid, gid)
                 except:
                     pass
         except:

+ 1 - 1
custom_components/config_editor/manifest.json

@@ -1,7 +1,7 @@
 {
 	"domain": "config_editor",
 	"name": "Config Editor",
-	"version": "4.1",
+	"version": "4.3",
 	"codeowners": ["@htmltiger"],
 	"documentation": "https://github.com/htmltiger/config-editor-card",
 	"issue_tracker": "https://github.com/htmltiger/config-editor/issues",

BIN
custom_components/hacs/__pycache__/__init__.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/base.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/config_flow.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/const.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/diagnostics.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/entity.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/enums.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/exceptions.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/frontend.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/sensor.cpython-310.pyc


BIN
custom_components/hacs/__pycache__/system_health.cpython-310.pyc


+ 37 - 18
custom_components/hacs/base.py

@@ -28,10 +28,11 @@ from homeassistant.config_entries import ConfigEntry, ConfigEntryState
 from homeassistant.const import EVENT_HOMEASSISTANT_FINAL_WRITE, Platform
 from homeassistant.core import HomeAssistant, callback
 from homeassistant.helpers.dispatcher import async_dispatcher_send
+from homeassistant.helpers.issue_registry import async_create_issue, IssueSeverity
 from homeassistant.loader import Integration
 from homeassistant.util import dt
 
-from .const import TV
+from .const import DOMAIN, TV
 from .enums import (
     ConfigurationType,
     HacsCategory,
@@ -186,8 +187,8 @@ class HacsRepositories:
 
     _default_repositories: set[str] = field(default_factory=set)
     _repositories: list[HacsRepository] = field(default_factory=list)
-    _repositories_by_full_name: dict[str, str] = field(default_factory=dict)
-    _repositories_by_id: dict[str, str] = field(default_factory=dict)
+    _repositories_by_full_name: dict[str, HacsRepository] = field(default_factory=dict)
+    _repositories_by_id: dict[str, HacsRepository] = field(default_factory=dict)
     _removed_repositories: list[RemovedRepository] = field(default_factory=list)
 
     @property
@@ -212,8 +213,15 @@ class HacsRepositories:
         if repo_id == "0":
             return
 
-        if self.is_registered(repository_id=repo_id):
-            return
+        if registered_repo := self._repositories_by_id.get(repo_id):
+            if registered_repo.data.full_name == repository.data.full_name:
+                return
+
+            self.unregister(registered_repo)
+
+            registered_repo.data.full_name = repository.data.full_name
+            registered_repo.data.new = False
+            repository = registered_repo
 
         if repository not in self._repositories:
             self._repositories.append(repository)
@@ -562,11 +570,6 @@ class HacsBase:
         if repository_id is not None:
             repository.data.id = repository_id
 
-        if str(repository.data.id) != "0" and (
-            exists := self.repositories.get_by_id(repository.data.id)
-        ):
-            self.repositories.unregister(exists)
-
         else:
             if self.hass is not None and ((check and repository.data.new) or self.status.new):
                 self.async_dispatch(
@@ -877,14 +880,30 @@ class HacsBase:
                 continue
             if repository.data.full_name in self.common.ignored_repositories:
                 continue
-            if repository.data.installed and removed.removal_type != "critical":
-                self.log.warning(
-                    "You have '%s' installed with HACS "
-                    "this repository has been removed from HACS, please consider removing it. "
-                    "Removal reason (%s)",
-                    repository.data.full_name,
-                    removed.reason,
-                )
+            if repository.data.installed:
+                if removed.removal_type != "critical":
+                    if self.configuration.experimental:
+                        async_create_issue(
+                            hass=self.hass,
+                            domain=DOMAIN,
+                            issue_id=f"removed_{repository.data.id}",
+                            is_fixable=False,
+                            issue_domain=DOMAIN,
+                            severity=IssueSeverity.WARNING,
+                            translation_key="removed",
+                            translation_placeholders={
+                                "name": repository.data.full_name,
+                                "reason": removed.reason,
+                                "repositry_id": repository.data.id,
+                            },
+                        )
+                    self.log.warning(
+                        "You have '%s' installed with HACS "
+                        "this repository has been removed from HACS, please consider removing it. "
+                        "Removal reason (%s)",
+                        repository.data.full_name,
+                        removed.reason,
+                    )
             else:
                 need_to_save = True
                 repository.remove()

+ 1 - 1
custom_components/hacs/const.py

@@ -6,7 +6,7 @@ from aiogithubapi.common.const import ACCEPT_HEADERS
 NAME_SHORT = "HACS"
 DOMAIN = "hacs"
 CLIENT_ID = "395a8e669c5de9f7c6e8"
-MINIMUM_HA_VERSION = "2022.8.0"
+MINIMUM_HA_VERSION = "2022.10.0"
 
 TV = TypeVar("TV")
 

+ 14 - 4
custom_components/hacs/frontend.py

@@ -8,8 +8,11 @@ from homeassistant.components.http import HomeAssistantView
 from homeassistant.core import HomeAssistant, callback
 
 from .const import DOMAIN
-from .hacs_frontend import locate_dir
-from .hacs_frontend.version import VERSION as FE_VERSION
+from .hacs_frontend import locate_dir, VERSION as FE_VERSION
+from .hacs_frontend_experimental import (
+    locate_dir as experimental_locate_dir,
+    VERSION as EXPERIMENTAL_FE_VERSION,
+)
 
 URL_BASE = "/hacsfiles"
 
@@ -30,6 +33,11 @@ def async_register_frontend(hass: HomeAssistant, hacs: HacsBase) -> None:
             "<HacsFrontend> Frontend development mode enabled. Do not run in production!"
         )
         hass.http.register_view(HacsFrontendDev())
+    elif hacs.configuration.experimental:
+        hacs.log.info("<HacsFrontend> Using experimental frontend")
+        hass.http.register_static_path(
+            f"{URL_BASE}/frontend", experimental_locate_dir(), cache_headers=False
+        )
     else:
         #
         hass.http.register_static_path(f"{URL_BASE}/frontend", locate_dir(), cache_headers=False)
@@ -56,7 +64,9 @@ def async_register_frontend(hass: HomeAssistant, hacs: HacsBase) -> None:
         cache_headers=use_cache,
     )
 
-    hacs.frontend_version = FE_VERSION
+    hacs.frontend_version = (
+        FE_VERSION if not hacs.configuration.experimental else EXPERIMENTAL_FE_VERSION
+    )
 
     # Add to sidepanel if needed
     if DOMAIN not in hass.data.get("frontend_panels", {}):
@@ -70,7 +80,7 @@ def async_register_frontend(hass: HomeAssistant, hacs: HacsBase) -> None:
                     "name": "hacs-frontend",
                     "embed_iframe": True,
                     "trust_external": False,
-                    "js_url": f"/hacsfiles/frontend/entrypoint.js?hacstag={FE_VERSION}",
+                    "js_url": f"/hacsfiles/frontend/entrypoint.js?hacstag={hacs.frontend_version}",
                 }
             },
             require_admin=True,

BIN
custom_components/hacs/hacs_frontend/__pycache__/__init__.cpython-310.pyc


BIN
custom_components/hacs/hacs_frontend/__pycache__/version.cpython-310.pyc


BIN
custom_components/hacs/hacs_frontend/c.014b1a3b.js.gz


BIN
custom_components/hacs/hacs_frontend/c.07dde5c0.js.gz


BIN
custom_components/hacs/hacs_frontend/c.09384688.js.gz


+ 1 - 1
custom_components/hacs/hacs_frontend/c.eab771ac.js

@@ -1,4 +1,4 @@
-import{a as t,r as i,n as a}from"./main-bfa41146.js";import{L as n,s}from"./c.497c36cc.js";let r=t([a("ha-list-item")],(function(t,a){return{F:class extends a{constructor(...i){super(...i),t(this)}},d:[{kind:"get",static:!0,key:"styles",value:function(){return[s,i`
+import{a as t,r as i,n as a}from"./main-ad130be7.js";import{L as n,s}from"./c.82eccc94.js";let r=t([a("ha-list-item")],(function(t,a){return{F:class extends a{constructor(...i){super(...i),t(this)}},d:[{kind:"get",static:!0,key:"styles",value:function(){return[s,i`
         :host {
           padding-left: var(--mdc-list-side-padding, 20px);
           padding-right: var(--mdc-list-side-padding, 20px);

BIN
custom_components/hacs/hacs_frontend/c.0a1cf8d0.js.gz


File diff suppressed because it is too large
+ 2 - 2
custom_components/hacs/hacs_frontend/c.a7d20849.js


BIN
custom_components/hacs/hacs_frontend/c.0ca5587f.js.gz


File diff suppressed because it is too large
+ 6 - 6
custom_components/hacs/hacs_frontend/c.ed83d060.js


BIN
custom_components/hacs/hacs_frontend/c.0f6bb17e.js.gz


File diff suppressed because it is too large
+ 2 - 2
custom_components/hacs/hacs_frontend/c.d5a56e52.js


BIN
custom_components/hacs/hacs_frontend/c.11ad1623.js.gz


BIN
custom_components/hacs/hacs_frontend/c.138a5fae.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.cfbcc2a8.js


BIN
custom_components/hacs/hacs_frontend/c.14dc9dca.js.gz


BIN
custom_components/hacs/hacs_frontend/c.167d87ac.js.gz


File diff suppressed because it is too large
+ 1 - 0
custom_components/hacs/hacs_frontend/c.25ed1ae4.js


BIN
custom_components/hacs/hacs_frontend/c.25ed1ae4.js.gz


File diff suppressed because it is too large
+ 1 - 0
custom_components/hacs/hacs_frontend/c.2645c235.js


BIN
custom_components/hacs/hacs_frontend/c.2645c235.js.gz


BIN
custom_components/hacs/hacs_frontend/c.28c2a1ee.js.gz


+ 1 - 1
custom_components/hacs/hacs_frontend/c.886b012a.js

@@ -1,4 +1,4 @@
-import{a as r,h as a,e as o,r as e,$ as d,n as t}from"./main-bfa41146.js";r([t("ha-card")],(function(r,a){return{F:class extends a{constructor(...a){super(...a),r(this)}},d:[{kind:"field",decorators:[o()],key:"header",value:void 0},{kind:"field",decorators:[o({type:Boolean,reflect:!0})],key:"outlined",value:()=>!1},{kind:"get",static:!0,key:"styles",value:function(){return e`
+import{a as r,h as a,e as o,r as e,$ as d,n as t}from"./main-ad130be7.js";r([t("ha-card")],(function(r,a){return{F:class extends a{constructor(...a){super(...a),r(this)}},d:[{kind:"field",decorators:[o()],key:"header",value:void 0},{kind:"field",decorators:[o({type:Boolean,reflect:!0})],key:"outlined",value:()=>!1},{kind:"get",static:!0,key:"styles",value:function(){return e`
       :host {
         background: var(
           --ha-card-background,

BIN
custom_components/hacs/hacs_frontend/c.2d5ed670.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.f737bc56.js


BIN
custom_components/hacs/hacs_frontend/c.2ee83bd0.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.eedd7a8a.js


BIN
custom_components/hacs/hacs_frontend/c.3243a8b0.js.gz


+ 1 - 1
custom_components/hacs/hacs_frontend/c.682e5f92.js

@@ -1,4 +1,4 @@
-import{a6 as e,a7 as t,a as o,h as i,e as n,$ as a,r,n as l}from"./main-bfa41146.js";e({_template:t`
+import{a6 as e,a7 as t,a as o,h as i,e as n,$ as a,r,n as l}from"./main-ad130be7.js";e({_template:t`
     <style>
       :host {
         overflow: hidden; /* needed for text-overflow: ellipsis to work on ff */

BIN
custom_components/hacs/hacs_frontend/c.3da15c48.js.gz


BIN
custom_components/hacs/hacs_frontend/c.3f8082e4.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.476721bc.js


BIN
custom_components/hacs/hacs_frontend/c.3f859915.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.6e0bb230.js


BIN
custom_components/hacs/hacs_frontend/c.4204ca09.js.gz


+ 1 - 1
custom_components/hacs/hacs_frontend/c.70483bd2.js

@@ -1 +1 @@
-import{A as o}from"./main-bfa41146.js";const a=()=>import("./c.4d0a19ff.js"),i=(i,l,m)=>new Promise((n=>{const r=l.cancel,s=l.confirm;o(i,"show-dialog",{dialogTag:"dialog-box",dialogImport:a,dialogParams:{...l,...m,cancel:()=>{n(!(null==m||!m.prompt)&&null),r&&r()},confirm:o=>{n(null==m||!m.prompt||o),s&&s(o)}}})})),l=(o,a)=>i(o,a),m=(o,a)=>i(o,a,{confirmation:!0}),n=(o,a)=>i(o,a,{prompt:!0});export{l as a,n as b,m as s};
+import{A as o}from"./main-ad130be7.js";const a=()=>import("./c.f12697b4.js"),i=(i,l,m)=>new Promise((n=>{const r=l.cancel,s=l.confirm;o(i,"show-dialog",{dialogTag:"dialog-box",dialogImport:a,dialogParams:{...l,...m,cancel:()=>{n(!(null==m||!m.prompt)&&null),r&&r()},confirm:o=>{n(null==m||!m.prompt||o),s&&s(o)}}})})),l=(o,a)=>i(o,a),m=(o,a)=>i(o,a,{confirmation:!0}),n=(o,a)=>i(o,a,{prompt:!0});export{l as a,n as b,m as s};

BIN
custom_components/hacs/hacs_frontend/c.4266acdb.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.c87dd2e2.js


BIN
custom_components/hacs/hacs_frontend/c.42d6aebd.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.b48cc788.js


BIN
custom_components/hacs/hacs_frontend/c.456b65b4.js.gz


BIN
custom_components/hacs/hacs_frontend/c.476721bc.js.gz


BIN
custom_components/hacs/hacs_frontend/c.48057b49.js.gz


BIN
custom_components/hacs/hacs_frontend/c.497c36cc.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.8ed395e6.js


BIN
custom_components/hacs/hacs_frontend/c.4c04acb5.js.gz


BIN
custom_components/hacs/hacs_frontend/c.4d0a19ff.js.gz


File diff suppressed because it is too large
+ 1 - 1
custom_components/hacs/hacs_frontend/c.c78ed058.js


BIN
custom_components/hacs/hacs_frontend/c.4fa7acdf.js.gz


+ 1 - 1
custom_components/hacs/hacs_frontend/c.6fe7dd6c.js

@@ -1,4 +1,4 @@
-import{a6 as t,a7 as i,a8 as a}from"./main-bfa41146.js";t({_template:i`
+import{a6 as t,a7 as i,a8 as a}from"./main-ad130be7.js";t({_template:i`
     <style>
       :host {
         display: block;

BIN
custom_components/hacs/hacs_frontend/c.4feb0cb8.js.gz


+ 0 - 0
custom_components/hacs/hacs_frontend/c.50ff9066.js


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