Ankündigung

Einklappen
Keine Ankündigung bisher.

sh.scheduler.change

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

    sh.scheduler.change

    Hi,
    ich möchte in einer Logik den nächsten Ausführungzeitpunkt der Logik festlegen. Das hier versuche ich:
    Code:
    sh.scheduler.change(name='RolloAutomatic', cron="{} {} * *".format(triggerDatetime.hour,triggerDatetime.minute))
    Leider wird gemeckert, dass die cron syntax nicht richtig ist
    HTML-Code:
    2015-01-02 19:34:06 ERROR    RolloAutomatic Logic: RolloAutomatic, File: /usr/local/smarthome/lib/scheduler.py, Line: 285, Method: _next_time, Exception: list indices must be integers, not str
    Traceback (most recent call last):
      File "/usr/local/smarthome/lib/scheduler.py", line 327, in _task
        exec(obj.bytecode)
      File "/usr/local/smarthome/logics/rolloautomatic.conf", line 31, in <module>
        sh.scheduler.change(name='RolloAutomatic', cron="{} {} * *".format(int(triggerDatetime.hour),int(triggerDatetime.minute)))
      File "/usr/local/smarthome/lib/scheduler.py", line 255, in change
        self._next_time(name)
      File "/usr/local/smarthome/lib/scheduler.py", line 285, in _next_time
        value = job['cron'][entry]
    TypeError: list indices must be integers, not str
    Die Werte mittels int('bla') parsen, bringt leider auch nichts.
    Hat jemand einen Tipp für mich?

    Gruß
    René

    #2
    Mein aktueller Ansatz ist dieser:
    Code:
    logic.trigger([COLOR=#660099]dt[/COLOR]=triggerDatetime,[COLOR=#660099]value[/COLOR]=[COLOR=#008080][B]'LogicScheduler'[/B][/COLOR])
    
    [COLOR=#808080][I]# test if this is a call from init
    [/I][/COLOR][COLOR=#000080][B]if [/B][/COLOR]trigger[[COLOR=#008080][B]'value'[/B][/COLOR]] != [COLOR=#008080][B]'LogicScheduler'[/B][/COLOR]:
       logger.info([COLOR=#008080][B]'Logic triggered by init. Do NOT move Rollo'[/B][/COLOR])
    [COLOR=#000080][B]else[/B][/COLOR]:
    Mal sehen ob das klappt.

    Gruß
    René

    Kommentar


      #3
      Hallo,

      suche doch mal im Forum, das wurde schon behandelt. Die Syntax ist momentan etwas speziell.

      Bis bald

      Marcus

      Kommentar


        #4
        Zitat von mknx Beitrag anzeigen
        Hallo,

        suche doch mal im Forum, das wurde schon behandelt. Die Syntax ist momentan etwas speziell.

        Bis bald

        Marcus
        Hi Marcus,
        ich hatte es nicht hinbekommen (natürlich mit der Suche im Forum). Deshalb der Workaraound.

        Gruß
        René

        Kommentar


          #5
          War glaube ich in diesem Thread - mit Marcus' epischer Aussage "sleep ist böse".

          /tom

          Kommentar

          Lädt...
          X