structure schaltet nicht?!

Begonnen von stauraum, 13 Januar 2020, 09:18:19

Vorheriges Thema - Nächstes Thema

stauraum

vllt. war ich einfach zu hektisch ...


list eg_wohnzimmer_terrassentuer,eg_kueche_terrassentuer,eg_flur_haustuer state


bringt jetzt:


eg_wohnzimmer_terrassentuer 2020-01-13 10:41:11    true
eg_kueche_terrassentuer 2020-01-13 11:16:02    true
eg_flur_haustuer     2020-01-13 10:39:43    true


Das strc_tueren steht nun auf undefined. Unter "Probably associated with" steht nun:


eg_flur_haustuer
close
MQTT2_DEVICE
eg_kueche_terrassentuer
close
MQTT2_DEVICE
eg_wohnzimmer_terrassentuer
close
MQTT2_DEVICE


Muss jetzt bei "clientstate_priority"

true false oder
open close rein?!

Fragen über Fragen ...

Das Log wird a weng unübersichtlich denke ich. Da schreiben alle 10 Sekunden auch diverse Steckdosen mit Tasmota rein ...

stauraum

#16

2020-01-13 13:34:00 Global global ATTR eg_wohnzimmer_terrassentuer verbose 5
2020-01-13 13:34:00 Global global ATTR eg_kueche_terrassentuer verbose 5
2020-01-13 13:34:00 Global global ATTR eg_flur_haustuer verbose 5
2020-01-13 13:34:00 Global global ATTR strc_tueren verbose 5
2020-01-13 13:57:05 structure strc_tueren true
2020-01-13 13:57:05 MQTT2_DEVICE eg_kueche_terrassentuer linkquality: 15
2020-01-13 13:57:05 MQTT2_DEVICE eg_kueche_terrassentuer voltage: 3035
2020-01-13 13:57:05 MQTT2_DEVICE eg_kueche_terrassentuer battery: 100
2020-01-13 13:57:05 MQTT2_DEVICE eg_kueche_terrassentuer close
2020-01-13 14:00:46 structure strc_tueren true
2020-01-13 14:00:46 MQTT2_DEVICE eg_flur_haustuer voltage: 3025
2020-01-13 14:00:46 MQTT2_DEVICE eg_flur_haustuer linkquality: 0
2020-01-13 14:00:46 MQTT2_DEVICE eg_flur_haustuer close
2020-01-13 14:00:46 MQTT2_DEVICE eg_flur_haustuer battery: 100
2020-01-13 14:01:23 structure strc_tueren true
2020-01-13 14:01:23 MQTT2_DEVICE eg_wohnzimmer_terrassentuer battery: 100
2020-01-13 14:01:23 MQTT2_DEVICE eg_wohnzimmer_terrassentuer close
2020-01-13 14:01:23 MQTT2_DEVICE eg_wohnzimmer_terrassentuer linkquality: 18
2020-01-13 14:01:23 MQTT2_DEVICE eg_wohnzimmer_terrassentuer voltage: 3035
2020-01-13 14:06:07 structure strc_tueren undefined
2020-01-13 14:06:07 MQTT2_DEVICE eg_kueche_terrassentuer battery: 100
2020-01-13 14:06:07 MQTT2_DEVICE eg_kueche_terrassentuer open
2020-01-13 14:06:07 MQTT2_DEVICE eg_kueche_terrassentuer linkquality: 18
2020-01-13 14:06:07 MQTT2_DEVICE eg_kueche_terrassentuer voltage: 3035



