Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

Proiblem mit Timer

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

    Proiblem mit Timer

    Hallo zusammen,

    ich habe folgendes Problem:

    Ich habe Aussenbeleuchtung an der Einfahrt mit einem Shelly Dimmer versorgt.
    Klappt auch wunderbar...

    Nun möchte ich die Helligkeit per Bewegungsmelder steuern.
    Helligkeit ist auf 65% eingestellt.
    Wenn Bewegung erkannt wird, soll der Wert "zwischengespeichert" und die Helligkeit auf 100% gestellt werden.

    Nach abgelaufener Zeit soll die Helligkeit wieder auf den "zwischengespeicherten" Wert zurückgestellt werden.

    Folgende rule soll es bewerkstelligen:

    Code:
    
    var Timer md2Timer = null  // Einschalt-Timer für den BWM Auffahrt
    val int BWMMinutes1 = 5 // Zeit in Minuten Einschaltdauer BWM Auffahrt
    
    
    rule "Helligkeit Auffahrt über BWM"
    when
        Item Bewegung_Auffahrt received update 1
    then
         
         val BWMMinutes1 = (Zeit_Tag.state as DecimalType).intValue
         if(Sunset_Auto.state==ON && BWM_Bewegung_Freigabe.state==ON)
         {
              if(md2Timer === null ) 
              {
                   Shelly_Dimmer_Strasse_Hell_Temp.postUpdate(Shelly_ Dimmer_Strasse_Hell.state)
                   Shelly_Dimmer_Strasse_Hell.sendCommand(100)
                   logInfo("Licht_Aussen.rules", "Bewegung Auffahrt erkannt! Wird aufgehellt")
                   md2Timer = createTimer(now.plusMinutes(BWMMinutes1 ), 
                        [|
                        Shelly_Dimmer_Strasse_Hell.sendCommand(Shelly_Dimmer_Strasse_Hell_Temp.state)
                        logInfo("Licht_Aussen.rules", "Keine Bewegung mehr! Wird abgedunkelt")
                   md2Timer = null
                   ])
              }
              else 
              {
              logInfo("Licht_Aussen.rules", "Erneut Bewegung Auffahrt erkannt! Bleibt aufgehellt!")     
              md2Timer.reschedule(now.plusMinutes(BWMMinutes1 ))
         }
        }
         
    end
    Die rule funktioniert nur leider nicht.
    Ich bekomme da folgende Fehlermeldung

    Code:
    
    
    
    2020-12-17 19:07:31.346 [ERROR] [org.quartz.core.JobRunShell ] - Job DEFAULT.Timer 80 2020-12-17T19:07:31.344+01:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {
    
    <XFeatureCallImplCustom>.sendCommand(<XMemberFeatu reCallImplCustom>)
    
    logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)
    
    <null>.md2Timer = <XNullLiteralImplCustom>
    
    } ] threw an unhandled Exception:
    
    java.lang.NullPointerException: null
    
    at org.eclipse.smarthome.model.script.engine.ScriptEr ror.<init>(ScriptError.java:65) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.invokeFeature(ScriptInterpreter.jav a:140) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:991) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:954) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:235) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.evaluateArgumentExpressions(XbaseInterpret er.java:1205) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._invokeFeature(XbaseInterpreter.java:1135) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.invokeFeature(XbaseInterpreter.java:1081) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.invokeFeature(ScriptInterpreter.jav a:151) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:861) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:458) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:239) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.evaluate(XbaseInterpreter.java:201) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.ClosureIn vocationHandler.doInvoke(ClosureInvocationHandler. java:46) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.AbstractC losureInvocationHandler.invoke(AbstractClosureInvo cationHandler.java:29) ~[?:?]
    
    at com.sun.proxy.$Proxy1968.apply(Unknown Source) ~[?:?]
    
    at org.eclipse.smarthome.model.script.internal.action s.TimerExecutionJob.execute(TimerExecutionJob.java :48) ~[?:?]
    
    at org.quartz.core.JobRunShell.run(JobRunShell.java:2 02) [bundleFile:?]
    
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run (SimpleThreadPool.java:573) [bundleFile:?]
    
    2020-12-17 19:07:31.370 [ERROR] [org.quartz.core.ErrorLogger ] - Job (DEFAULT.Timer 80 2020-12-17T19:07:31.344+01:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {
    
    <XFeatureCallImplCustom>.sendCommand(<XMemberFeatu reCallImplCustom>)
    
    logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)
    
    <null>.md2Timer = <XNullLiteralImplCustom>
    
    } ] threw an exception.
    
    org.quartz.SchedulerException: Job threw an unhandled exception.
    
    at org.quartz.core.JobRunShell.run(JobRunShell.java:2 13) [bundleFile:?]
    
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run (SimpleThreadPool.java:573) [bundleFile:?]
    
    Caused by: java.lang.NullPointerException
    
    at org.eclipse.smarthome.model.script.engine.ScriptEr ror.<init>(ScriptError.java:65) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.invokeFeature(ScriptInterpreter.jav a:140) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:991) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:954) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:235) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.evaluateArgumentExpressions(XbaseInterpret er.java:1205) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._invokeFeature(XbaseInterpreter.java:1135) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.invokeFeature(XbaseInterpreter.java:1081) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.invokeFeature(ScriptInterpreter.jav a:151) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:861) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:231) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter._doEvaluate(XbaseInterpreter.java:458) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.doEvaluate(XbaseInterpreter.java:239) ~[?:?]
    
    at org.eclipse.smarthome.model.script.interpreter.Scr iptInterpreter.doEvaluate(ScriptInterpreter.java:2 26) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.internalEvaluate(XbaseInterpreter.java:215 ) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.XbaseInte rpreter.evaluate(XbaseInterpreter.java:201) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.ClosureIn vocationHandler.doInvoke(ClosureInvocationHandler. java:46) ~[?:?]
    
    at org.eclipse.xtext.xbase.interpreter.impl.AbstractC losureInvocationHandler.invoke(AbstractClosureInvo cationHandler.java:29) ~[?:?]
    
    at com.sun.proxy.$Proxy1968.apply(Unknown Source) ~[?:?]
    
    at org.eclipse.smarthome.model.script.internal.action s.TimerExecutionJob.execute(TimerExecutionJob.java :48) ~[?:?]
    
    at org.quartz.core.JobRunShell.run(JobRunShell.java:2 02) ~[?:?]
    
    ... 1 more
    Ich finde den Fehler leider nicht.

    Hat da jemand einen Tip für mich??





    #2
    Ein offensichtlicher Fehler: Du definierst dieselbe Konstante einmal global und einmal lokal, das ist nicht erlaubt.

    Kommentar


      #3
      Hallo Toni,

      das stimmt.
      Manchmal sieht man den Wald vor lauter Bäumen nicht....
      Läuft jetzt... :-)


      Gruß
      Yankee

      Kommentar

      Lädt...
      X