Ankündigung

Einklappen
Keine Ankündigung bisher.

ITEMS: mit eval BOOL-Werte so bearbeiten dass zusätzlich num-Werte zugeornet werden

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

    [Codebeispiel] ITEMS: mit eval BOOL-Werte so bearbeiten dass zusätzlich num-Werte zugeornet werden

    Ich möchte gern erreichen dass:
    ITEMS: mit eval BOOL-Werten so bearbeiten dass zusätzlich num-Werte zugeordnet werden

    Als Beispiel:

    ich bekomme einen Bit-Wert vom Zustand eines Ausgangs zurück, dann möchte ich einen zusätzlichen Wert beschreiben mit der Bedingung:

    wenn wahr(=1) dann 4, wenn nicht wahr (=0) dann 5

    siehe Anhang Item-Zuweisung.txt Ist dies so oder in ähnlicher Form möglich? Oder muss ich da über LOGICS gehen?

    #2
    Hoffe, ich hab die Frage richtig verstanden: Geht mit dem heutigem Release, Stichwort 'Schreiben auf fremde Items' (on_update, on_change) --> klick. Ansonsten den Wert halt auf die klassiche Art im eval des Zielitems ermitteln ...
    /tom

    Kommentar


      #3
      Hi,

      der klassische Weg ist der, den Tom schon vorgeschlagen hat:
      Code:
      Licht_1:
          type: bool
          knx_dpt: 1
          knx_send: 6/6/6
          knx_listen: 6/6/7
          visu_acl: rw
          sqlite: init
          Licht_1S:
              type: num
              eval: 5 if sh.Licht_1() else 4
              eval_trigger: Licht_1
      Licht_1S hat dann die gewünschten Werte 5 und 4.

      Ansonsten noch ein Tip zur Forumsnutzung: Beispielcoding solltest Du nicht über irgendwelche Links zugänglich machen, dafür gibt es den code-Block. Ich habe normalerweise keine Lust, mir irgendwelche fremden Files auf meinen Rechner runterzuladen.

      Gruß, Waldemar
      OpenKNX www.openknx.de

      Kommentar


        #4
        Johannes911, willst du das in der smartVISU oder in SmartHomeNG?

        Kommentar


          #5
          Ich möchte das in der smartVISU realisieren.

          Ich sehe aber gerade dass der Pfad: \SMARTHOMENG\smartVISU\pages\ZuHause ist jetzt bin ich verwirrt!
          Also die Items stehen bei mir unter: z.B. \SMARTHOMENG\SmartHome.py\items\EG_Kueche_items.ya ml


          Zusatzfrage an mumpf:

          wenn ich da noc ein sqlite: init drunter setze - speicher er dann auch den Wert von Licht_1S in die Datenbank?

          Kommentar


            #6
            Das klingt eher so, als wolltest du es in SmartHomeNG machen.
            Die Visu zeigt nur an, die speichert keine Werte.

            Kommentar


              #7
              OK, und was bedeutet das jetzt für mich? Muss ich da auf etwas spezielles achten? Das geänderte, erweiterte ITEM wird schon mal genommen

              Kommentar


                #8
                Zitat von Johannes911 Beitrag anzeigen
                OK, und was bedeutet das jetzt für mich?
                Dass du die Frage im SmartHome-Forum hättest stellen sollen.
                Ich habe das Thema nun verschoben.

                Kommentar


                  #9
                  Die Antworten stehen schon in den Posts #2 und #3.
                  Viele Grüße
                  Martin

                  There is no cloud. It's only someone else's computer.

                  Kommentar


                    #10
                    Leider macht das ITEM noch nicht was es soll:

                    Code:
                     ITEM
                    Licht_1:
                        type: bool
                        knx_dpt: 1
                        knx_send: 6/6/6
                        knx_listen: 6/6/7
                        visu_acl: rw
                        sqlite: init
                        Licht_1S:
                            type: num
                            eval: 5 if sh.Licht_1() else 4
                            eval_trigger: Licht_1
                            sqlite: init
                    also Licht_1 funktioniert so wie es soll, bei Licht_1S erhalte ich immer den Wert = 0, egal ob Licht_1 an oder aus war/ist

                    auch das sqlite: init in die vorletzte Zeile zu verschieben hat nichts gebracht. Muss ich vor dem Speichern erst noch einmal irgendwie Licht_1S aufrufen?


                    Code:
                     ITEM
                    Licht_1:
                        type: bool
                        knx_dpt: 1
                        knx_send: 6/6/6
                        knx_listen: 6/6/7
                        visu_acl: rw
                        sqlite: init
                        Licht_1S:
                            type: num
                            eval: 5 if sh.Licht_1() else 4
                            sqlite: init
                            eval_trigger: Licht_1
                    Zuletzt geändert von Johannes911; 18.12.2017, 17:55.

                    Kommentar


                      #11
                      Kannst Du das bitte richtig als Code posten (damit es lesbar ist)?
                      Viele Grüße
                      Martin

                      There is no cloud. It's only someone else's computer.

                      Kommentar


                        #12
                        Hi,

                        Ist dir klar, dass das Item Licht_1.Licht_1S heißt?

                        Gruß Waldemar
                        OpenKNX www.openknx.de

                        Kommentar


                          #13
                          Hallo Waldemar,
                          ja, das habe ich so eingebaut, der gelesene Wert bleibt aber 0

                          Gruß Johannes

                          Kommentar


                            #14
                            Was zeigt Dir denn das Backend für die Items an?
                            Viele Grüße
                            Martin

                            There is no cloud. It's only someone else's computer.

                            Kommentar


                              #15
                              leider die 0

                              Licht_1 wechselt brav von false auf true

                              Kommentar

                              Lädt...
                              X