2020.01.13 13:57:04 5: in:  PUBLISH: 0^(0)(30)zigbee2mqtt/0x00158d000424a2b4{"battery":100,"voltage":3035,"contact":true,"linkquality":15}
2020.01.13 13:57:04 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PUBLISH zigbee2mqtt/0x00158d000424a2b4:{"battery":100,"voltage":3035,"contact":true,"linkquality":15}
2020.01.13 13:57:04 5: mqtt2server: dispatch autocreate=simple\000zigbee2mqtt\000zigbee2mqtt/0x00158d000424a2b4\000{"battery":100,"voltage":3035,"contact":true,"linkquality":15}
2020.01.13 13:57:04 4: MQTT2_DEVICE_Parse: eg_kueche_terrassentuer zigbee2mqtt/0x00158d000424a2b4 => { json2nameValue($EVENT,'',$JSONMAP) }
2020.01.13 13:58:04 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 13:59:04 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:00:04 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:00:45 5: in:  PUBLISH: 0](0)(30)zigbee2mqtt/0x00158d00040aa902{"battery":100,"voltage":3025,"contact":true,"linkquality":0}
2020.01.13 14:00:45 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PUBLISH zigbee2mqtt/0x00158d00040aa902:{"battery":100,"voltage":3025,"contact":true,"linkquality":0}
2020.01.13 14:00:45 5: mqtt2server: dispatch autocreate=simple\000zigbee2mqtt\000zigbee2mqtt/0x00158d00040aa902\000{"battery":100,"voltage":3025,"contact":true,"linkquality":0}
2020.01.13 14:00:45 4: MQTT2_DEVICE_Parse: eg_flur_haustuer zigbee2mqtt/0x00158d00040aa902 => { json2nameValue($EVENT,'',$JSONMAP) }
2020.01.13 14:01:22 5: in:  PUBLISH: 0^(0)(30)zigbee2mqtt/0x00158d00040ab06c{"battery":100,"voltage":3035,"contact":true,"linkquality":18}
2020.01.13 14:01:22 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PUBLISH zigbee2mqtt/0x00158d00040ab06c:{"battery":100,"voltage":3035,"contact":true,"linkquality":18}
2020.01.13 14:01:22 5: mqtt2server: dispatch autocreate=simple\000zigbee2mqtt\000zigbee2mqtt/0x00158d00040ab06c\000{"battery":100,"voltage":3035,"contact":true,"linkquality":18}
2020.01.13 14:01:22 4: MQTT2_DEVICE_Parse: eg_wohnzimmer_terrassentuer zigbee2mqtt/0x00158d00040ab06c => { json2nameValue($EVENT,'',$JSONMAP) }
2020.01.13 14:02:22 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:03:22 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:04:22 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:05:22 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
2020.01.13 14:06:07 5: in:  PUBLISH: 0_(0)(30)zigbee2mqtt/0x00158d000424a2b4{"battery":100,"voltage":3035,"contact":false,"linkquality":18}
2020.01.13 14:06:07 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PUBLISH zigbee2mqtt/0x00158d000424a2b4:{"battery":100,"voltage":3035,"contact":false,"linkquality":18}
2020.01.13 14:06:07 5: mqtt2server: dispatch autocreate=simple\000zigbee2mqtt\000zigbee2mqtt/0x00158d000424a2b4\000{"battery":100,"voltage":3035,"contact":false,"linkquality":18}
2020.01.13 14:06:07 4: MQTT2_DEVICE_Parse: eg_kueche_terrassentuer zigbee2mqtt/0x00158d000424a2b4 => { json2nameValue($EVENT,'',$JSONMAP) }
2020.01.13 14:07:07 4:   mqtt2server_192.168.2.10_53230 zigbee2mqtt PINGREQ
root@bruno ~ #


Stand ist jetzt aktuell:
strc_tueren steht auf true, wenn alle Kontakte geschlossen sind. Geht einer auf false, geht das strc_tueren auf undefined.

Ich habe das strc_tueren ohne jegliche Attribute laufen lassen. Ich gehe mal davon aus das ich clientstate_priority "true false" setzen muss. Ist die Reihenfolge "true false" oder "false true" relevant?

rudolfkoenig

Wie ich geschrieben habe: sobald irgendetwas mit clientstate kommt, muss ich selbst in der Doku nachschauen.
Kommt daher, dass dieser Feature nicht von mir stammt, und mein Hirn weigert sich daraus dauerhaft einen Sinn zu machen.

In der Doku steht aber relativ klar beschrieben:
ZitatIf clientstate_behavior is set to relative, then you have to set the attribute "clientstate_priority" with all states of the defined devices to this structure in descending order[...]

Man braucht also:attr strc_tueren clientstate_behavior relative
attr strc_tueren clientstate_priority false true

stauraum

Sehr verwirrend ... ;-)

Zumindest funktioniert es nun so aber erst einmal. Was mich noch irritiert ist, das das angehängt notify jedesmal auslöst, wenn ein Kontakt auf geht, auch wenn der State selber schon auf false ist.

Sprich, ein Kontakt geht auf, 2 bleiben zu. Das structure geht auf false, das notify wird ausgelöst. Soweit so gut. Geht jetzt aber ein zweiter Kontakt auf false wird ja am structure eigentlich nichts mehr geändert, das notify aber trotzdem noch einmal ausgelöst?