This commit is contained in:
MichaelDvP
2023-11-29 07:12:41 +01:00
6 changed files with 82 additions and 78 deletions

View File

@@ -16,3 +16,4 @@
## Changed
- use flag for BC400 compatible thermostats, manage different mode settings
- HA don't set entity_category to Diagnostic/Configuration for EMS entities [#1459](https://github.com/emsesp/EMS-ESP32/discussions/1459)

View File

@@ -30,10 +30,10 @@
"@types/imagemin": "^8.0.5",
"@types/lodash-es": "^4.17.12",
"@types/node": "^20.10.0",
"@types/react": "^18.2.38",
"@types/react": "^18.2.39",
"@types/react-dom": "^18.2.17",
"@types/react-router-dom": "^5.3.3",
"alova": "^2.14.0",
"alova": "^2.15.0",
"async-validator": "^4.2.5",
"history": "^5.3.0",
"jwt-decode": "^4.0.0",
@@ -52,8 +52,8 @@
"devDependencies": {
"@preact/compat": "^17.1.2",
"@preact/preset-vite": "^2.7.0",
"@typescript-eslint/eslint-plugin": "^6.12.0",
"@typescript-eslint/parser": "^6.12.0",
"@typescript-eslint/eslint-plugin": "^6.13.1",
"@typescript-eslint/parser": "^6.13.1",
"concurrently": "^8.2.2",
"eslint": "^8.54.0",
"eslint-config-airbnb": "^19.0.4",
@@ -70,7 +70,7 @@
"prettier": "^3.1.0",
"rollup-plugin-visualizer": "^5.9.3",
"terser": "^5.24.0",
"vite": "^5.0.2",
"vite": "^5.0.3",
"vite-plugin-imagemin": "^0.6.1",
"vite-tsconfig-paths": "^4.2.1"
},

View File

