Discussion Forum to share and further the development of home control and automation, independent of platforms.

    SmartHome Community

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Unsolved
    (Last Updated: 22 July 2022)
    • What does [Error] terminated [-] mean?

      Snowman

      Post has been updated.

      Need some guidance in determining what this error means.

      Running Reactor latest-23078-d592d400; ZWaveJSController; Docker on Synology; Home Assistant 2023.3.6; Z-Wave JS UI 8.11.1

      I have searched the site and could not find anything related to my question.

      I know what the rule does. Yet, I cannot find the relationship with this error.

      If someone could point me in the right direction, it would be appreciated.

      Thanks in advance

      Rule is as follow:

      If the garage side door opens when the alarm is not armed and that both my spouse and I are at home:

      Set Reaction: turn on the Siren_8 (basically a two seconds beep that was configured with the Aeotec Siren to warn us that the door is open)

      Reset Reaction: turn off the Siren_8 in case it wants to keep beeping

      Error terminated.jpg

      Here's the updated error.

      [latest-23078]2023-03-26T22:31:36.772Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:36.772Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:36.773Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:36.773Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:36.782Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:36.783Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:36.790Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:36.791Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:36.799Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:36.799Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:36.800Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:36.800Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluation complete [latest-23078]2023-03-26T22:31:36.800Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:36.801Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:36.802Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluated; trigger state changed (false), but rule state remains RESET [latest-23078]2023-03-26T22:31:36.804Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:36.804Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:36.812Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:36.812Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:36.814Z <Engine:INFO> Enqueueing "Door Sensors State<RESET>" (rule-lerjv6if:R) [latest-23078]2023-03-26T22:31:36.815Z <Engine:INFO> Enqueueing "Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET>" (rule-lbmoup28:R) [latest-23078]2023-03-26T22:31:36.817Z <Engine:INFO> Enqueueing "Toggle Vestibule scene 003 LED color state between green/blue<RESET>" (rule-lfn441bq:R) [latest-23078]2023-03-26T22:31:36.819Z <Engine:NOTICE> Starting reaction Door Sensors State<RESET> (rule-lerjv6if:R) [latest-23078]2023-03-26T22:31:36.820Z <Engine:NOTICE> Starting reaction Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET> (rule-lbmoup28:R) [latest-23078]2023-03-26T22:31:36.822Z <Engine:NOTICE> Starting reaction Toggle Vestibule scene 003 LED color state between green/blue<RESET> (rule-lfn441bq:R) [latest-23078]2023-03-26T22:31:36.823Z <ZWaveJSController:INFO> ZWaveJSController#zwavejs performing zwave_device.set_config on Switch#zwavejs>128-0 with [Object]{ "parameter": "9", "size": 1, "value": 2, "bitmask": 0 } [latest-23078]2023-03-26T22:31:36.830Z <HassController:INFO> HassController#hass action x_hass_input_text.set_value([Object]{ "value": "Closed" }) on Entity#hass>input_text_h_door_sensors_state succeeded [latest-23078]2023-03-26T22:31:36.831Z <Engine:INFO> Resuming reaction Door Sensors State<RESET> (rule-lerjv6if:R) from step 1 [latest-23078]2023-03-26T22:31:36.832Z <Engine:INFO> Door Sensors State<RESET> all actions completed. [latest-23078]2023-03-26T22:31:37.043Z <Rule:INFO> Batteries State (rule-leucn9pp in Control Room) starting evaluation; because entity-changed ValueSensor#hass>sensor_garage_side_door_openclose_battery_level [latest-23078]2023-03-26T22:31:37.044Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) starting evaluation; because entity-changed ValueSensor#hass>sensor_garage_side_door_openclose_battery_level [latest-23078]2023-03-26T22:31:37.045Z <Rule:INFO> Batteries State (rule-leucn9pp in Control Room) trigger evaluation result is true (previously true) [latest-23078]2023-03-26T22:31:37.046Z <Rule:INFO> Batteries State (rule-leucn9pp in Control Room) evaluated; trigger state unchanged (true); rule state remains SET [latest-23078]2023-03-26T22:31:37.060Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) trigger evaluation result is true (previously true) [latest-23078]2023-03-26T22:31:37.060Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) evaluated; trigger state unchanged (true); rule state remains SET [latest-23078]2023-03-26T22:31:37.062Z <Rule:INFO> Batteries State (rule-leucn9pp in Control Room) evaluation complete [latest-23078]2023-03-26T22:31:37.062Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:37.146Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) starting evaluation; because entity-changed Group#groups>low_battery [latest-23078]2023-03-26T22:31:37.156Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) trigger evaluation result is true (previously true) [latest-23078]2023-03-26T22:31:37.157Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) evaluated; trigger state unchanged (true); rule state remains SET [latest-23078]2023-03-26T22:31:37.157Z <Rule:INFO> Notification: Battery - Low level warning (rule-lbh1vt4k in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:37.161Z <Engine:INFO> Resuming reaction Toggle Vestibule scene 003 LED color state between green/blue<RESET> (rule-lfn441bq:R) from step 2 [latest-23078]2023-03-26T22:31:37.162Z <Engine:INFO> Toggle Vestibule scene 003 LED color state between green/blue<RESET> all actions completed. [latest-23078]2023-03-26T22:31:37.316Z <HassController:INFO> HassController#hass action x_hass_siren.turn_off([Object]{ }) on Entity#hass>siren_siren_8 succeeded [latest-23078]2023-03-26T22:31:37.317Z <Engine:INFO> Resuming reaction Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET> (rule-lbmoup28:R) from step 2 [latest-23078]2023-03-26T22:31:37.317Z <Engine:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET> all actions completed. [latest-23078]2023-03-26T22:31:38.892Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:38.892Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:38.893Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:38.894Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:38.894Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:38.907Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:38.907Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:38.916Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:38.917Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:38.925Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:38.925Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:38.926Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:38.926Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluation complete [latest-23078]2023-03-26T22:31:38.926Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:38.927Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:38.930Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) constraints not met! [latest-23078]2023-03-26T22:31:38.930Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluated; trigger state changed (true), but rule state remains RESET [latest-23078]2023-03-26T22:31:38.931Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:38.932Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:38.939Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:38.939Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:38.941Z <Engine:INFO> Enqueueing "Door Sensors State<SET>" (rule-lerjv6if:S) [latest-23078]2023-03-26T22:31:38.942Z <Engine:INFO> Enqueueing "Notification: Home Security - Garage side door just opened (Disarmed Only)<SET>" (rule-lbmoup28:S) [latest-23078]2023-03-26T22:31:38.943Z <Engine:INFO> Enqueueing "Toggle Vestibule scene 003 LED color state between green/blue<SET>" (rule-lfn441bq:S) [latest-23078]2023-03-26T22:31:38.945Z <Engine:NOTICE> Starting reaction Door Sensors State<SET> (rule-lerjv6if:S) [latest-23078]2023-03-26T22:31:38.946Z <Engine:NOTICE> Starting reaction Notification: Home Security - Garage side door just opened (Disarmed Only)<SET> (rule-lbmoup28:S) [latest-23078]2023-03-26T22:31:38.948Z <Engine:NOTICE> Starting reaction Toggle Vestibule scene 003 LED color state between green/blue<SET> (rule-lfn441bq:S) [latest-23078]2023-03-26T22:31:38.949Z <ZWaveJSController:INFO> ZWaveJSController#zwavejs performing zwave_device.set_config on Switch#zwavejs>128-0 with [Object]{ "parameter": "9", "size": 1, "value": 1, "bitmask": 0 } [latest-23078]2023-03-26T22:31:38.956Z <HassController:INFO> HassController#hass action x_hass_input_text.set_value([Object]{ "value": "Open" }) on Entity#hass>input_text_h_door_sensors_state succeeded [latest-23078]2023-03-26T22:31:38.957Z <Engine:INFO> Resuming reaction Door Sensors State<SET> (rule-lerjv6if:S) from step 1 [latest-23078]2023-03-26T22:31:38.958Z <Engine:INFO> Door Sensors State<SET> all actions completed. [latest-23078]2023-03-26T22:31:39.284Z <Engine:INFO> Resuming reaction Toggle Vestibule scene 003 LED color state between green/blue<SET> (rule-lfn441bq:S) from step 2 [latest-23078]2023-03-26T22:31:39.284Z <Engine:INFO> Toggle Vestibule scene 003 LED color state between green/blue<SET> all actions completed. [latest-23078]2023-03-26T22:31:39.530Z <HassController:INFO> HassController#hass action x_hass_siren.turn_on([Object]{ "tone": "30" }) on Entity#hass>siren_siren_8 succeeded [latest-23078]2023-03-26T22:31:39.531Z <Engine:INFO> Resuming reaction Notification: Home Security - Garage side door just opened (Disarmed Only)<SET> (rule-lbmoup28:S) from step 2 [latest-23078]2023-03-26T22:31:39.531Z <Engine:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only)<SET> all actions completed. [latest-23078]2023-03-26T22:31:40.341Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_siren_siren_active_8 [latest-23078]2023-03-26T22:31:40.351Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:40.352Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:40.353Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:40.645Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) starting evaluation; because entity-changed Group#groups>water_leak_detected [latest-23078]2023-03-26T22:31:40.654Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:40.654Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:40.655Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:41.311Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:41.312Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:41.313Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:41.315Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:41.315Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:41.327Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:41.327Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:41.335Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:41.336Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:41.343Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:41.343Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:41.344Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:41.344Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluation complete [latest-23078]2023-03-26T22:31:41.344Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:41.345Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:41.346Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluated; trigger state changed (false), but rule state remains RESET [latest-23078]2023-03-26T22:31:41.347Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) trigger evaluation result is false (previously true) [latest-23078]2023-03-26T22:31:41.348Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluated; rule state transition from SET to RESET! [latest-23078]2023-03-26T22:31:41.354Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:41.355Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:41.356Z <Engine:INFO> Enqueueing "Door Sensors State<RESET>" (rule-lerjv6if:R) [latest-23078]2023-03-26T22:31:41.357Z <Engine:INFO> Enqueueing "Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET>" (rule-lbmoup28:R) [latest-23078]2023-03-26T22:31:41.360Z <Engine:INFO> Enqueueing "Toggle Vestibule scene 003 LED color state between green/blue<RESET>" (rule-lfn441bq:R) [latest-23078]2023-03-26T22:31:41.361Z <Engine:NOTICE> Starting reaction Door Sensors State<RESET> (rule-lerjv6if:R) [latest-23078]2023-03-26T22:31:41.363Z <Engine:NOTICE> Starting reaction Notification: Home Security - Garage side door just opened (Disarmed Only)<RESET> (rule-lbmoup28:R) [latest-23078]2023-03-26T22:31:41.365Z <Engine:NOTICE> Starting reaction Toggle Vestibule scene 003 LED color state between green/blue<RESET> (rule-lfn441bq:R) [latest-23078]2023-03-26T22:31:41.366Z <ZWaveJSController:INFO> ZWaveJSController#zwavejs performing zwave_device.set_config on Switch#zwavejs>128-0 with [Object]{ "parameter": "9", "size": 1, "value": 2, "bitmask": 0 } [latest-23078]2023-03-26T22:31:41.374Z <HassController:INFO> HassController#hass action x_hass_input_text.set_value([Object]{ "value": "Closed" }) on Entity#hass>input_text_h_door_sensors_state succeeded [latest-23078]2023-03-26T22:31:41.375Z <Engine:INFO> Resuming reaction Door Sensors State<RESET> (rule-lerjv6if:R) from step 1 [latest-23078]2023-03-26T22:31:41.375Z <Engine:INFO> Door Sensors State<RESET> all actions completed. [latest-23078]2023-03-26T22:31:41.497Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) starting evaluation; because entity-changed ValueSensor#hass>sensor_docker_hub [latest-23078]2023-03-26T22:31:41.498Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:41.498Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:41.499Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:41.501Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_docker_hub_update_available [latest-23078]2023-03-26T22:31:41.502Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:41.502Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:41.503Z <Rule:INFO> Notification: Update Available - Home Assistant (rule-lbmnmfds in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:41.709Z <Engine:INFO> Resuming reaction Toggle Vestibule scene 003 LED color state between green/blue<RESET> (rule-lfn441bq:R) from step 2 [latest-23078]2023-03-26T22:31:41.709Z <Engine:INFO> Toggle Vestibule scene 003 LED color state between green/blue<RESET> all actions completed. [latest-23078]2023-03-26T22:31:49.669Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) starting evaluation; because entity-changed System#reactor_system>system [latest-23078]2023-03-26T22:31:49.670Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:49.670Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:49.670Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:49.675Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) starting evaluation; because entity-changed System#reactor_system>system [latest-23078]2023-03-26T22:31:49.675Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:49.676Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:49.676Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:49.678Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) starting evaluation; because entity-changed System#reactor_system>system [latest-23078]2023-03-26T22:31:49.679Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:49.679Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:49.680Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:49.682Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) starting evaluation; because entity-changed System#reactor_system>system [latest-23078]2023-03-26T22:31:49.683Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:49.683Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:49.683Z <Rule:INFO> Notification: Update Available - Reactor (rule-laeg075n in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:52.484Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_siren_siren_active_8 [latest-23078]2023-03-26T22:31:52.485Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:52.485Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:52.486Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) starting evaluation; because entity-changed BinarySensor#hass>binary_sensor_garage_side_door_openclose_window_door_is_open [latest-23078]2023-03-26T22:31:52.502Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) trigger evaluation result is false (previously false) [latest-23078]2023-03-26T22:31:52.502Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23078]2023-03-26T22:31:52.505Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:52.505Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:52.515Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:52.515Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:52.524Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:52.525Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:52.537Z <Rule:INFO> Notification: Home Security - Open/close water main shut-off valve (rule-kvo8us5v in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:52.538Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:52.538Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) starting evaluation; because data-changed Data#states:cs-rule-lfn41thm [latest-23078]2023-03-26T22:31:52.538Z <Rule:INFO> Any door open? (rule-lfn41thm in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:52.538Z <Rule:INFO> Door Sensors State (rule-lerjv6if in Control Room) evaluation complete [latest-23078]2023-03-26T22:31:52.539Z <Rule:INFO> Notification: Home Security - Garage side door just opened (Disarmed Only) (rule-lbmoup28 in Notifications) evaluation complete [latest-23078]2023-03-26T22:31:52.540Z <HassController:INFO> HassController#hass action x_hass_siren.turn_off([Object]{ }) on Entity#hass>siren_siren_8 succeeded [latest-23078]2023-03-26T22:31:52.541Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:52.542Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) constraints not met! [latest-23078]2023-03-26T22:31:52.542Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluated; trigger state changed (true), but rule state remains RESET [latest-23078]2023-03-26T22:31:52.544Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) trigger evaluation result is true (previously false) [latest-23078]2023-03-26T22:31:52.544Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluated; rule state transition from RESET to SET! [latest-23078]2023-03-26T22:31:52.551Z <Rule:INFO> Alarm triggered (rule-lbqu752y in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:52.552Z <Rule:INFO> Toggle Vestibule scene 003 LED color state between green/blue (rule-lfn441bq in Home Security) evaluation complete [latest-23078]2023-03-26T22:31:52.565Z <Engine:NOTICE> [Engine]Engine#1 entry 171 reaction rule-lbmoup28:R: [Error] terminated [-] [latest-23078]2023-03-26T22:31:52.565Z <Engine:CRIT> Error: terminated [-] Error: terminated at Engine._process_reaction_queue (/opt/reactor/server/lib/Engine.js:1555:47) at runMicrotasks (<anonymous>) at processTicksAndRejections (node:internal/process/task_queues:96:5)
      Multi-System Reactor
    • Local expressions not evaluated in rules (MQTTController based entities)

      M

      Some background

      I have MQTTController based entities that I want to use in time calculations in my rules. These entities represent two separate time ranges, one for the weekdays and the other for the weekends. In this particular example they are used to control my doorbell activity (whether it's enabled or disabled).

      MQTT message which is used to update the entities. NOTE: time is in 24h format

      { "data": { "weekdays": { "enable": "09:28", "disable": "20:00" }, "weekends": { "enable": "09:00", "disable": "21:00" } } }

      Entity definitions (here's only the definition for the weekdays for brevity)

      doorbell-weekdays-enable: name: 'Ovikello päälle (arkisin)' topic: 'doorbell/settings' capabilities: - string_sensor primary_attribute: string_sensor.value events: "%topic%": "string_sensor.value": json_payload: true expr: "payload.data.weekdays.enable" doorbell-weekdays-disable: name: 'Ovikello pois päältä (arkisin)' topic: 'doorbell/settings' capabilities: - string_sensor primary_attribute: string_sensor.value events: "%topic%": "string_sensor.value": json_payload: true expr: "payload.data.weekdays.disable"

      I have verified that the entities are populated correctly and the values are working in local expressions.

      The entity (only the range start for brevity):
      Screenshot from 2023-03-22 09-27-54.png

      The rule:
      Screenshot from 2023-03-22 09-28-28.png

      And the local expression within the rule:

      weekdays_enabled = (time() >= time(getEntity( "mqtt>doorbell-weekdays-enable" ).attributes.string_sensor.value )) && (time() <= time(getEntity( "mqtt>doorbell-weekdays-disable" ).attributes.string_sensor.value ))

      The problem
      Local expression doesn't seem to evaluate to true even if the current time gets within the range. But if the related entities are updated, then the expression is evaluated and the rule is triggered.

      As seen from the screenshots, the current time is 09:28:12 and the start time in corresponding entity is set to 09:28. But still the rule is not triggered. However, if I update the entity e.g. to 09:27, the local expression will get evaluated and the rule is triggered.

      My understanding is that the local expression is working correctly but since it's not evaluated, it will not trigger the rule.

      Is this a bug or have I misunderstood something? If so, how should I implement this kind of functionality?

      br,
      mgvra

      Reactor (Multi-hub) latest-23078-d592d400 + MQTTController [0.1.23010]

      Multi-System Reactor
    • Trying to add second Hubitat controller

      R

      Converting from Vera Plus to Hubitat at two different locations. The two sites are interconnected via a router-to-router VPN. I currently have a Hubitat C7 running at Site One and a Vera Plus at Site Two. The MSR Raspberry Pi is co-located with the Vera Plus at Site Two. I "activated" a Hubitat C8 (ethernet connected) at Site Two including the installation of Hub Information Driver and its associated device. I also installed a single zwave outlet module (GE ZW4202). I restarted MSR. The C8 and its associated devices appear on both the Entities page and the MSR Dashboard, but the C8 reports as down on the MSR Status page and the GE outlet does not respond when "clicked". I am not sure where to look to try to find the source of the problem and will greatly appreciate any suggestions.

      Multi-System Reactor
    • [Solved] Expressions - predefining a variable type

      PerH

      I have a use case where I need to have a boolean variable that will be set to true/false by reactions.

      I see that i can define a local variable by giving it a name and leaving the definition empty. This leaves it at state "null" until a reaction tells it that its a boolean.

      Is there a way to tell it that it should start out as "false" (i.e when reactor has restarted), and not null?

      Am i going about this the wrong way?

      -- The use case is that I have a sensor on my fireplace, and the following logic is for notifying when its time to get up en refill with firewood.. I also want to reset the MaxInInterval to CurrentTemp when notification is sent..

      1fd2951f-cb6b-4a2f-b957-1e0698171f4d-image.png dd99634e-f0ad-4878-bb87-0284c2df5535-image.png

      Edit: better screenhots. Reactor version 23010-7dd2c9e9

      Multi-System Reactor
    • Reactor (Multi-System/Multi-Hub) Announcements

      toggledbits

      Build 21228 has been released. Docker images available from DockerHub as usual, and bare-metal packages here.

      Home Assistant up to version 2021.8.6 supported; the online version of the manual will now state the current supported versions; Fix an error in OWMWeatherController that could cause it to stop updating; Unify the approach to entity filtering on all hub interface classes (controllers); this works for device entities only; it may be extended to other entities later; Improve error detail in messages for EzloController during auth phase; Add isRuleSet() and isRuleEnabled() functions to expressions extensions; Implement set action for lock and passage capabilities (makes them more easily scriptable in some cases); Fix a place in the UI where 24-hour time was not being displayed.
      Multi-System Reactor
    • Home assistant addon: Import Vera/Openluup backup

      R

      Hi guys,

      I want to import my reactor sensors in the MSR addon for Home Assistant, but I can't find the app.js file anywhere. So now I don't know where to put the backup file.

      I have not tried to put it in the main directory (config/reactor) yet. Wanted to know if I'm the only one with the problem.

      Reactor addon: v0.0.8
      MSR: 23063-c464b685
      Home Assistant 2023.3.3
      Supervisor 2023.03.1
      Operating System 9.5
      Frontend 20230202.0 - latest

      I started with v0.0.7, have just updated everything. Still no file.

      Multi-System Reactor
    • MQTT Controller and extended capabilities

      M

      I'm a little bit confused how to configure extended capabilities for the entities in the MQTTController.

      mqtt_cababilities.yaml states that: "...You can add your own capabilities by adding a "capabilities" section to your own local_mqtt_capabilities.yaml file in your config directory."

      So I did this in my local_mqtt_capabilities.yaml in the config directory:

      version: 22353 revision: 1 format: 1 capabilities: x_my_config: attributes: partyMode: type: bool actions: some_action: topic: '%topic/write' payload: "some value"

      And in my reactor.yaml I have following configuration entry:

      my-config: name: 'My custom configuration' topic: 'my-config' query: "%topic%/read" init: "%topic%/read" capabilities: - x_my_config primary_attribute: x_my_config.partyMode events: "%topic%/status": "x_my_config.partyMode": json_payload: true expr: "payload.partyMode"

      This sort of works but not quite. The partyMode attribute gets updated when messages arrive for that specific topic, so that's fine. But I don't see x_my_config capability in the Capabilities list in the UI and also the some_action is missing.

      Screenshot from 2023-03-09 19-42-49.png

      Addition to that the primary value is not set and I'm getting the following error:
      Screenshot from 2023-03-09 19-30-42.png

      Have I completely misunderstood the idea behind the capability extension and the attributes? If so, could someone point me to the right direction with few explanatory example configs.

      What I'm trying to achieve is a set of configuration options that could be updated thru the MQTT, and also provide some actions that the rules could invoke.

      Reactor (Multi-hub) latest-23063-c464b685 + MQTTController [0.1.23010]

      br,
      mgvra

      Multi-System Reactor
    • localization settings

      tunnus

      Using the following localization settings in reactor.yaml:

      units: metric locale: fi-FI time_format: "%H:%M:%S" date_format: "%d/%m/%Y"

      But still I'm getting US date & time formatting, so settings do not seem to override defaults? Using 23049 on Synology Docker

      Multi-System Reactor
    • Installing MQTTController on Home Assistant Core when Reactor is installed as an Add-In (VirtualBox)

      W

      Running Home Assistant Core under VirtualBox (on Windows) and Reactor is installed and working fine as an add-in. What I can't figure out is how to install MQTTController in this situation. I can upload the files and unzip them, but I can't run install.sh in a terminal window because npm is not a part of the Core installation.

      It does appear that somewhere in the stack there is a version of docker there between VirtualBox and HA, (I see some references go by in the VirtualBox startup log) but it appears minimal and will not execute the install via the docker technique in your documentation from the VB console.

      Is there a way to do this?

      Thanks.

      Multi-System Reactor
    • Home Assistant add-on

      M

      I've done a bit of repackaging of MSR to make it work as an add-on under Home Assistant mostly for my own purposes but hopefully it makes it a bit easier to install and get going.

      GitHub - mrw298/hassio-reactor-addon GitHub - mrw298/hassio-reactor-addon

      Contribute to mrw298/hassio-reactor-addon development by creating an account on GitHub.

      Multi-System Reactor
    • Does order matter in Reactions Set/Reset

      G

      @toggledbits somewhere I thought I read that MSR goes thru the items in set reaction and reset reaction in stack order, ie from top to bottom/first to last.

      Am I mistaken?

      Multi-System Reactor
    • Reactor: How to call Hass service for noob

      W

      Reactor 23063 running on Windows Bare Metal.
      Home assistant 2023.3.1
      ESPHome 2023.2.4

      I've been trying a few ways using some results from search to call a Hass service as a reaction in a Reactor rule.

      Specifically, when the PIR in the room senses motion, wake the NsPanel screen.

      My Reactions otherwise so far are basic If this then that so I'm way behind what others are doing.

      What I want to call as a Reaction:
      Capture1.PNG

      What I've tried (a few variations on):
      Capture2.PNG

      What happens:

      [latest-23063]2023-03-07T07:45:21.688Z <wsapi:ERR> wsapi: error thrown handling client message [Object]{ "command": "perform", "entity": "WOKHASS1>system", "action": "x_hass_system.call_service", "parameters": { "service": "ESPHome: nspensuite_send_command_printf", "data": "page home" }, "qid": 75 } [latest-23063]2023-03-07T07:45:21.688Z <wsapi:CRIT> TypeError: Cannot read properties of null (reading '1') [-] TypeError: Cannot read properties of null (reading '1') at HassController.performOnEntity (C:\reactor\reactor\server\lib\HassController.js:584:108) at System.perform (C:\reactor\reactor\server\lib\Entity.js:707:56) at WSAPI.clientMessage (C:\reactor\reactor\server\wsapi\wsapi.js:499:48) at WebSocket.<anonymous> (C:\reactor\reactor\server\wsapi\wsapi.js:290:158) at WebSocket.emit (node:events:520:28) at WebSocket.emit (node:domain:475:12) at Receiver.receiverOnMessage (C:\reactor\reactor\node_modules\ws\lib\websocket.js:1059:20) at Receiver.emit (node:events:520:28) at Receiver.emit (node:domain:475:12) at Receiver.dataMessage (C:\reactor\reactor\node_modules\ws\lib\receiver.js:517:14)

      If someone can convert the 'call service' to a 'reaction' for me, or share their own similar thing I think that's what I need to achieve this goal.

      I suspect if I'm even close to being on the right track, my problems are probably formatting like curly braces etc and lack thereof.

      Thanks in advance.

      Multi-System Reactor
    • Reactor Ex Machina

      G

      @toggledbits was looking thru rule sets and updating which (new) lights I wanted REMII to impact and saw that this...

      4711b0df-5e98-4992-bb25-d0e53203f0e8-image.png

      ...is showing as (missing) in the rule Deactivatedand looking in the dropdown of Variables it appears I cannot select that local expression (only Global) as I did when originally building this out back in 2021.

      27f7025c-057e-441a-88ea-dc4bdf39614d-image.png

      In looking at the rule Active Period I'm seeing:
      487074ef-3bfa-4a84-b03d-ed6d920c118c-image.png which appears to be pointing to setting a variable in a rule?

      It's admittedly been a couple years since this was built and it's def not fresh in my memory.

      Multi-System Reactor
    • No drop-down list on Entity Attribute in "Creation Rule Sets" interface

      C

      New installation of Reactor version 23063-c464b685 on a Raspberry PI4 with Portainer/Docker.
      Report :
      No drop-down list on Entity Attribute in "Creation Rule Sets" interface
      I can however visualize the entities.
      I have configured HomeAssistant and all entities are coming up fine.
      I have an unsupported Hass version 2023.3.0b5.
      I'm new to Docker and can someone guide me to a solution?
      Christian FABRE

      Alert:
      reactor_20230305_01.png Rule :
      reactor_20230305_02.png Entities:
      reactor_20230305_03.png log Reactor :

      [latest-23063]2023-03-05T09:51:49.575Z <app:null> Process ID 1 user/group 0/0; docker; platform linux/arm64 #1595 SMP PREEMPT Wed Oct 26 11:07:24 BST 2022; locale (undefined) [latest-23063]2023-03-05T09:51:49.576Z <app:null> Basedir /opt/reactor; data in /var/reactor/storage [latest-23063]2023-03-05T09:51:49.577Z <app:null> NODE_PATH=/opt/reactor:/opt/reactor/node_modules [latest-23063]2023-03-05T09:51:49.584Z <app:INFO> Configured locale (undefined); selected locale(s) en-US.UTF-8 [latest-23063]2023-03-05T09:51:49.708Z <app:INFO> Loaded locale en-US for en-US [latest-23063]2023-03-05T09:51:49.725Z <Structure:null> Module Structure v22323 [latest-23063]2023-03-05T09:51:49.729Z <Capabilities:null> Module Capabilities v22356 [latest-23063]2023-03-05T09:51:49.806Z <Capabilities:NOTICE> System capabilities loaded from core distribution, data version 23058 revision 1 [latest-23063]2023-03-05T09:51:49.849Z <Plugin:null> Module Plugin v22300 [latest-23063]2023-03-05T09:51:49.869Z <TimerBroker:null> Module TimerBroker v22283 [latest-23063]2023-03-05T09:51:49.878Z <Entity:null> Module Entity v22353 [latest-23063]2023-03-05T09:51:49.889Z <Controller:null> Module Controller v23044 [latest-23063]2023-03-05T09:51:49.926Z <default:null> Module Ruleset v22293 [latest-23063]2023-03-05T09:51:49.928Z <default:null> Module Rulesets v22146 [latest-23063]2023-03-05T09:51:49.943Z <GlobalExpression:null> Module GlobalExpression v22146 [latest-23063]2023-03-05T09:51:49.977Z <Predicate:null> Module Predicate v22345 [latest-23063]2023-03-05T09:51:49.987Z <AlertManager:null> Module AlertManager v22283 [latest-23063]2023-03-05T09:51:49.995Z <Rule:null> Module Rule v22345 [latest-23063]2023-03-05T09:51:50.004Z <GlobalReaction:null> Module GlobalReaction v22324 [latest-23063]2023-03-05T09:51:50.008Z <Engine:null> Module Engine v23001 [latest-23063]2023-03-05T09:51:50.019Z <httpapi:null> Module httpapi v23058 [latest-23063]2023-03-05T09:51:50.078Z <wsapi:null> Module wsapi v23053 [latest-23063]2023-03-05T09:51:50.080Z <app:NOTICE> Starting Structure... [latest-23063]2023-03-05T09:51:50.100Z <Structure:NOTICE> Structure#1 plugin ID influx disabled; skipping [latest-23063]2023-03-05T09:51:50.106Z <Structure:INFO> Structure#1 loading controller interface hass (HassController) [latest-23063]2023-03-05T09:51:50.210Z <HassController:null> Module HassController v23060 [latest-23063]2023-03-05T09:51:50.639Z <Structure:INFO> Structure#1 loading controller interface groups (DynamicGroupController) [latest-23063]2023-03-05T09:51:50.649Z <DynamicGroupController:null> Module DynamicGroupController v22313 [latest-23063]2023-03-05T09:51:50.659Z <Structure:INFO> Structure#1 loading controller interface reactor_system (SystemController) [latest-23063]2023-03-05T09:51:50.672Z <SystemController:null> Module SystemController v22306 [latest-23063]2023-03-05T09:51:50.680Z <Structure:INFO> Starting controller HassController#hass [latest-23063]2023-03-05T09:51:50.682Z <HassController:NOTICE> HassController#hass starting... [latest-23063]2023-03-05T09:51:50.691Z <Controller:INFO> HassController#hass loaded hass capabilities ver 22312 rev 2 format 1 [latest-23063]2023-03-05T09:51:50.715Z <Controller:INFO> HassController#hass loaded implementation data ver 23058 rev 1 format 1 [latest-23063]2023-03-05T09:51:50.715Z <Structure:INFO> Starting controller DynamicGroupController#groups [latest-23063]2023-03-05T09:51:50.728Z <Controller:NOTICE> Controller DynamicGroupController#groups is now online. [latest-23063]2023-03-05T09:51:50.728Z <Structure:INFO> Starting controller SystemController#reactor_system [latest-23063]2023-03-05T09:51:50.733Z <Controller:NOTICE> Controller SystemController#reactor_system is now online. [latest-23063]2023-03-05T09:51:50.877Z <HassController:INFO> HassController#hass device mapping data loaded; checking... [latest-23063]2023-03-05T09:51:50.881Z <HassController:WARN> HassController: implementation of capability input_select.selector does not provide attribute values [latest-23063]2023-03-05T09:51:50.884Z <HassController:NOTICE> HassController#hass connecting to ws://192.168.1.31:8123/api/websocket [latest-23063]2023-03-05T09:51:50.894Z <app:NOTICE> Starting HTTP server and API... [latest-23063]2023-03-05T09:51:50.901Z <httpapi:NOTICE> httpapi: starting HTTP service on port "8111" [latest-23063]2023-03-05T09:51:50.909Z <app:NOTICE> Starting Reaction Engine... [latest-23063]2023-03-05T09:51:50.910Z <Engine:INFO> Reaction Engine starting [latest-23063]2023-03-05T09:51:50.911Z <Engine:INFO> Checking rule sets... [latest-23063]2023-03-05T09:51:50.916Z <Engine:INFO> Checking rules... [latest-23063]2023-03-05T09:51:50.923Z <Engine:INFO> Data check complete; no corrections. [latest-23063]2023-03-05T09:51:50.938Z <Rule:NOTICE> rule-leu8xfe4 (rule-leu8xfe4 in First Rule Set) starting [latest-23063]2023-03-05T09:51:50.939Z <Engine:NOTICE> Reaction Engine running! [latest-23063]2023-03-05T09:51:50.939Z <Rule:NOTICE> rule-leu8xfe4 (rule-leu8xfe4 in First Rule Set) can't start -- rule is disabled [latest-23063]2023-03-05T09:51:50.952Z <httpapi:NOTICE> httpapi: listening [latest-23063]2023-03-05T09:51:50.981Z <app:NOTICE> Starting WSAPI... [latest-23063]2023-03-05T09:51:50.983Z <wsapi:NOTICE> wsapi: starting version 23053 [latest-23063]2023-03-05T09:51:51.080Z <Engine:INFO> [Engine]Engine#1 master timer tick, local time "3/5/2023 10:51:51 AM" (TZ offset 60 mins from UTC) [latest-23063]2023-03-05T09:51:51.119Z <HassController:NOTICE> HassController#hass connected, starting protocol [latest-23063]2023-03-05T09:51:51.127Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime [latest-23063]2023-03-05T09:51:51.145Z <HassController:INFO> HassController#hass successful authentication with ws://192.168.1.31:8123; fetching initial data... [latest-23063]2023-03-05T09:51:51.155Z <HassController:INFO> HassController#hass Hass reports version "2023.3.0b5" location Maison timezone Europe/Paris state RUNNING safe_mode false [latest-23063]2023-03-05T09:51:51.245Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_supervisor_update [latest-23063]2023-03-05T09:51:51.248Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_core_update [latest-23063]2023-03-05T09:51:51.249Z <HassController:NOTICE> HassController#hass no signature match for update.terminal_ssh_update [latest-23063]2023-03-05T09:51:51.250Z <HassController:NOTICE> HassController#hass no signature match for update.file_editor_update [latest-23063]2023-03-05T09:51:51.251Z <HassController:NOTICE> HassController#hass no signature match for update.samba_backup_update [latest-23063]2023-03-05T09:51:51.252Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_operating_system_update [latest-23063]2023-03-05T09:51:51.253Z <HassController:NOTICE> HassController#hass no signature match for sun.sun [latest-23063]2023-03-05T09:51:51.285Z <HassController:NOTICE> HassController#hass no signature match for calendar.calendrier [latest-23063]2023-03-05T09:51:51.413Z <HassController:NOTICE> HassController#hass no signature match for siren.piscine_siren [latest-23063]2023-03-05T09:51:51.419Z <HassController:NOTICE> HassController#hass no signature match for camera.portillon [latest-23063]2023-03-05T09:51:51.607Z <Controller:INFO> HassController#hass 0 dead entities older than 86400000s purged [latest-23063]2023-03-05T09:51:51.633Z <Controller:NOTICE> Controller HassController#hass is now online. [latest-23063]2023-03-05T09:51:51.634Z <DynamicGroupController:INFO> All controllers ready, setting up dynamic groups [latest-23063]2023-03-05T09:51:51.726Z <wsapi:INFO> wsapi: connection from ::ffff:192.168.1.42 [latest-23063]2023-03-05T09:51:55.510Z <wsapi:INFO> client "192.168.1.42#1" closed, code=1001, reason= [latest-23063]2023-03-05T09:51:55.815Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/lang [latest-23063]2023-03-05T09:51:55.843Z <wsapi:INFO> wsapi: connection from ::ffff:192.168.1.42 [latest-23063]2023-03-05T09:51:56.849Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime [latest-23063]2023-03-05T09:52:07.392Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime---

      Log Portainer:

      NODE_PATH /opt/reactor:/opt/reactor/node_modules [latest-23063]2023-03-05T08:55:17.734Z <app:null> Reactor build latest-23063-c464b685 starting on v16.15.1 [latest-23063]2023-03-05T08:55:17.736Z <app:null> Process ID 1 user/group 0/0; docker; platform linux/arm64 #1595 SMP PREEMPT Wed Oct 26 11:07:24 BST 2022; locale (undefined) [latest-23063]2023-03-05T08:55:17.737Z <app:null> Basedir /opt/reactor; data in /var/reactor/storage [latest-23063]2023-03-05T08:55:17.738Z <app:null> NODE_PATH=/opt/reactor:/opt/reactor/node_modules [latest-23063]2023-03-05T08:55:17.875Z <Structure:null> Module Structure v22323 [latest-23063]2023-03-05T08:55:17.879Z <Capabilities:null> Module Capabilities v22356 [latest-23063]2023-03-05T08:55:18.004Z <Plugin:null> Module Plugin v22300 [latest-23063]2023-03-05T08:55:18.023Z <TimerBroker:null> Module TimerBroker v22283 [latest-23063]2023-03-05T08:55:18.032Z <Entity:null> Module Entity v22353 [latest-23063]2023-03-05T08:55:18.042Z <Controller:null> Module Controller v23044 [latest-23063]2023-03-05T08:55:18.079Z <default:null> Module Ruleset v22293 [latest-23063]2023-03-05T08:55:18.080Z <default:null> Module Rulesets v22146 [latest-23063]2023-03-05T08:55:18.096Z <GlobalExpression:null> Module GlobalExpression v22146 [latest-23063]2023-03-05T08:55:18.129Z <Predicate:null> Module Predicate v22345 [latest-23063]2023-03-05T08:55:18.139Z <AlertManager:null> Module AlertManager v22283 [latest-23063]2023-03-05T08:55:18.146Z <Rule:null> Module Rule v22345 [latest-23063]2023-03-05T08:55:18.156Z <GlobalReaction:null> Module GlobalReaction v22324 [latest-23063]2023-03-05T08:55:18.159Z <Engine:null> Module Engine v23001 [latest-23063]2023-03-05T08:55:18.171Z <httpapi:null> Module httpapi v23058 [latest-23063]2023-03-05T08:55:18.232Z <wsapi:null> Module wsapi v23053 [latest-23063]2023-03-05T08:55:18.358Z <HassController:null> Module HassController v23060 [latest-23063]2023-03-05T08:55:18.780Z <DynamicGroupController:null> Module DynamicGroupController v22313 [latest-23063]2023-03-05T08:55:18.803Z <SystemController:null> Module SystemController v22306```
      Multi-System Reactor
    • Evaluating variables redux

      CatmanV2

      Sorry for another dumb question. Migrating from Vera Alexa to HASS Vera TTS. MSR is on bare metal, Debian Bullseye version 23049

      I can get TTS from MSR and basic TTS from MSR which is great!

      Trying to get some of the variables I used to use though is stumping me.

      In the original MSR, I'd use:

      It is now ${{OutingDays}} days until we go to ${{OutingName}}. , Sleep well!

      for example, and that worked fine (I've not bothered to list the variables as I know the worked)

      If I use

      { "message":"It is now${{OutingDays}} days until we go to ${{OutingName}}. , Sleep well!", "data":{"type":"announce", "method":"speak"}, "target":["media_player.everywhere"] }

      In the data field of the hass service system call it doesn't evaluate the variables (Not really surprised)

      So might someone take mercy on me and give me a clue?

      TIA

      C

      Multi-System Reactor
    • Virtual Device for Vacations

      therealdb

      I'm back from a vacation and it was the first winter one with MSR.

      I have a special vacation mode that's auto-setting after the house is in away mode for at least 18 hours - and that's mostly OK. In this mode, lights are turned on/off automatically, some things are off to preverse powers, etc. Thermostats are automatically set at 17C unless there's solar power. That's mostly OK, except when you have to deal with winters and clouds on the day back home.

      Long story short: back from vacation, we found the house at 17C - wife wasn't impressed.

      Back in the luup days I had a special override, that I forgot to port to MSR, that was basically like this in MSR (coded on the fly):

      32298706-86f7-451e-9700-2baf5d5a23b6-image.png

      So, I could tell my system when I'm on vacation and have a last day flag to re-set the house to normal behavior before I'm back. It was just two strings variable in a virtual binary sensor.

      I don't want to code this in global expressions, so I'm wondering if it's possible to accomplish this with a Virtual Device, but I'm failing to visualize the correct answer and I'm here for inspiration for what others are doing to tackle this.

      I don't want to create 4 separate devices (start date, end date, status, last day) in order to keep it easy and I want to be able to change the start/end date from the UI, to simplify things. Any hint is appreciated 🙂

      Multi-System Reactor
    • Critical Disk Space Warning

      T

      I updated to the latest version of Reactor this morning. I run reactor (successfully) on a Raspberry PI 4 4GB with SSD 64GB. I also run Home Assistant in Docker. After updating I noticed a disk space critical error warning!

      9f4e1ea1-977a-481b-9806-d3d43a4eff04-image.png

      I have tried purging the docker install (docker image prune -a)

      I have rebooted the Raspberry PI also, and the error messages keep coming.

      I have the following disk space:

      58742ed7-e10d-4572-b380-0abda64f90b4-image.png

      How do I free up space?

      Any help would be appreciated.

      Multi-System Reactor
    • Is it possible to use a single reaction for multiple entities as variables?

      T

      Good morning,
      I'm trying to recreate some notifications I received on my old Vera system based upon House mode. I migrated from Vera to Home Assistant about 6 months ago, and all the automation I have set up are working great, however, I'm noticing that there were things that were once simple in Vera that are more involved in Home Assistant.

      In House Modes in Vera, there was a screen where I could select all the devices I wanted to be armed in various house modes. I recreated those house modes in Home Assistant very early on, but what I'm not getting now is notifications for various sensors. For instance, if the system is in Away mode, and interior motion is detected, I would get a Vera push notification on my phone. I've been setting these up one by one using haas>system --> x_haas_system.call_service, then setting the notify device and the message, one by one, but it's repetitious and tedious. For a few devices, like motion sensors on my ground floor, it's not a big deal, but now I'm looking at all the windows in my home, which have sensors on them.

      So, enough of the background thesis. Simply put, is there a way to have a group of devices ( like 16 different window sensors ) as an entity, and when they are tripped, send out a notification and state which of those sensors was tripped, all in a single rule?

      If I have to copy and edit 16 different rules, I'll do that, but I'd prefer a more elegant way where there is one rule to send out the notifications that tells me what was opened.

      Thanks for all your advice/help in advance.

      I'm running MSR latest-23049-1fd87c91 and Home Assistant 2023.2.5, Supervisor 2023.01.1, Operating System 9.5,

      BTW, @toggledbits, I noticed on the About screen for MSR it still shows copyright from 2022. I know you've released versions this year.

      Reactor (Multi-hub) latest-23049-1fd87c91 © 2020-2022 Kedron Holdings LLC, All Rights Reserved; Patrick Rigney (toggledbits), Principal Engineer.

      Multi-System Reactor
    • [solved-ish] Reset Reaction doesn't allow multiple Conditions in Groups

      G

      I'd like the "None deferred" Reset Reaction group to have multiple Conditions. Is this not possible?

      Running latest version of MSR, 23049-1fd87c91

      c9f1bb6c-c477-45cc-beab-783d1ad4fe05-image.png

      Multi-System Reactor
    • [Solved] Hubitat Hub Information Driver v3 and probe device

      S

      I have upgraded my Hubitat Hub Information Driver to v3 and after the latest MSR update latest-23028 MSR is working ok. The problem is when MSR probes the device it appears to affect the polling in the new Hub Information Device and its data does not update the data fields in Hubitat. If I remove the Hub Information Device from Maker API so MSR can't see it, The Hub information driver updates the data as expected in Hubitat. I added the device back into Maker API the same problem returns in Hubitat. I have tried to have MSR probe a different device by adding a different probe device and probe action in the reactor.yaml per the documentation but it appears then it still uses the Hub Information Device as the probe device instead of the one specified in the reactor.yaml. See Logs below. Is this the intended behavior to always use the Hub Information Driver if found and not use the device in the reactor.yaml file? Any recommendations on how to get MSR and the v3 of the driver to work correctly or can you see what I am doing wrong?

      [latest-23028]2023-02-11T23:27:50.471Z <Controller:NOTICE> Controller HassController#hass is now online. [latest-23028]2023-02-11T23:27:50.471Z <Rule:INFO> Internet Check (rule-l44qss4f in Home) starting evaluation; because entity-changed System#reactor_system>system [latest-23028]2023-02-11T23:27:50.471Z <Rule:INFO> MSR Update Version Available (rule-labweim2 in Notify) starting evaluation; because entity-changed System#reactor_system>system [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> Internet Check (rule-l44qss4f in Home) trigger evaluation result is false (previously false) [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> Internet Check (rule-l44qss4f in Home) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> MSR Update Version Available (rule-labweim2 in Notify) trigger evaluation result is false (previously false) [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> MSR Update Version Available (rule-labweim2 in Notify) evaluated; trigger state unchanged (false); rule state remains RESET [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> Internet Check (rule-l44qss4f in Home) evaluation complete [latest-23028]2023-02-11T23:27:50.472Z <Rule:INFO> MSR Update Version Available (rule-labweim2 in Notify) evaluation complete [latest-23028]2023-02-11T23:27:50.673Z <HubitatController:INFO> HubitatController#hubitat Maker API responded with 91 devices [latest-23028]2023-02-11T23:27:50.766Z <HubitatController:INFO> HubitatController#hubitat found 'Hub Information Driver v3' device #"481"; using for probe/health checks. [latest-23028]2023-02-11T23:27:50.780Z <Controller:INFO> HubitatController#hubitat 0 dead entities older than 86400000s purged [latest-23028]2023-02-11T23:27:50.780Z <Rule:INFO> Roku Pause (rule-l3nlrzu9 in Home) starting evaluation; because entity-changed BinarySensor#hubitat>519 [latest-23028]2023-02-11T23:27:50.780Z <Rule:INFO> Stairs Light Low Light (rule-kulslls9 in Living Room) starting evaluation; because entity-changed BinarySensor#hubitat>519 [latest-23028]2023-02-11T23:27:50.780Z <Rule:INFO> Porch Motion Extended check (rule-l3kr45m8 in Porch) starting evaluation; because entity-changed BinarySensor#hubitat>519 [latest-23028]2023-02-11T23:27:50.780Z <Rule:INFO> Porch Light Manual On (rule-kmtxw155 in Porch) starting evaluation; because entity-changed BinarySensor#hubitat>519

      Snippet from the reactor.yaml:

      # action_pace: 100 # warn_unresponsive: true # probe_device: hubitat>132 (not needed if Hub Information app installed) probe_device: hubitat>2 # probe_action: x_hubitat_Configuration.configure (not needed if Hub Information app installed) probe_action: x_hubitat_Configuration.configure # probe_action: x_hubitat_Refresh.refresh

      Synology Docker latest-23028
      Hubitat v2.3.4.139
      Hub Information Driver v3

      Multi-System Reactor
    For those who registered but didn't received the confirmation email, please send an email to support@smarthome.community with the email you used

    Variables for fun and profit

    Multi-System Reactor
    3
    19
    134
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • CatmanV2
      CatmanV2 last edited by

      Well the use of expressions in my Idiot Question over there has opened many new and exciting doors which I am itching to run through. This one has slammed in myu face 😞

      So in reactor we have an expression:
      getstate( 46, "urn:upnp-org:serviceId:VClock1", "AlarmTime" )
      which returns
      Last result: "05:15:00"
      Then we convert this to time one hour earlier:
      time(AlarmTime) - 3600
      which returns
      Last result: 1658373300

      Cool!

      In MSR:
      getstate is not supported
      getEntity("vera>AlarmClock").attributes.x_vera_svc_upnp_org_VClock1.AlarmTime
      Returns:
      Last value: (string) "05:15:00"
      Marvellous!
      time (AlarmTime)
      Returns
      Last value: (null) null

      Boo! Hiss!

      OK seriously, is there a reference I've missed or somewhere I can look at this stuff. time() in Lua returns the epoch time which is fab, but what's my equivalent to the time usage in Reactor?

      TIA
      C

      The Ex-Vera abuser know as CatmanV2.....

      1 Reply Last reply Reply Quote 0
      • CatmanV2
        CatmanV2 last edited by CatmanV2

        Quick update, from reading the manual (doh)
        time ([AlarmTime])
        Returns an epoch time (yay) (or at least I think it does. See below
        Unfortunately where in Reactor
        time(AlarmTime) returns the correct epoch time for my alarm clock
        time ([AlarmTime]) in MSR returns epoch time that is equivalent to:

        Saturday, 1 January 2022 00:00:00

        Which makes not a huge load of sense to me no matter which way I squint as it appears to be 7 months, 4 hours and 15 minutes out.

        I throw myself on your mercy

        C

        The Ex-Vera abuser know as CatmanV2.....

        Crille 1 Reply Last reply Reply Quote 0
        • Crille
          Crille @CatmanV2 last edited by

          @catmanv2 There might be better ways of doing it but this would result in an epoch time of current date and the time for AlarmTime.

          do
          hms = split(getEntity("vera>AlarmClock").attributes.x_vera_svc_upnp_org_VClock1.AlarmTime, ':'),
          t = dateparts(time()),
          t.hour = hms[0],
          t.minute = hms[1],
          t.second = hms[2],
          time(t)
          done
          
          1 Reply Last reply Reply Quote 1
          • CatmanV2
            CatmanV2 last edited by

            Thanks for that. Very much appreciated, but it won't work in an expression window I think?

            I really confused as to why time returns this odd epoch time

            C

            The Ex-Vera abuser know as CatmanV2.....

            Crille 1 Reply Last reply Reply Quote 0
            • Crille
              Crille @CatmanV2 last edited by

              I'm no expert but maybe the string doesn't comply with MSR iso-date-string.
              What error do you get in the expression?

              1 Reply Last reply Reply Quote 1
              • CatmanV2
                CatmanV2 last edited by CatmanV2

                No error at all, it just returns the 'wrong' epoch time. Behaving differently between Reactor and MSR (I would assume by design)
                <edit> It appears part of this might be caused but Reactor time() conversion returning epoch time in seconds. MSR time() is (or appears to be) returning epoch time in milli seconds.

                The use case is as follow:
                Set the alarm time (which varies, of course depending on weekends, holidays etc)
                The alarm is triggered and turns on the Volumio player in the bedroom, gently increases the volume and wakes us up (ha!)

                Subtract one hour from the alarm time, and that's when we want the heating to come on from its overnight low.

                Of course I could set the alarm one hour earlier, use that to turn on the heating then wait an hour to trigger the Volumio, but that feels inelegant as well as prone to bad choices of alarm time.

                If anyone has a suggestion of how the first case might be accomplished, it would be lovely.

                Cheers

                C

                The Ex-Vera abuser know as CatmanV2.....

                Crille 1 Reply Last reply Reply Quote 0
                • Crille
                  Crille @CatmanV2 last edited by Crille

                  Do you need to set the heating in epoch time?
                  If so and Reactor for Vera is in seconds you could just convert from milliseconds with

                  substr(time(t), 0, 10)
                  

                  and substract 1 hour by changing to this line instead

                  t.hour = hms[0] - 1,
                  

                  in the above example.

                  CatmanV2 1 Reply Last reply Reply Quote 1
                  • CatmanV2
                    CatmanV2 @Crille last edited by CatmanV2

                    @crille Really appreciated

                    No I don't need to set the heating time, there's a rule that compares current time to the calculated time for heating on. Given that
                    time(0) returns epoch, that seemed a sensible way of doing it

                    Unfortunately truncating the epoch in ms simply knocks the milliseconds off so instead of getting Saturday, 1 January 2022 00:00:00.000 you get Saturday, 1 January 2022 00:00:00

                    It should be
                    Thursday, 21 July 2022 03:15:00
                    or
                    Thursday, 21 July 2022 03:15:00.000

                    Even using strftime returns Jan 1

                    Very very odd. Really appreciate your continued efforts though!

                    C

                    The Ex-Vera abuser know as CatmanV2.....

                    Crille 1 Reply Last reply Reply Quote 0
                    • Crille
                      Crille @CatmanV2 last edited by

                      I'm a little lost and don't know what you actually want to achieve and what arguments you are giving time().
                      We might get different results as time() operates in the timezone set for the runtime.
                      I'll leave you with my tests and take a fresh look in the morning as it's getting late here. (sorry for Swedish in the screenshot as strftime() is locale-aware.)

                      AlarmTime.PNG

                      1 Reply Last reply Reply Quote 1
                      • CatmanV2
                        CatmanV2 last edited by CatmanV2

                        Ahh this appears to work, thanks so much!

                        I need to do some more testing, specifically around the testing of AlarmTimeSub1 vs current time but I very much appreciate your patience guiding this muppet!

                        <edit> So yes AlarmTimeSub1 evaluates perfectly. Now I need to compare that to actual time (if the actual time is later than AlarmTimeSub1, then I want the evaluation to be 'true')
                        time() >= AlarmSubTime1

                        Returns false.

                        C

                        The Ex-Vera abuser know as CatmanV2.....

                        1 Reply Last reply Reply Quote 0
                        • CatmanV2
                          CatmanV2 last edited by CatmanV2

                          OK fixed it. Thanks, too early to be trying this stuff 🙂

                          strftime("%T", time()) >= AlarmSubTime1

                          Evaluates as true so that's great 🙂

                          C

                          The Ex-Vera abuser know as CatmanV2.....

                          1 Reply Last reply Reply Quote 1
                          • toggledbits
                            toggledbits last edited by

                            FYI, @Crille has provided a correct example for computing an offset time to get an epoch (numeric) time to use for comparisons. The string comparison performed by strftime("%T", time()) >= AlarmSubTime1 is really poor programming style and should not be used; numeric comparisons are better here. Unfortunately, the responses don't give adequate detail as to what "wrong" answer is produced by @Crille 's solution, so I can't comment other than the critique.

                            Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                            1 Reply Last reply Reply Quote 1
                            • CatmanV2
                              CatmanV2 last edited by CatmanV2

                              Thanks. I have no programming style so happy to be educated 🙂

                              <types long reply to explain the 'issue'>
                              <while typing resolves the issue>
                              <deletes explanation>

                              is time() >= HeatTime better style?

                              <edit>
                              I guess I'm still curious as to why
                              time([AlarmTime]) in MSR and time(AlarmTime) in reactor return a different stamp (apart from the ms vs s part that is)

                              Thanks again for all you do

                              C

                              The Ex-Vera abuser know as CatmanV2.....

                              toggledbits 1 Reply Last reply Reply Quote 0
                              • toggledbits
                                toggledbits @CatmanV2 last edited by toggledbits

                                @catmanv2 said in Variables for fun and profit:

                                is time() >= HeatTime better style?

                                Yes.

                                I guess I'm still curious as to why
                                time([AlarmTime]) in MSR and time(AlarmTime) in reactor return a different stamp (apart from the ms vs s part that is)

                                You haven't given any examples of this. I don't believe it to be true (except, as noted, for millisecond precision in Multi-Hub Reactor). My guess is you are not actually asking about the return values, but about why the functions take different arguments. The reason is that the expression language in Multi-Hub Reactor is entirely new, and while there is some overlap between them, I would argue that the newer form is vastly superior and corrects many errors (read: decisions I made that I later regretted) in the Lua-based form. Another reason is that Multi-Hub Reactor is not Lua-based, so I did not feel the need to be Lua-compatible, whereas Reactor for Vera, being a Lua plugin for a Lua system, is meant to capitalize on existing user experience with Lua on that now-defunct (Vera) platform.

                                Also, if AlarmTime contains the string 12:34:56, the using time([AlarmTime]) in either Multi-Hub or Vera Reactor would be passing incorrect arguments to the function. If you want to pass a string, you do so without [] surrounding. If you include the [], you are creating an array containing a string, which is nonsensical (to the function -- it sees an error). The documentation (for Multi-Hub) states that the function takes an optional single string argument, or up to six optional numeric arguments (representing in order given (year, month, day, hour, minute, second), or an optional dateparts-form object. The [] you see in the documentation is from an old-but-still-widely-used BNF form to indicate an optional argument, it is not meant to be literally included in your expression. So the following would be valid calls to time:

                                1. time() with no arguments (because all arguments are optional)
                                2. time( "2022-07-22T08:53:23+02:00" ) -- an ISO 8601 date string with TZ
                                3. time( 2022, 7, 22 ) -- produces midnight on 2022-Jul-22 in the host time zone (three optional arguments not given -- hour, minute, second)
                                4. time( 2022, 7, 22, 8, 10, 0 ) -- produces 8:10am on 22-Jul-2022 in the host time zone
                                5. and the dateparts() form has already been given in examples above by @Crille

                                Note that the string passed must be in ISO 8601 form, so a simple "12:34:56" time alone would not be parsable and produce an invalid result.

                                Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                                CatmanV2 1 Reply Last reply Reply Quote 0
                                • CatmanV2
                                  CatmanV2 @toggledbits last edited by

                                  @toggledbits OK I'll try to give an example (I'm sure / hopeful you can explain)

                                  In my Reactor (and I'm pretty sure you set this up for me a couple of years back!) I have:
                                  getstate( 46, "urn:upnp-org:serviceId:VClock1", "AlarmTime" )
                                  Underneath is stated: Last result: "06:00:00"

                                  Then we have
                                  time(AlarmTime) - 3600
                                  Underneath: Last result: 1658462400

                                  Screenshot 2022-07-22 at 11.42.38.png

                                  In MSR we have:
                                  getEntity( "vera>Alarm Clock" ).attributes.x_vera_svc_upnp_org_VClock1.AlarmTime
                                  Underneath: Last value: (string) "06:00:00"

                                  If we then do
                                  time(AlarmTime) - 3600000 the result printed is
                                  Last value: (null) null

                                  Screenshot 2022-07-22 at 11.43.35.png

                                  time([AlarmTime]) - 3600000
                                  Returns: Last value: (number) 1640995200000

                                  Screenshot 2022-07-22 at 11.44.11.png

                                  Please note I changed the HeatTime in reactor to HeatTimeMSR in MSR just to demonstrate the 'difference' in output.

                                  Clearly I'm missing something fundamental and obvious!

                                  Cheers

                                  C

                                  The Ex-Vera abuser know as CatmanV2.....

                                  toggledbits 1 Reply Last reply Reply Quote 0
                                  • toggledbits
                                    toggledbits @CatmanV2 last edited by toggledbits

                                    @catmanv2 said in Variables for fun and profit:

                                    If we then do
                                    time(AlarmTime) - 3600000 the result printed is
                                    Last value: (null) null

                                    This is expected because AlarmTime contains only 06:00:00, which is not an ISO 8601-compatible string.

                                    time([AlarmTime]) - 3600000
                                    Returns: Last value: (number) 1640995200000

                                    Also expected, as I said above, because the [] surrounding AlarmTime convert it to an array, which is a form of object, so time() is thinking its a dateparts()-compatible object and using what's available from it (which in fact is nothing at all, i.e. the "it's nonsensical" reference in that comment) to compute the time.

                                    Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                                    1 Reply Last reply Reply Quote 1
                                    • CatmanV2
                                      CatmanV2 last edited by CatmanV2

                                      So fundamentally Reactor's time and MSR's time are just different and behave differently?

                                      <edit>
                                      Or getstate and getEntity are returning something different from each other, I guess.

                                      Thanks for the clarity there, and the patience 🙂

                                      C

                                      The Ex-Vera abuser know as CatmanV2.....

                                      1 Reply Last reply Reply Quote 0
                                      • toggledbits
                                        toggledbits last edited by

                                        Many of the functions behave differently, and this is intentional. The functions of Multi-Hub Reactor are (in my view) an improved evolution of any same-named functions in Reactor for Vera. Reading the documentation is key to success.

                                        I'm working right now (back at my desk, yay!) at expanding the parsing capabilities of time() to make your particular use case a bit easier.

                                        Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                                        CatmanV2 1 Reply Last reply Reply Quote 1
                                        • CatmanV2
                                          CatmanV2 @toggledbits last edited by CatmanV2

                                          @toggledbits that's super. Thanks again for all your help!

                                          C

                                          The Ex-Vera abuser know as CatmanV2.....

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Welcome. If you’d like to participate in the discussion, rather than just read, then you can join the forum. As a member, you can interact with others here to share your experience and ask the questions you need answered.

                                          Powered by NodeBB | Contributors
                                          Hosted freely by PointPub Media Communications Inc. | Contact us