Reactor Times >< reversed

#1

Could it be that setting a between time range and opposite of what it should be for a true value?

#2

Something else is going on there. Hit “Restart” and see if it wakes up. If not, please post a Logic Summary.

#3

When pasting this report into the Vera forums, please include ALL lines below this one–do not edit/omit/redact!

*************************************************** REACTOR LOGIC SUMMARY REPORT ***************************************************
   Version: 3.0 config 301 cdata 19082 ui 19125 pluginDevice 747
    System: Vera version 1.7.4453 on Sercomm G450; loadtime 1557746871; systemReady 1557746902; Lua 5.1
Local time: 2019-05-14T06:28:23+1000; DST=0
House mode: plugin 1; system 1; tracking on
  Sun data: { "stamp": 2019134, "civdawn": 1557777334, "nautdawn": 1557775644, "sunset": 1557817701, "nautdusk": 1557820871, "latitude": -27.4679, "astrodusk": 1557822539, "longitude": 153.028, "civdusk": 1557819181, "astrodawn": 1557773976, "sunrise": 1557778814 }
  Geofence: not running
====================================================================================================================================
Battery Polling (#827)
    Version 19082.1557747557 05/13/19 21:39:17
    Message/status: Not tripped
    Condition group "Hourly Check Battery Lvl" (AND) false as of 21:06:30 <root>
      &-F-interval { "type": "interval", "options": [  ], "mins": 10, "id": "cond1698656a076", "hours": 1, "days": 0, "basetime": "15,00" } [1557772200 => 1557776400 at 05:40:00; F/F as of 05:40:15/05:40:15] <cond1698656a076>
      &-F-group "Low Device TTS Trigger" (OR) false as of 21:32:32 <grpd2hjz4q>
      |     |-F-service Battery Monitor (891) urn:upnp-org:serviceId:BatteryMonitor1/LowDeviceList > 0 [420,591 at 21:23:58; F/F as of 21:23:58/21:23:58] <condd2hk7rx>
      |     |-F-trange bet ,,,20,0,,,,8,0 [1557776415 => 1557779253 at 06:27:33; F/F as of 21:32:32/21:32:32] <condd2htg5e>
    Activity root.false
        Comment: 
    Activity grpd2hjz4q.true
        Run scene 289 Check Battery Lvl TTS
    Activity root.true
        Run Lua:
             1: luup.call_action("urn:upnp-org:serviceId:BatteryMonitor1", "Check",{}, 891 )
    Events
        05/13/19 21:31:19 evalchange: newState=true, cond=condd2htg5e
        05/13/19 21:31:19 condchange: newState=true, cond=grpd2hjz4q, oldState=false
        05/13/19 21:31:19 evalchange: newState=true, cond=grpd2hjz4q, oldState=false
        05/13/19 21:31:19 startscene: scene=grpd2hjz4q.true, sceneName=grpd2hjz4q.true
        05/13/19 21:31:19 runscene: scene=grpd2hjz4q.true, sceneName=grpd2hjz4q.true, group=1, notice=Starting scene group 1
        05/13/19 21:31:19 startscene: scene=289, sceneName=Check Battery Lvl TTS
        05/13/19 21:31:24 endscene: scene=289, sceneName=Check Battery Lvl TTS
        05/13/19 21:31:24 endscene: scene=grpd2hjz4q.true, sceneName=grpd2hjz4q.true
        05/13/19 21:32:31 configchange: 
        05/13/19 21:32:32 condchange: newState=false, cond=condd2htg5e, oldState=true
        05/13/19 21:32:32 evalchange: newState=false, cond=condd2htg5e, oldState=true
        05/13/19 21:32:32 condchange: newState=false, cond=grpd2hjz4q, oldState=true
        05/13/19 21:32:32 evalchange: newState=false, cond=grpd2hjz4q, oldState=true
        05/13/19 21:38:26 configchange: 
        05/13/19 21:39:18 configchange: 
        05/13/19 22:00:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/13/19 22:00:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/13/19 22:00:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/13/19 22:00:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/13/19 23:10:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/13/19 23:10:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/13/19 23:10:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/13/19 23:10:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 00:20:00 notify: delay=1800, cond=cond1698656a076, message=Detected missed interval Mon May 13 23:50:00 2019
        05/14/19 00:20:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 00:20:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 00:20:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 00:20:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 01:00:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 01:00:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 01:00:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 01:00:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 02:10:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 02:10:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 02:10:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 02:10:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 03:20:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 03:20:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 03:20:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 03:20:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 04:30:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 04:30:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 04:30:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 04:30:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 05:40:00 condchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 05:40:00 evalchange: newState=true, cond=cond1698656a076, oldState=false
        05/14/19 05:40:15 condchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 05:40:15 evalchange: newState=false, cond=cond1698656a076, oldState=true
        05/14/19 06:27:32 action: action=Restart
        05/14/19 06:27:32 start: 
====================================================================================================================================
Scene #289 Check Battery Lvl TTS
    Scene Lua:
           1: luup.call_action("urn:micasaverde-com:serviceId:Sonos1", "Say",
           2:                  {Text="Check battery Levels", Language="en", Volume=75},
           3:                  601)
           4: luup.sleep (4000)
           5: luup.call_action('urn:upnp-org:serviceId:RenderingControl', 'SetVolume', {DesiredVolume = 50}, 601)
#4

same result after hitting restart

#5

Hmmm… try moving the date/time test above the device state (keep them in the same group, just switch their positions).

#6

Never mind, I see the problem. Move your interval condition after the group–make it the last condition to be evaluated.

#7

Not sure why but this has worked

#8

It’s not you. There’s a bug in the interval condition That’s making it change a time value it should not, and that affects the date/time test. By moving the interval to the last spot, the change still happens, but the date/time test has already happened, so the effect of the bug isn’t felt.

I’ll do a formal fix for the next app approval cycle (next Sunday/Monday).

#9

Thanks for the clarification

#10

I’m experiencing a similar thing but putting the condition at the end didn’t help:
reactorTimes

#11

I need a bit more context than that, so let’s just go with a Logic Summary (please read the first line generated for instructions to preserve formatting)

#12

Yes, sorry. Report below.

*************************************************** REACTOR LOGIC SUMMARY REPORT ***************************************************
   Version: 3.0beta-19099 config 301 cdata 19082 ui 19099 pluginDevice 95
    System: Vera version 1.7.4453 on Sercomm G450; loadtime 1557970165; systemReady 1557970180; Lua 5.1
Local time: 2019-05-16T11:35:06+1000; DST=0
House mode: plugin 2; system 2; tracking on
  Sun data: { "stamp": 2019136, "civdawn": 1557953064, "nautdawn": 1557951155, "sunset": 1557991077, "nautdusk": 1557994675, "latitude": -37.8846, "astrodusk": 1557996545, "longitude": 145.295, "civdusk": 1557992767, "astrodawn": 1557949286, "sunrise": 1557954754 }
  Geofence: not running
====================================================================================================================================
LightCtrl MainLiving (#238)
    Version 19082.1557970471 05/16/19 11:34:31
    Message/status: Not tripped
    Condition group "Main Living Presence Controller" (OR) false as of 06:44:31 <root>
      |-?-group "Functions" (NUL) false as of n/a <grpcz0r751>
      |     +-F-group "Kitchen Motion 1" (AND) false as of 10:49:53 <grpcz0vb69>
      |     |     &-F-service Main Living Sensor (229) urn:micasaverde-com:serviceId:SecuritySensor1/Tripped istrue  [1 => 0 at 10:49:53; F/F as of 10:49:53/10:49:53] <condcz0t7tx>
      |     +-F-group "Kitchen Motion 2" (AND) false as of 10:49:53 <grpd0tucax>
      |     |     &-F-group "Motion" (AND) false as of 10:49:53 <grpd0tym4z>
      |     |     |     &-F-service Main Living Sensor (229) urn:micasaverde-com:serviceId:SecuritySensor1/Tripped istrue  [1 => 0 at 10:49:53; F/F as of 10:49:53/10:49:53] <condd0t5huo>
      |     |     &-T-group "Motion Interval" (NOT AND) TRUE as of 11:15:15 <grpd0u08g9>
      |     |     |     &-F-interval { "type": "interval", "options": [  ], "mins": 25, "id": "condd0tx5ff", "hours": 0, "days": 0 } [1557967800 => 1557969300 at 11:15:00; F/F as of 11:15:15/11:15:15] <condd0tx5ff>
      |-F-group "Kitchen Morning Entry Before 9am" (AND) false as of 06:44:31 <grpcz0kpob>
      |     &-F-housemode in 1,3 [3 => 2 at 06:49:35; F/F as of 06:49:35/06:49:35] <condcfa4ukp>
      |     &-F-service Upstairs Sensor (146) urn:micasaverde-com:serviceId:SecuritySensor1/Tripped istrue  [1 => 0 at 06:44:31; F/F as of 06:44:31/06:44:31] <cond0>
      |     &-F-service Entrance Sensor (119) urn:micasaverde-com:serviceId:SecuritySensor1/Tripped istrue  [1 => 0 at 06:44:39; F/F as of 06:44:39/06:44:39] <condcfa355p>
      |     &-T-trange bet ,,,0,0,,,,9,0 [1557970428 => 1557970473 at 11:34:33; T/T as of 05-13.12:42:08/05-13.12:42:08] <condcfa51wj>
      |-F-group "Wake-up Tablet" (AND) false as of 21:56:04 <grpcz16j4l>
      |     &-F-housemode in 1 [3 => 2 at 06:49:35; F/F as of 21:56:04/21:56:04] <condcz1b1n7>
      |     &-F-group "Main Living Presence Detected" (OR) false as of 10:49:53 <grpd0ub0mk>
      |     |     |-F-grpstate LightCtrl MainLiving (238) Kitchen Motion 1 (grpcz0vb69) istrue [true => false at 10:49:53; F/F as of 10:49:53/10:49:53] <condcz1789n>
      |     |     |-F-grpstate LightCtrl MainLiving (238) Kitchen Motion 2 (grpd0tucax) istrue [true => false at 10:49:53; F/F as of 10:49:53/10:49:53] <condd0ubrit>
      |-F-group "Restart Tablet Charger" (AND) false as of 12:00:15 <grpcz1g1lx>
      |     &-F-interval { "type": "interval", "options": [  ], "mins": 0, "id": "condcz1h81p", "hours": 24, "days": 0, "basetime": "12,00" } [1557799200 => 1557885600 at 12:00:00; F/F as of 12:00:15/12:00:15] <condcz1h81p>
    Activity grpcz1g1lx.true
        Device 76 (Fridge) action urn:upnp-org:serviceId:SwitchPower1/SetTarget( newTargetValue=0 )
        Delay 60 inline
        Device 76 (Fridge) action urn:upnp-org:serviceId:SwitchPower1/SetTarget( newTargetValue=1 )
    Activity grpcz16j4l.true
        Run Lua:
             1: local rm = require "rm"
             2: rm.imperiHomePage(0)
             3: return true
    Activity grpcz0kpob.true
        Device 64 (Kitchen Lights) action urn:upnp-org:serviceId:SwitchPower1/SetTarget( newTargetValue=1 )
        Run Lua:
             1: local rm = require "rm"
             2: rm.imperiHomePage(0)
             3: return true
    Events
        05/16/19 11:29:35 start: 
        05/16/19 11:30:47 configchange: 
        05/16/19 11:33:47 configchange: 
        05/16/19 11:34:32 configchange: 
#13

You have two interval conditions, one in the Functions group, and one in Restart Tablet Charger.

Download this (stable branch) versio of L_Reactor.lua by right-clicking and choosing Save link as…, then upload it to your Vera via Apps > Develop apps > Luup files.

#14

You’re right, of course! I thought the bug was limited to having the interval condition inside the group which was not working. Thanks.