@@ -1558,14 +1558,14 @@ __metadata:
languageName: node
linkType: hard
"@types/react@npm:^18.2.38":
version: 18.2.38
resolution: "@types/react@npm:18.2.38"
"@types/react@npm:^18.2.39":
version: 18.2.39
resolution: "@types/react@npm:18.2.39"
dependencies:
"@types/prop-types": "npm:*"
"@types/scheduler": "npm:*"
csstype: "npm:^3.0.2"
checksum: 9f9b9925c979e848d572dce6fff34951708127ba6b1fd4306c93fbcab74f5c6cff2b2e47d4222339eeb6c19d264e93450cb2ad6b255c73c536d0a1e2093cc98a
checksum: 870f7774c676ae0f3ab6339a62b3315f5a296e89412358b15a5249a61e781a8807a2253ef7ad2ec98e7a5bea1e8c3ddd95b02226d6b8ac4a085da59b4a496564
languageName: node
linkType: hard
@@ -1601,15 +1601,15 @@ __metadata:
languageName: node
linkType: hard
"@typescript-eslint/eslint-plugin@npm:^6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/eslint-plugin@npm:6.12.0"
"@typescript-eslint/eslint-plugin@npm:^6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/eslint-plugin@npm:6.13.1"
dependencies:
"@eslint-community/regexpp": "npm:^4.5.1"
"@typescript-eslint/scope-manager": "npm:6.12.0"
"@typescript-eslint/type-utils": "npm:6.12.0"
"@typescript-eslint/utils": "npm:6.12.0"
"@typescript-eslint/visitor-keys": "npm:6.12.0"
"@typescript-eslint/scope-manager": "npm:6.13.1"
"@typescript-eslint/type-utils": "npm:6.13.1"
"@typescript-eslint/utils": "npm:6.13.1"
"@typescript-eslint/visitor-keys": "npm:6.13.1"
debug: "npm:^4.3.4"
graphemer: "npm:^1.4.0"
ignore: "npm:^5.2.4"
@@ -1622,44 +1622,44 @@ __metadata:
peerDependenciesMeta:
typescript:
optional: true
checksum: 1b9d2bb88f3e793067d7ec1e24e11b9d22891314bd5ebdef80a11a0ddde19f5c052b341e2f2c8a466b3af48e492f1028023566feaeb10a826d3928380c3d3d88
checksum: cae42c77404d8e6c149d68aca75bb3ce83cff5de8713d82e87e93bafae2839f29d261bc75b68f315b6b23858a85ea2f22ed8468cf5c7331e8330f7cee2129522
languageName: node
linkType: hard
"@typescript-eslint/parser@npm:^6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/parser@npm:6.12.0"
"@typescript-eslint/parser@npm:^6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/parser@npm:6.13.1"
dependencies:
"@typescript-eslint/scope-manager": "npm:6.12.0"
"@typescript-eslint/types": "npm:6.12.0"
"@typescript-eslint/typescript-estree": "npm:6.12.0"
"@typescript-eslint/visitor-keys": "npm:6.12.0"
"@typescript-eslint/scope-manager": "npm:6.13.1"
"@typescript-eslint/types": "npm:6.13.1"
"@typescript-eslint/typescript-estree": "npm:6.13.1"
"@typescript-eslint/visitor-keys": "npm:6.13.1"
debug: "npm:^4.3.4"
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
peerDependenciesMeta:
typescript:
optional: true
checksum: 2e33b581bcf882336bd4734e90a90dc3618960f8c07f5f7d16e4f3a0f00af97d3b3c8adc366170e1d9c8afd922068b3cfc5e9e997fd4ca6ebcb7c46a9e5b30a1
checksum: cdc328d157a8b8a6babad88360451c177ea41666e2150f3822a474ed287a12336517dccf9f475f75a007d4aa622cb74f1442f17d17b87e19cc2c839784742351
languageName: node
linkType: hard
"@typescript-eslint/scope-manager@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/scope-manager@npm:6.12.0"
"@typescript-eslint/scope-manager@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/scope-manager@npm:6.13.1"
dependencies:
"@typescript-eslint/types": "npm:6.12.0"
"@typescript-eslint/visitor-keys": "npm:6.12.0"
checksum: 46c4a5575fbbb70a800934c93e89795cceef268a140b786a8d22615a0577a5356e42e316dfb23dbb43cec7271b480e712e3127ba33642040bd292fbb6a5de278
"@typescript-eslint/types": "npm:6.13.1"
"@typescript-eslint/visitor-keys": "npm:6.13.1"
checksum: f728dbd995c58fadfc390411fe31b1b8a729b1c85ecf0ae2fe70f97f613298feab78c05bc180e03612f595b24cf0090476a0b8234c617b3edf1dae568342a7cf
languageName: node
linkType: hard
"@typescript-eslint/type-utils@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/type-utils@npm:6.12.0"
"@typescript-eslint/type-utils@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/type-utils@npm:6.13.1"
dependencies:
"@typescript-eslint/typescript-estree": "npm:6.12.0"
"@typescript-eslint/utils": "npm:6.12.0"
"@typescript-eslint/typescript-estree": "npm:6.13.1"
"@typescript-eslint/utils": "npm:6.13.1"
debug: "npm:^4.3.4"
ts-api-utils: "npm:^1.0.1"
peerDependencies:
@@ -1667,23 +1667,23 @@ __metadata:
peerDependenciesMeta:
typescript:
optional: true
checksum: e92709a0ea5d5aee86def3da40fe4190235d3560f41e77a73d4bc10f6f59e0df367d5a1263d4e05aa44af4deb158ca6f37b09e483248e341a38fd5e2e8b70f72
checksum: 484e5f74fc604b24687fe6426e650f40f679d62216ee5e45bf6d1f91edd60cd8deef747ca43f7dc3c22b2b76f030477603c82559e44c3f2fb5c8877a0c65aefa
languageName: node
linkType: hard
"@typescript-eslint/types@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/types@npm:6.12.0"
checksum: e52f12d01e2f543927fde985d709616dec1ef310da3a00e3d239874752ba7635e04d325e2a7cf6403d19977282f15fed7629d2477aeeb57df9140fa424f530fe
"@typescript-eslint/types@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/types@npm:6.13.1"
checksum: 350c7f847052f7c24629d41645c02be152c512f3e5c21a79f53c04821b1fff3019416b18d9b72e5ca5c3c5f62f210301f2bb69080b84e67fe83af27751a7af18
languageName: node
linkType: hard
"@typescript-eslint/typescript-estree@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/typescript-estree@npm:6.12.0"
"@typescript-eslint/typescript-estree@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/typescript-estree@npm:6.13.1"
dependencies:
"@typescript-eslint/types": "npm:6.12.0"
"@typescript-eslint/visitor-keys": "npm:6.12.0"
"@typescript-eslint/types": "npm:6.13.1"
"@typescript-eslint/visitor-keys": "npm:6.13.1"
debug: "npm:^4.3.4"
globby: "npm:^11.1.0"
is-glob: "npm:^4.0.3"
@@ -1692,34 +1692,34 @@ __metadata:
peerDependenciesMeta:
typescript:
optional: true
checksum: 16f327faf736becb145894380e059a68a993b14fdf6dab50c5b79ff3c027a1e1a61274742f44f6ecd9ebbfadfc55559f94fad52e1596e1ed2656a3053367de85
checksum: 1df965c5b202664da1a4a1ffc51bda3d85e581d8c206cd4be63653e2558775104258f6071e1f35a269619ebfb81bd18ee74e3fcb724fed15d3a2577d0ee5a34f
languageName: node
linkType: hard
"@typescript-eslint/utils@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/utils@npm:6.12.0"
"@typescript-eslint/utils@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/utils@npm:6.13.1"
dependencies:
"@eslint-community/eslint-utils": "npm:^4.4.0"
"@types/json-schema": "npm:^7.0.12"
"@types/semver": "npm:^7.5.0"
"@typescript-eslint/scope-manager": "npm:6.12.0"
"@typescript-eslint/types": "npm:6.12.0"
"@typescript-eslint/typescript-estree": "npm:6.12.0"
"@typescript-eslint/scope-manager": "npm:6.13.1"
"@typescript-eslint/types": "npm:6.13.1"
"@typescript-eslint/typescript-estree": "npm:6.13.1"
semver: "npm:^7.5.4"
peerDependencies:
eslint: ^7.0.0 || ^8.0.0
checksum: 84091ddc0f0cceb5d0a2e366139d65413867cf648f805355ab4a42ee273cdd691b9083084d1c1feb9cb3c1934c1ed338fbf92146c738a96b84de3d2ec2dfdec5
checksum: 6fab1122071c7a2da959dcf16cdd723a65bd8ba8e55af9cea11bb1707c4d047e94c3daaed2ab504cdbd2ca0d052f2a33de5290b28de0277ba00210569673ac9b
languageName: node
linkType: hard
"@typescript-eslint/visitor-keys@npm:6.12.0":
version: 6.12.0
resolution: "@typescript-eslint/visitor-keys@npm:6.12.0"
"@typescript-eslint/visitor-keys@npm:6.13.1":
version: 6.13.1
resolution: "@typescript-eslint/visitor-keys@npm:6.13.1"
dependencies:
"@typescript-eslint/types": "npm:6.12.0"
"@typescript-eslint/types": "npm:6.13.1"
eslint-visitor-keys: "npm:^3.4.1"
checksum: edf3537c8176059e8fdea680c10f85a635e427fb5caa6f88473077f50edbec7b011b0dc1e4499543519085559268d30a166b1cb160d30a1315ef818fc181a6a4
checksum: 27ccc4bfe940e50b0977838356b7feda95b68754fa544a988588a159a2619eb04d07c67e55d16bfea1b0dc6184a7fb5daff1366b266c9f5fd19d72831dea6163
languageName: node
linkType: hard
@@ -1746,12 +1746,12 @@ __metadata:
"@types/imagemin": "npm:^8.0.5"
"@types/lodash-es": "npm:^4.17.12"
"@types/node": "npm:^20.10.0"
"@types/react": "npm:^18.2.38"
"@types/react": "npm:^18.2.39"
"@types/react-dom": "npm:^18.2.17"
"@types/react-router-dom": "npm:^5.3.3"
"@typescript-eslint/eslint-plugin": "npm:^6.12.0"
"@typescript-eslint/parser": "npm:^6.12.0"
alova: "npm:^2.14.0"
"@typescript-eslint/eslint-plugin": "npm:^6.13.1"
"@typescript-eslint/parser": "npm:^6.13.1"
alova: "npm:^2.15.0"
async-validator: "npm:^4.2.5"
concurrently: "npm:^8.2.2"
eslint: "npm:^8.54.0"
@@ -1782,7 +1782,7 @@ __metadata:
terser: "npm:^5.24.0"
typesafe-i18n: "npm:^5.26.2"
typescript: "npm:^5.3.2"
vite: "npm:^5.0.2"
vite: "npm:^5.0.3"
vite-plugin-imagemin: "npm:^0.6.1"
vite-tsconfig-paths: "npm:^4.2.1"
languageName: unknown
@@ -1853,10 +1853,10 @@ __metadata:
languageName: node
linkType: hard
"alova@npm:^2.14.0":
version: 2.14.0
resolution: "alova@npm:2.14.0"
checksum: 64482346dece670676908b00df93aba10f5da5f65f1b0b79673ac4f494969acfeefb87f5db1dea01de06e6bdca67e122fe8835fc10c1e7dc5202a8d8eeba92d8
"alova@npm:^2.15.0":
version: 2.15.0
resolution: "alova@npm:2.15.0"
checksum: 2fb4eac4bd5c01d00823b34ed62d8c3b4ace444d8f693a5134b3b6c9746ee9c544760b8d9cd2b7af34658151a5b472fbd90b52482e389a39c1c145ff377f5640
languageName: node
linkType: hard
@@ -8566,9 +8566,9 @@ __metadata:
languageName: node
linkType: hard
"vite@npm:^5.0.2":
version: 5.0.2
resolution: "vite@npm:5.0.2"
"vite@npm:^5.0.3":
version: 5.0.3
resolution: "vite@npm:5.0.3"
dependencies:
esbuild: "npm:^0.19.3"
fsevents: "npm:~2.3.3"
@@ -8602,7 +8602,7 @@ __metadata:
optional: true
bin:
vite: bin/vite.js
checksum: 74f1a6d49a02106796b5fcc04dbe4a92925fba413191718fb37485a29f606b7f80abd371a3ef6b598e8a04f05c09c0b9a5de6bf844dfecb7253798097ddaab35
checksum: 3f2cc01eaa632df89c1486dccdbea7df1e7b1d7e4f9270b987502096ac97038b0c7d5989ea04e7d095e3eaa5669e78e700470690b0f12076e2a58b97cda24351
languageName: node
linkType: hard

