Improve handle motor_state in HA (#12028)

This commit is contained in:
Artem Draft authored and GitHub committed 2022-04-02 19:17:36 +02:00
1 parent ad24c4f677
commit 3e7eddf3ce
1 file changed
+6 -12
+6 -12
View File
@@ -413,19 +413,13 @@ export default class HomeAssistant extends Extension {
const closingState = motorState.values.find((s) => closingLookup.includes(s.toLowerCase()));
const stoppedState = motorState.values.find((s) => stoppedLookup.includes(s.toLowerCase()));
if (openingState) {
discoveryEntry.discovery_payload.state_opening = openingState;
}
if (closingState) {
discoveryEntry.discovery_payload.state_closing = closingState;
}
if (stoppedState) {
discoveryEntry.discovery_payload.state_stopped = stoppedState;
}
if (openingState || closingState || stoppedState) {
if (openingState && closingState && stoppedState) {
discoveryEntry.discovery_payload.state_topic = true;
discoveryEntry.discovery_payload.value_template = `{{ value_json.motor_state }}`;
discoveryEntry.discovery_payload.state_opening = openingState;
discoveryEntry.discovery_payload.state_closing = closingState;
discoveryEntry.discovery_payload.state_stopped = stoppedState;
discoveryEntry.discovery_payload.value_template = `{% if not value_json.motor_state %} ` +
`${stoppedState} {% else %} {{ value_json.motor_state }} {% endif %}`;
}
} else {
const running = definitionExposes?.find((e) => e.type === 'binary' && e.name === 'running');