Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Unsolved
Collapse
Discussion Forum to share and further the development of home control and automation, independent of platforms.
toggledbitsT

toggledbits

@toggledbits
Bail out of failed reaction?
T
Topic thumbnail image
Multi-System Reactor
Arming Envisalink panel from MSR
T
Topic thumbnail image
Multi-System Reactor
[Solved] DynamicGroupController updating members issue
CrilleC
Edit: Solved in latest-26221. Bare-metal latest-26193 I have this group: "OKforLarm": name: OK för Larm select: - include_controller: vera - include_capability: door_sensor filter_expression: entity.attributes.door_sensor.state It contains the entities I expect but behaves a bit odd. When I open vera>device_10097 the entity attribute door_sensor.state changes to true but it won't show up as member in the group, when I also open vera>device_10095 they both shows as members and when I close vera>device_10095 it disappear from the group but when I close vera>device_10097 it lingers in the group until I restart Reactor.
Multi-System Reactor
Reactor (Multi-System/Multi-Hub) Announcements
toggledbitsT
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
DynamicGroupController and attributes
therealdbT
Hey @toggledbits I'm back to trying to optimize a couple of things based on dynamic group. First of all, I think I found a typo in the doc: primary_attribute: "binary_sensor.state" primary_attribute_value: | d = false; each id in members: d = getEntity(id)?.attributes?.power_switch?.state or d, d I think the correct code snippet is d = false, All that said, my use case for dynamic groups is to group 3 different climate devices, so I could easily command them at the same time. Commands are good, but sometimes I want to check if any of the devices are on, and that's easily done with a similar snippet as the one you have in the docs. But this is limited to the primary attribute, while I want to have any of the attributes in the group to be driven by a similar logic (while all are null in the group). ie, access hvac_control.mode and see if any of the unit is set to cool, or heat. Is that possible, without re-defining an expression in each of my rules? Thanks!
Multi-System Reactor
Upgrade Issues
T
Topic thumbnail image
Multi-System Reactor
[SOLVED] Conflicting Set Reaction Groups Appear to Fire Simultaneously in Single Rule Evaluation
G
Topic thumbnail image
Multi-System Reactor
[SOLVED] Question regarding "in" vs "contains" vs contents of the string
G
Topic thumbnail image
Multi-System Reactor
openLuup console disappeared - 500 - Internal Server Error
A
Love openLuup - it just keeps working perfectly. I started looking at trying to add a gen4 Shelly device to the Shelly plugin via L_ShellyBridge.lua. The plugin is a little uncooked (no rudeness intended), so a bit of a rabbit hole for me. All of a sudden no console pages available in either Firefox or Chrome. AltUI works perfectly and all the log files indicate no errors. openLuup still running everything works as it should - just no console pages. I possibly screwed something up but any recently changes files show no problems. The original/ backup of L_ShellyBridge.lua was reinstated but still no console. Bit stumped on this one. Not sure how to debug. Any ideas?
Plugins
Logon screen timeout
G
Noticing since 170 that the lock screen doesn't switch to the logon prompt but, rather, stays on the active UI until such time as you go to click something within it. Then it jumps to the login screen. Brave browser Brave 1.92.139 (Official Build) (arm64) Chromium: 150.0.7871.114
Multi-System Reactor
[MSR] Copy&past of actions and/or drag&drop between set/reset
therealdbT
Hey @toggledbits One thing that bothers me while doing work on new systems/new features, is that I cannot copy&paste actions, and I cannot drag&drop between set and resets. #1 is for when I want to copy an action between different rules opened in two separate browser windows, while #2 is when I just need to flip a bunch of actions in the reset, or move some logic back and forth. Both will be appreciated, but I understand the technical challenges. Thanks!
Multi-System Reactor
Upgrade advice - upgrade from aarch64 to ARM64 image
T
I'm currently on version 26011. I understand that the aarch64 image is no longer supported. So, I therefore need to update to the ARM64 image. Can anyone possibly suggest how I update my docker compose.yaml file (see below). Ideally I'd like to keep my existing reactions etc. rather than start from scratch. # Multi-System Reactor template docker-compose.yml (version 22160) # # Change the lines indicated by "DO"... # services: reactor: container_name: reactor environment: # DO change the TZ: line to set your local time zone. # See valid TZ list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones TZ: GB # # DO NOT change this path. Your directory location is in "source" below. REACTOR_DATA_PREFIX: /var/reactor # DO change the image below to the one you are using (e.g. armv7l or aarch64 for RPi 4) image: toggledbits/reactor:latest-aarch64 restart: "always" expose: - 8111 ports: - 8111:8111 volumes: # DO change the /home/username/reactor below to the directory you created for # your local data; DO NOT change the /var/reactor part - /home/pi/docker/reactor:/var/reactor - /etc/localtime:/etc/localtime:ro tmpfs: /tmp
Multi-System Reactor
Alexa for MSR, any interest?
MikeReadingtonM
Topic thumbnail image
Multi-System Reactor
Ezlo Paid Subscription for Vera Cloud Services
toggledbitsT
It appears that Ezlo is going to new levels of paid subscription for cloud services supporting Vera hubs. I have to congratulate them. It will soon be 8 years since Ezlo acquired Vera, and despite their purported financial and "intellectual" capital, they have to date not produced a viable full replacement for Vera. Now they are going to charge extra for services for a platform that they stopped updating years ago. If you know anyone who hasn't yet fully moved on from Captain Ahab's White Whale Chase, please remind them that my Decouple project is still up on Github to decouple a Vera Plus/Secure/Edge from Vera/Ezlo's cloud services. Veras have been said to misbehave when they can't reach the mother ship. I have also written my first new Vera plugin in... six years? more?... the AlertPushover project will send Vera hub alerts to Pushover, so you can still get messages generated by your Vera hub without paying for Ezlo's cloud service. It's crude but functional (i.e. better than nothing/worth every penny paid). These two projects won't replace the functionality of their cloud service and app for those who need those things. But any that don't, this may help bridge the gap. Hopefully these stragglers who have waited so long and been disappointed so often will get the idea that it's time to move on.
General Discussion
[RESOLVED] Telegram notification broke with latest update
3
Topic thumbnail image
Multi-System Reactor
[RESOLVED] Phantom device, “INFO” appears
wmarcolinW
Topic thumbnail image
Multi-System Reactor
[RESOLVED] Mode Status NULL
wmarcolinW
Topic thumbnail image
Multi-System Reactor
[RESOLVED] HTTP query failing after version 26177
wmarcolinW
Topic thumbnail image
Multi-System Reactor
Question about the find function
wmarcolinW
Topic thumbnail image
Multi-System Reactor
[Answered] OK to remove old json files?
3
Topic thumbnail image
Multi-System Reactor
About
Posts
3.0k
Topics
49
Shares
0
Groups
1
Followers
18
Following
0