View File

@@ -937,7 +937,7 @@ bool Mqtt::publish_ha_sensor_config(uint8_t type, // EMSdev
// we add the command topic parameter for commands
if (has_cmd) {
// add category
doc["ent_cat"] = "config"; // for writeable entities, like switch, number, text, select
// doc["ent_cat"] = "config"; // for writeable entities, like switch, number, text, select
char command_topic[MQTT_TOPIC_MAX_SIZE];
// add command topic
@@ -1065,8 +1065,11 @@ bool Mqtt::publish_ha_sensor_config(uint8_t type, // EMSdev
// Add the state class, device class and sometimes the icon. Used only for read-only sensors Sensor and Binary Sensor
if (readonly_sensors) {
// first set the catagory
doc["ent_cat"] = "diagnostic";
// first set the catagory for System entities
// https://github.com/emsesp/EMS-ESP32/discussions/1459#discussioncomment-7694873
if (device_type == EMSdevice::DeviceType::SYSTEM) {
doc["ent_cat"] = "diagnostic";
}
const char * dc_ha = "dev_cla"; // device class
const char * sc_ha = "stat_cla"; // state class

View File

@@ -238,7 +238,7 @@ void Shower::set_shower_state(bool state, bool force) {
doc["unit_of_meas"] = "s";
doc["stat_cla"] = "measurement";
doc["dev_cla"] = "duration";
doc["ent_cat"] = "diagnostic";
// doc["ent_cat"] = "diagnostic";
JsonObject dev2 = doc.createNestedObject("dev");
dev2["name"] = "EMS-ESP";
@@ -265,7 +265,7 @@ void Shower::set_shower_state(bool state, bool force) {
doc["name"] = "Shower Timestamp";
doc["val_tpl"] = "{{value_json.timestamp if value_json.timestamp is defined else 0}}";
doc["ent_cat"] = "diagnostic";
// doc["ent_cat"] = "diagnostic";
JsonObject dev3 = doc.createNestedObject("dev");
dev3["name"] = "EMS-ESP";

View File

@@ -1 +1 @@
#define EMSESP_APP_VERSION "3.6.5-test.0c"
#define EMSESP_APP_VERSION "3.6.5-test.1a"