Ankündigung

Einklappen
Keine Ankündigung bisher.

Automatische Beschattung

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

    Bezüglich suspend_night hast du vollkommen Recht. Am besten heißt das dort:
    as_value_laststate: eval:autoblind_eval.get_relative_itemid('..rules.n ight')
    Dann kannst du da überallhin copy pasten.

    Die Dauer vom Suspend kannst du auf jeden Fall mit einer set action ändern.. Ich hab mir für jedes Item ein paar Settings, hierarchisch auf Höhe von autostate_id, etc:
    Code:
                    settings:
                        type: foo
    
                        suspendduration:
                            type: num
                            visu_acl: rw
                            cache: 'True'
                            enforce_updates: 'no'
    Und in der rules Sektion hab ich dann:
    Code:
    as_suspend_time: eval:autoblind_eval.get_relative_itemvalue('..settings.suspendduration') * 60
    Sprich, du kannst einfach entweder in der default-Sektion oder unter rules eines Items darauf referenzieren:
    as_item_suspendduration: ..settings.suspendduration

    Und die Duration dann anpassen:
    Code:
                    on_enter_or_stay:
                        as_action_suspendduration:
                          - 'function: set'
                          - 'to: XYZ'

    Kommentar


      Ok, dann kann ich as_suspend_time nicht direkt ändern, sondern nur indirekt über ein verlinktes item?

      Also wenn ich es richtig verstanden habe, dann:
      as_supend_time: eval:..(duration)
      duration_item wird im Fall von Suspend per as_action_duration auf settings.durationstandard gesetzt, im Fall von Suspend_Night auf settings.durationnight.


      Kommentar


        Genauso sollte das klappen

        Kommentar


          Geht, aber:

          die suspend_time wird über
          Code:
          as_suspend_time: eval:autoblind_eval.get_relative_itemvalue('..suspend_duration')
          gesetzt.

          Bei Eintritt in Suspend wir die suspend_duration auf suspend_duration_short gesetzt, was auch in der Log Datei bestätigt wird.

          Jedoch bleibt die Restzeit noch auf dem alten Wert - Log Auszug:
          Code:
           Updated variable 'item.suspend_remaining' to 21600
          Erst nach erneutem Trigger wird die Restzeit richtig gesetzt:
          Code:
          Updated variable 'item.suspend_remaining' to 417
          Dabei wird auch die Eintrittszeit richtig genommen.

          Also funktioniert, sofern die Supendzeit > zyklischer Trigger.

          Kommentar


            Wenn du das suspend_duration item ins eval_trigger nimmst, müsste es doch auch klappen?

            Kommentar


              Habe ich schon versucht, aber das hat nichts bewirkt. Passt schon, ich kann damit leben, da die Suspendzeit eh über dem Triggerintervall liegt.

              Kommentar


                Das ist sonderbar.. könntest sonst mal das gesamte Item hier posten.

                Kommentar


                  Kann jemand Logiken triggern mit der autoblind 1.4 und smarthomeng 1.5.1? Bei mir heißt es immer "Logic name not found: ..." Der Name stimmt aber definitiv mit dem Namen aus dem logic.yaml überein.

                  So wird die Logik getriggert:
                  self._sh.trigger(self.__logic, by=by, source=self._name, value=self.__value)

                  Irgendwas war da mit Namespaces und obj, etc. Aber ich weiß grad gar nicht, wie das Problem zu lösen wäre..? psilo würd dir auf die Schnelle was einfallen woran es liegt? Wenn ich im Plugin selbst logic.trigger() aufrufe, klappt alles. Problem ist sowohl bei 1.5.1 master als auch develop.

                  Kommentar


                    Guckst Du hier https://www.smarthomeng.de/user/logi...scheduler.html

                    Ansonsten kannst Du den Trigger mit logic.trigger(...) aufrufen.
                    Viele Grüße
                    Martin

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

                    Kommentar


                      Perfekt, vielen Dank. Das Sinnvollste scheint mir, im Plugin den Namen "logics." davor zu setzen, falls es noch nicht im Namen ist.

                      Du weißt nicht zufällig, woran es liegen kann, dass bis dato die rules immer evaluiert wurden, sobald das rules item über eval_trigger aktualisiert wurde. Seit dem 1.5 muss zwingend auch ein eval in das rules Item, damit es funktioniert. Wenn ich n Hint habe, kann ich versuchen, das im Plugin anzupassen. Derzeit sind mir das aber zu viele Dateien..

                      Kommentar


                        Das Sinnvollste scheint mir, im Plugin den Namen "logics." davor zu setzen, falls es noch nicht im Namen ist.
                        Ohne zu viel über das weiter oben nachdenken zu müssen: Hat das eine Auswirkung auf die "by" Belegung in der Trigger-Funktion des SmartPlugin?!

                        Kommentar


                          Sieht gut aus:
                          DEBUG lib.scheduler licht.og.essen.rules-Startup Delay Triggering logics.uzsu_logic - by: AutoBlind Plugin source: uzsu dest: None value: bla,False

                          Kommentar


                            offline Passt für dich ein Implementieren deines Plugins in das offizielle Repo?

                            Kommentar


                              Bei mir kommt ein Item (zumindest seit 1.5.1?) immer wieder in den suspend Modus, obwohl es das nicht sollte. Hat das Problem sonst noch jemand?
                              Ich habe hier mal ein Issue erstellt: https://github.com/i-am-offline/smar...lind/issues/25

                              Konnte leider nicht wirklich herausfinden, wo das Problem liegt. Vielleicht sieht sonst jemand was oder offline ? Vielen Dank!

                              Kommentar


                                Hi, ich habe bislang nicht gemerkt, nutze aber noch die autoblind lib...

                                Kommentar

                                Lädt...
                                X