Ankündigung

Einklappen
Keine Ankündigung bisher.

Hilfe bei eval befehl... mehr als zwei Items ansprechen

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

  • pino
    antwortet
    Hallo. ich schreibe es mal hier dazu.
    bei mir geht es zwar im prinzip um die Items für die UZSU denke aber das es mit eval gehen könnte.
    würde gerne zwei Items miteinander vergleichen lassen und den neusten wert abfragen von z.b. höhe vorhang, ein Item macht nur auf/ab das andere gibt die Position in Prozent. Würden die Zwei sozusagen syngroniesiert würde also nicht 50% da stehen sonder ob wenn die letzte Aktion über das auf / ab Item war.
    Wie am besten machen.
    mfg

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Letztlich geht tatsächlich beides.
    https://www.smarthomeng.de/user/konf...ight=on_update

    Einen Kommentar schreiben:


  • pimpi
    antwortet
    Zitat von Tom Bombadil Beitrag anzeigen
    Egal, Hauptsache wir haben on_change und on_update endlich drin.
    Musste lange genug drum ringen - Markus hat sich der Idee damals standhaft widersetzt.
    Gutes Gelingen noch!

    /tom
    jap - geniale funktion !!

    Einen Kommentar schreiben:


  • Tom Bombadil
    antwortet
    Zitat von pimpi Beitrag anzeigen
    Sorry - meine Variante war die richtige !!
    Egal, Hauptsache wir haben on_change und on_update endlich drin.
    Musste lange genug drum ringen - Markus hat sich der Idee damals standhaft widersetzt.
    Gutes Gelingen noch!

    /tom

    Einen Kommentar schreiben:


  • pimpi
    antwortet
    Zitat von Onkelandy Beitrag anzeigen
    Ja, aber so:
    Code:
    on_change:
    - second.overview.shutter9.move = value
    - second.overview.shutter10.move = value
    - second.overview.shutter11.move = value
    Sorry - meine Variante war die richtige !!

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ja, aber so:
    Code:
    on_change:                   
      - second.overview.shutter9.move = value                 
      - second.overview.shutter10.move = value                    
      - second.overview.shutter11.move = value

    Einen Kommentar schreiben:


  • pimpi
    antwortet
    Zitat von Msinn Beitrag anzeigen
    Für so etwas ist eval eigentlich auch nicht gedacht. Schau in der Doku mal nach dem Item Attribut on_change.
    jetzt hab ichs kapiert, du meinst quasi (natürlich noch richtig formatiert)

    Code:
    shutter16:            
    name: Rollo Cats Zentral              
    move:                
    type: num                
    visu_acl: rw                
    enforce_updates: 'yes'                
    on_change:                  
    - sh.second.overview.shutter9.move(value)                  
    - sh.second.overview.shutter10.move(value)                    
    - sh.second.overview.shutter11.move(value)

    Einen Kommentar schreiben:


  • pimpi
    antwortet
    Hallo,

    danke für die Antwort. MIt dem Attribut on_change hat das glaube ich nichts zu tun.

    Ich möchte ein virtuelles Item, welches an drei andere ITEMS einen Wert übermittelt.

    Bin natürlich auch für andere Lösungswege offen, möchte es aber falls möglich am item selbst definieren.
    Zuletzt geändert von pimpi; 22.07.2019, 20:05.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Für so etwas ist eval eigentlich auch nicht gedacht. Schau in der Doku mal nach dem Item Attribut on_change.
    Zuletzt geändert von bmx; 22.07.2019, 19:36.

    Einen Kommentar schreiben:


  • pimpi
    hat ein Thema erstellt Hilfe bei eval befehl... mehr als zwei Items ansprechen

    Hilfe bei eval befehl... mehr als zwei Items ansprechen

    Hallo,

    ich habe folgendes merkwürdiges Phänomen:

    Sicher kann mir jemand auf die schnelle helfen, da ich blind bin ;-)



    Ich hab drei identitsche Items : shutter9, shutter10, shutter11

    Diese möchte ich über ein neues item shutter16 zentral steuern:
    Code:
          
    shutter16:
                name: Rollo Cats Zentral
    
                move:
                    type: num
                    visu_acl: rw
                    enforce_updates: 'yes'
                    eval: sh.second.overview.shutter9.move(value) | sh.second.overview.shutter10.move(value) | sh.second.overview.shutter11.move(value)
    Shutter9 und Shutter10 tun genau das was sie sollen... Shutter11 reagiert überhaupt nicht.



    stattdessen:
    Code:
      
    22.07.2019 17:29:40
    
    Item second.overview.shutter16.move: problem evaluating sh.second.overview.shutter9.move(value) | sh.second.overview.shutter10.move(value) | sh.second.overview.shutter11.move(value): unsupported operand type(s) for |: 'NoneType' and 'NoneType'


    Kann mir das jemand übersetzen ?



    Per "Direktansprache" auf das shutter11 item geht es wunderbar...

    Wenn ich stattdessen ein anderes Item an die dritte Position nehme geht auch dieses nicht.

    Tue ich Shutter11 auf die zweite Position im Eval befehl, geht shutter11 => aber das dritte Item nicht...

    kann man man mit eval nur zwei items ansprechen ?


    Zuletzt geändert von pimpi; 22.07.2019, 16:54.
Lädt...
X