Ankündigung

Einklappen
Keine Ankündigung bisher.

Attribut eines auslösenden Items in einem Zustandsautomat

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [callidomus] Attribut eines auslösenden Items in einem Zustandsautomat

    Hallo,

    ich habe einen Zustandsautomat der Abhängig vom Zustand aller Fenster ist. Die Items heißen jeweils gleich (.windowstate) und bei Änderung wird geprüft, ob das Item 1 ist (offen) und die Alarmanlage scharf. Der Zustandsautomat hängt also an *.windowstate. Funktioniert auch soweit so gut.

    Ich versuche nun, im Zustand auf ein Attribut des auslösenden Items zuzugreifen, aber das gelingt mit nicht. Hintergrund ich habe in den jeweiligen .windowstate Items ein Attribut angelegt, welches den "Namen" des Fensters beinhaltet. So könnte ich bei der Benachrichtigung auch ausgeben, welches Fenster geöffnet wurde.

    Hat da jemand eine Idee für mich? Ich bräuchte so etwas wie
    Code:
    trigger.by.attr['windowname']
    Danke vorab!

    Gruß
    Thomas

    #2
    Hi Thomas,

    dafür gibt es die Attribut-Condition:
    Attributcondition.PNGDein Attribut hängt ja am Automat-Item, mit dem obigen Audruck kannst Du dann einen Attributwert abfragen, bei mir können die Wände die Werte Nord, Sued, West, Ost und Dach haben...

    Gruß, Waldemar
    OpenKNX www.openknx.de

    Kommentar


      #3
      Hi Waldemar,

      ich glaube bei mir ist das anders. Mein Automat hängt an einem Item und ist von den Fensterstati abhängig.

      Aber ich könnte dann vermutlich Automat(Evaluierung) -> Attribut wählen. Probiere ich gleich aus.

      Danke für den Tipp!

      Thomas

      Kommentar


        #4
        Zitat von Stereofeld Beitrag anzeigen
        Der Zustandsautomat hängt also an *.windowstate.
        Hi Thomas,

        habe obigen Satz wohl missverstanden... So wie ich es jetzt verstanden habe, wird Deine SM wird von *.windowstate getriggert. Falls das mit Automat(Evaluierung)->Attribut nicht klappt (derzeit klappt Automat(Evaluierung) mit einem Itemnamen nicht, da hat Marcus einen Bug), würsste ich noch einen Workaround:
        • Mach an das Item, an dem die SM hängt (also nicht an *.windowstate) ein Kinditem, dass z.B. triggersource heißt, typ string und mit trigger = *:windowstate
        • Im codeblock solltest Du jetzt das eintragen können, was Du willst: trigger.by.attr['windowname']. Genaue Syntax musst Du mal schauen, ich hab es nicht ausprobiert. Ziel ist, dass dieses Item genau den Wert von windowname annimmt.
        • Dein SM lässt Du nun nur noch von triggersource triggern
        • In der SM kannst Du nun statt windowname-Attribut das konstante Item triggersource abfragen, das ja den Wert von windowname hat.
        Vielleicht klappt es ja so...

        Gruß, Waldemar
        OpenKNX www.openknx.de

        Kommentar

        Lädt...
        X