Posts

Recent Best Controversial

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

    Reactor build 26221

    SECURITY! - BARE-METAL USERS: It is always recommended that you update package dependencies whenever installing Reactor updates. After unpacking the Reactor archive, go into the reactor directory (where app.js lives) and run npm run deps to update package dependencies. This is particularly important to address security updates for many packages.

    • DynamicGroupController: Fix an issue where a filter_expression-controlled group would miss an attribute update.
    • Engine/Reactions: The log level for the result of Group and While action predicates (i.e. the conditions) has been raised to INFO (4) from DEBUG0 (5). This may help users more easily identify logic bugs in their actions without the need to change the Engine log level (the Engine is dauntingly verbose even at DEBUG0 level).
    • HassController: Bless HA to 2026.7.4
    Multi-System Reactor announcements

  • [Solved] DynamicGroupController updating members issue
    toggledbitsT toggledbits

    Yes, I found this as well. I have a fix that I've been running/testing, not yet into a build. I will get it done before the end of the weekend.

    Multi-System Reactor

  • DynamicGroupController and attributes
    toggledbitsT toggledbits

    Yes!

    Question on your feature request... generally, a capability has to be defined on an entity to assign an attribute within that capability. A Group is a subclass of Entity that normally has a limited set of capabilities and attributes that don't vary from group to group (i.e. the sys_group capability is pretty much it).

    I can see adding attributes to a Group two ways:

    1. Like with actions, the capabilities the Group allows follows the superset of capabilities of the Group's members, so the group would inherit those capabilities and you would be allowed to set attributes (via expressions in config) for them, or...
    2. In config, you set what capability you want to assign and set attributes for, and then supply the logic (expression) to drive the attribute. In this scenario, the only additional capabilities that are assigned to the Group are those you explicitly name in config.

    Thoughts?

    Multi-System Reactor

  • DynamicGroupController and attributes
    toggledbitsT toggledbits

    @therealdb said in DynamicGroupController and attributes:

    I think the correct code snippet is d = false,

    The grammar allows semicolon (;) to end a subexpression, so in that context, the two should be interchangeable.

    @therealdb said in DynamicGroupController and attributes:

    But this is limited to the primary attribute, while I want to have any of the attributes in the group to be driven by a similar logic

    I understand. Nice. I will look at this in greater depth over the weekend.

    Multi-System Reactor

  • Arming Envisalink panel from MSR
    toggledbitsT toggledbits

    OK. EnvisalinkController won't be of much help there, since Honeywell is all I have to test with (and therefore all it currently supports). If at some point you think you may want to try it, let me know.

    Multi-System Reactor

  • Arming Envisalink panel from MSR
    toggledbitsT toggledbits

    Gotta love AI... this thread sent me digging on the unsolved problem, and I just decided to ask Grok why I'm getting arming CIDs but not disarms... on my panel, opening reports are off by default. Thirty seconds in programming mode to enable opening reports and there they are! So now, I have parity... correct user IDs when arming and disarming (using EnvisalinkController).

    Maybe check your panel configuration and ensure both arming (closing) and disarming (opening) reports are enabled?

    Multi-System Reactor

  • Arming Envisalink panel from MSR
    toggledbitsT toggledbits

    I've written an EnvisalinkController for Reactor that I use, rather than HA's integration, but result is somewhat consistent in that it's unexpected/inconsistent (I'm on an Ademco/Honeywell panel). For me, arming produces the right user ID in a partition CID event and email from EyezOn. But alas, state isn't consistent with EVL3/4, and there does not seem to be a corresponding disarm CID event, and the overall keypad message/status event (which must be used to detect disarming) doesn't seem to report the user slot that disarmed the alarm (nor do I get an email from EyezOn that the alarm was disarmed, which given no CID event, makes sense). A bit different from your results, but frustrating nonetheless.

    Multi-System Reactor

  • [SOLVED] Conflicting Set Reaction Groups Appear to Fire Simultaneously in Single Rule Evaluation
    toggledbitsT toggledbits

    It's all good! Many, many, many has been the time where an extra pair of eyes helped me. That's why I'm thrilled to have my son working on this project with me now. I'm glad it was something easy (no patch and build needed). Onward!!!

    Multi-System Reactor

  • [SOLVED] Conflicting Set Reaction Groups Appear to Fire Simultaneously in Single Rule Evaluation
    toggledbitsT toggledbits

    @gwp1 OK, so just to be clear on what I think I see, when the lights are ON as the log shows (so that the rule Master Bath Lights is SET aka true in Rule State conditions), and based on the other rule states as shown in the groups you posted above...

    This reaction group is true:

    bd941b36-9461-4612-a56f-60085dd9c2fa-image.png

    And this reaction group is also true at the same time:

    a992b3a0-4252-4b16-a544-674417ea7444-image.png

    That seems like your problem. Shouldn't that circled OR be an AND? Because in that interior group, any one of those conditions being true (the Primary Defer Controller condition specifically) will make the interior group true, and therefore the parent OR group true.

    Multi-System Reactor

  • [SOLVED] Conflicting Set Reaction Groups Appear to Fire Simultaneously in Single Rule Evaluation
    toggledbitsT toggledbits

    In Default/Open - No Deferral, did you mean to have an "OR" in the second interior group? That looks a bit suspicious.

    Multi-System Reactor

  • [SOLVED] Question regarding "in" vs "contains" vs contents of the string
    toggledbitsT toggledbits

    Reactor tries to be conservative about state when you edit a rule. That's to avoid whipping devices around every time you hit "Save". If you've been editing a rule and it stops behaving consistent with its intent, try the Reset Rule button first... it will wipe the entire state of the rule and force a full re-evaluation. Faster and less dramatic than restarting Reactor entirely.

    Multi-System Reactor

  • [SOLVED] Conflicting Set Reaction Groups Appear to Fire Simultaneously in Single Rule Evaluation
    toggledbitsT toggledbits

    The first thing to do here is to look for a conflict, and when I look at your log entries, what stands out is 00:06:15 where something before the start of the snippet is causing the lights to be turned on. As you've shown the state of the reaction groups, that would make the Privacy Close and Privacy tilt groups both true at the same time.

    Reactions are run asynchronously from the rule evaluation. The rule evaluation does not capture and "lock in" all of the states of things involved in the reactions. The reactions can change the state of things as they run, and those changes may affect how later conditional reaction groups are interpreted — the evaluation of reaction group conditions happens at the moment they are encountered in execution. If it's your view that everything is frozen in time at the moment the Rule evaluation starts, that's incorrect.

    Multi-System Reactor

  • [SOLVED] Question regarding "in" vs "contains" vs contents of the string
    toggledbitsT toggledbits

    in matches the listed (comma-separated) words exactly. partlycloudy should not match cloudy by itself. My testing bears this out. You are not showing the actual condition state, which would be preferable here (i.e. open the Rule's detail view in the Rules list). If you've been editing the rule, you may need to reset it to flush old state.

    0813ead1-bc58-4e6b-8015-05976a5d54ab-image.png

    Multi-System Reactor

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

    Reactor build 26214

    ALL USERS: This build is strictly to address a problem for bare-metal installs only running on nodejs v22.0 through v22.11. Use node -v to show your version, or look at the startup messages in reactor.log. If your nodejs is v22.12.0 or higher, or you are running a docker image, you do not need to update to this build.

    • Workaround for module load problem in nodejs versions from 22.0 through 22.11.

    Only a bare-metal package is distributed for this build. The latest docker images are still build 26193.

    Multi-System Reactor announcements

  • Upgrade Issues
    toggledbitsT toggledbits

    I was able to find a workaround, so build 26214, which will be posted shortly for bare-metal only, should address the issue without any changes to your system (other than the Reactor package).

    Multi-System Reactor

  • Upgrade Issues
    toggledbitsT toggledbits

    Did you update packages?

    Edit: nodejs 22.2.0 is the problem. You should update nodejs to the latest LTS, or at least to nodejs v22.12.0. There is also a quicker workaround that may work: add --experimental-require-module to the nodejs command line that starts Reactor.

    Multi-System Reactor

  • Logon screen timeout
    toggledbitsT toggledbits

    OK. I think I found it. Patched and respun the 26193 build, so pull that again and let's see if it behaves better.

    Multi-System Reactor

  • Logon screen timeout
    toggledbitsT toggledbits

    Did you check the log files? Whenever something isn't working right, that should be the first place you look.

    Multi-System Reactor

  • [MSR] Copy&past of actions and/or drag&drop between set/reset
    toggledbitsT toggledbits

    Thanks for the inspiration!

    Multi-System Reactor

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

    Reactor build 26193

    BARE-METAL USERS: nodejs v24.17 had a regression/injection that breaks HTTP connections, which has broad negative effect in Reactor. This version specifically is excluded from support, and users on that version are advised to upgrade to v24.18 (or higher).

    BREAKING CHANGE: I'm guessing this will affect very few people, maybe none: the include_attributes selector for DynamicGroupController now requires that all listed attributes match when tested against an entity. Previously, if any listed attribute matched, the entity would be added to group eligibility. This forced users to use a filter expression if all attributes had to be matched together, which carries a greater performance impact and has other side-effects. The old behavior can be obtained by separating each attribute under its own include_attributes selector individually.

    • DynamicGroupController: the include_attributes selector now requires all listed attributes to match, rather than any of the listed attributes, for the entity to be selected. See note above.
    • A new lexp-cli.js utility in the tools subdirectory allows users to experiment with lexp expressions outside of Reactor. This tool doesn't have Reactor context, so functions like getEntity() and isRuleSet() are not available; nor are Reactor's global variables. It is strictly an environment to help with familiarization.
    • Reaction Editor: when editing the Set or Reset reaction of a Rule, the Copy From... button will now list the contra-reaction at the top of the list, making it easier to find and copy the reaction within the current Rule.
    • UI: The condition and action editors now support a right-click context menu on conditions and actions. The menu provides copy-paste of individual conditions and actions. Other menu actions are added where they make sense. Thank @therealdb for this power-user feature!
    • UI: On dialogs, the Enter key will not perform any action if a modal dialog contains two or more buttons (i.e. where the meaning of Enter is ambiguous).
    • nodejs version 26 is now explicitly supported, with v26.4.0 being the current version used for development (testing still occurs on v22 and v24).
    • HassController: Bless HA to 2026.7.2
    Multi-System Reactor announcements
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Unsolved