Moin,
ich plage mich mit dem Problem herum, dass meine structure für die Anwesenheit es verweigert, den state "maybe absent" und "maybe present" zu übernehmen.
Ich habe mir auch schon eigens eine Test Structure gebaut um es ggf. doch zu schaffen - bisher vergebens. Sobald der structure Device den State "maybe absent" oder "maybe present" übernehmen müsste endet es mit undefined:
Device zum Test (structure):
Internals:
ATTR bewohner
CFGFN
CHANGEDCNT 6
DEF bewohner testhandy1 testhandy2 testhandy3
NAME Test
NR 22394
NTFY_ORDER 50-Test
STATE undefined
TYPE structure
READINGS:
2018-03-06 22:09:35 LastDevice testhandy2
2018-03-06 22:09:35 LastDevice_Abs testhandy2
2018-03-06 22:09:35 state undefined
Attributes:
clientstate_behavior relative
clientstate_priority present|maybe present|maybe absent absent
room Test
Und jeweils 3 hier von (testhandy1 - testhandy3):
Internals:
CFGFN
NAME testhandy1
NR 22372
STATE maybe absent
TYPE dummy
READINGS:
2018-03-06 22:09:30 state maybe absent
Attributes:
bewohner Test
room Test
setList maybe present maybe absent present absent
userattr bewohner bewohner_map structexclude
Wenn jemand Abhilfe wüsste, wäre ich sehr erfreut :-D Eventuell habe ich ja einen einfachen Fehler bei mir :-D
Ich hatte ursprünglich im Anfängerbereich gefragt und hier neu eröffnet, da ich nicht wusste, dass ich mein Thema hätte verschieben können :-)
https://forum.fhem.de/index.php/topic,85356.0.html
Verschieben ist nicht immer optimal, da ich dabei nicht benachrichtigt werde.
Zum Problem: ist gut gemeint, der browser schickt aber das Unicode Zeichen NO-BREAK SPACE (utf-8: c2a0) zurueck, und structure weiss nicht, dass die beiden gleich sind. Habe z.Zt. keine Idee, wie man das im clientstate_priority einfach setzen koennte, ohne fhem.cfg mit einem speziellen Programm zu bearbeiten.
Uebrigens: in clientstate_priority erfolgt die Trennung der unterschiedlichen Werte durch Leerzeichen, der "gleichen" Werte durch |
Meine Idee war das ganze übers _map vor zu verändern
Internals:
CFGFN
NAME presenceTam
NR 155
STATE present
TYPE dummy
READINGS:
2018-03-09 11:02:05 presence present
Attributes:
bewohner structureBewohner
bewohner_map presence:^maybe.absent:maybe_absent presence:^maybe.present:maybe_present
readingList presence
room Test
setList presence:present,absent
stateFormat presence
userattr bewohner bewohner_map structexclude
Zitat von: rudolfkoenig am 09 März 2018, 18:55:44
Verschieben ist nicht immer optimal, da ich dabei nicht benachrichtigt werde.
Zum Problem: ist gut gemeint, der browser schickt aber das Unicode Zeichen NO-BREAK SPACE (utf-8: c2a0) zurueck, und structure weiss nicht, dass die beiden gleich sind. Habe z.Zt. keine Idee, wie man das im clientstate_priority einfach setzen koennte, ohne fhem.cfg mit einem speziellen Programm zu bearbeiten.
Uebrigens: in clientstate_priority erfolgt die Trennung der unterschiedlichen Werte durch Leerzeichen, der "gleichen" Werte durch |
Hehe ja ich weiß - ich will extra present|maybe absent|maybe present als gleiche werte behandeln ;-)
Ich teste das von CoolTux morgen - Mein Kopf ist heute von Java infiziert worden und nicht mehr zu gebrauchen ;D
Danke soweit schon mal.
@CoolTux also wirklich hin bekomme ich es nicht von deinem Dummy auf mein Device übetragen.
Deine Lösung bezieht sich auf die presence Devices richtig?
Und bei denen wird über das mapping aus "maybe absent" -> "maybe_absent"
Genau. Und im structure Device kannst du dann behavior oder wie das heißt auf maybe_absent stellen. Bei mir hat er das dann super angezeigt.
Jo also im Structure device habe ich:
clientstate_priority present|maybe_present|maybe_absent absent
Es reagiert aber nun nicht mal mehr auf absent oder present - verwundert mich :o
Ah es scheint als gäbe es auch eine Priorität anhand der Reihenfolge in der man bei structure die devices in der definition eingibt.
Aber maybe geht erstmal?
Zur Not gib absent und present halt noch im _map mit an und teste.
Und schon geht es :)
Danke!
bewohner_map presence:^maybe.absent:maybe_absent presence:^maybe.present:maybe_present presence:present:present presence:absent:absent
Gern geschehen.
Grüße