@toggledbits I understand that you do not perform testing on Mac computers but thought I'd share the following with you in case something can be done.
I started seeing these errors with version 24302. I thought that upgrading to 24343 would have fixed the issue but unfortunately not. I either have to close the browser or clear the cache for the errors to stop popping-up but they slowly come back.
I see these errors on the following browsers:
Safari 16.6.1 on macOS Big Sur Safari 18.1.1 on MacOS Sonoma DuckDuckGo 1.118.0 on macOS Big Sur and Sonoma Firefox 133.0.3 on macOS Big Sur Chrome 131.0.6778 on macOS Big SurHere are the errors
Safari while creating/updating an expression
@http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:543:91 makeExprMenu@http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:537:28 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:92:64 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:89:68 each@http://192.168.0.13:8111/node_modules/jquery/dist/jquery.min.js:2:3133 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:89:35 @http://192.168.0.13:8111/client/MessageBus.js:98:44 forEach@[native code] @http://192.168.0.13:8111/client/MessageBus.js:95:54 @http://192.168.0.13:8111/client/MessageBus.js:106:44 @http://192.168.0.13:8111/client/Observable.js:78:28 signalModified@http://192.168.0.13:8111/reactor/en-ca/lib/js/ee.js:146:21 signalModified@http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:40:29 reindexExpressions@http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:71:32 @http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:608:40 dispatch@http://192.168.0.13:8111/node_modules/jquery/dist/jquery.min.js:2:40040DuckDuckGo while clicking on status
http://192.168.0.13:8111/reactor/en-ca/lib/js/reactor-ui-status.js:789:44 asyncFunctionResume@[native code] saveGridLayout@[native code] dispatchEvent@[native code] _triggerEvent@http://192.168.0.13:8111/node_modules/gridstack/dist/gridstack.js:1401:30 _triggerAddEvent@http://192.168.0.13:8111/node_modules/gridstack/dist/gridstack.js:1383:31 makeWidget@http://192.168.0.13:8111/node_modules/gridstack/dist/gridstack.js:968:30 addWidget@http://192.168.0.13:8111/node_modules/gridstack/dist/gridstack.js:388:24 placeWidgetAdder@http://192.168.0.13:8111/reactor/en-ca/lib/js/reactor-ui-status.js:183:44Firefox while updating a rule
@http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:543:91 makeExprMenu@http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:537:28 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:92:64 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:89:68 each@http://192.168.0.13:8111/node_modules/jquery/dist/jquery.min.js:2:3133 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reaction-editor.js:89:35 @http://192.168.0.13:8111/client/MessageBus.js:98:44 forEach@[native code] @http://192.168.0.13:8111/client/MessageBus.js:95:54 @http://192.168.0.13:8111/client/MessageBus.js:106:44 @http://192.168.0.13:8111/client/Observable.js:78:28 notifySaved@http://192.168.0.13:8111/reactor/en-ca/lib/js/ee.js:82:21 notifySaved@http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:47:26 @http://192.168.0.13:8111/reactor/en-ca/lib/js/reactor-ui-rules.js:1460:39 forEach@[native code] @http://192.168.0.13:8111/reactor/en-ca/lib/js/reactor-ui-rules.js:1459:58Chrome while creating/updating an expression
TypeError: Cannot read properties of undefined (reading 'getEditor') at RuleEditor.makeExprMenu (http://192.168.0.13:8111/reactor/en-ca/lib/js/rule-editor.js:1788:86) at Object.handler (http://192.168.0.13:8111/reactor/en-ca/lib/js/rule-editor.js:2174:54) at http://192.168.0.13:8111/client/MessageBus.js:98:44 at Array.forEach (<anonymous>) at MessageBus._sendToBus (http://192.168.0.13:8111/client/MessageBus.js:95:54) at MessageBus.send (http://192.168.0.13:8111/client/MessageBus.js:106:44) at ExpressionEditor.publish (http://192.168.0.13:8111/client/Observable.js:78:28) at ExpressionEditor.signalModified (http://192.168.0.13:8111/reactor/en-ca/lib/js/ee.js:146:14) at ExpressionEditor.signalModified (http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:40:15) at ExpressionEditor.reindexExpressions (http://192.168.0.13:8111/reactor/en-ca/lib/js/expression-editor.js:71:18) ``Thanks to @toggledbits for adding a custom CSS. I've started doing a darker Reactor style.
Here's the file: https://gist.github.com/dbochicchio/825098ac13b7f8cac22012eae37ff7ce
A couple of things are still too bright and I'll eventually catch-up. Just place it under your /config directory, naming the file as customstyles.css. Hard refresh your browser.
Hi
Having to rebuild my Linux Debian box as the SSD failed. And I have forgotten exactly what I did the first time to get it all setup.
I have Debian 12 up and running on the new SSD, I only have console no Desktop GUI.
I am trying to do the bare metal install for MSR. However I am not sure if I am meant to install nodejs whlist logged in as the root user or as the none root user with my name ?
I used putty and connected via SSH and logged in as root and I installed nodejs but I think this was wrong as when logged in as my user name and I do a node -v command it says node is not installed or doesn't show any version number anyway.
But when logged in as root and I do a node -v command it does show me its installed and displays the version number. maybe its a path issue for my username and he can't see node is installed?
So now I am thinking I should of installed node whilst logged in as my user name and not as the root user.
This is how I installed nodejs as whilst logged in as root
ac7bf6c3-23ad-46fc-8ada-44af6704e63e-image.png
Thanks in advance.
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.As the title says, here's my OpenAI Controller for Reactor:
OpenAI Controller per Reactor. Contribute to dbochicchio/reactor-openai development by creating an account on GitHub.
It supports both OpenAI and Azure OpenAI endpoints. You'll need keys/endpoints, according to each service.
The controller supports multiple models, and each one could be mapped as an entity.
It's quite easy to use, and responses can be stored in variables, for easy access. Or sent to another action (Text To Speech, another endpoint, etc).
9013ae50-fd68-42a2-87c3-97479132e465-image.png
80a88eec-7c89-464a-8196-690b4b72d044-image.png
Have fun with LLM into your scenes!
In Home Assistant I have an integration that if I add entities to it, I will get the following error in MSR as certain entity values I'm using in expressions are null for a moment. This is more or less cosmetic issue and happens very rarely as I rarely modify that integration on the hass side.
Screenshot 2024-11-28 at 22.20.41.png
And the expression is
Screenshot 2024-11-28 at 22.38.19.png
Could I "wrap" hass-entity shown above somewhat differently to prevent this error from happening? Using build 24302.
Hello
I am trying to set up Multi System Reactor to automate routines across multiple smart home devices & platforms (e.g., Home Assistant, SmartThings, and Hubitat). While I have successfully linked the systems; I am facing issues with:
-Delays in triggering actions on secondary devices.
-Inconsistent execution of complex logic conditions.
-Synchronization of states between devices when one system updates.
Is there a recommended way to optimize performance & confirm seamless state sharing across systems?
I have checked https://smarthome.community/category/22/multi-system-reactor-msbi guide for reference but still need advice.
Any tips on debugging or log analysis to pinpoint where the issue arises would also be appreciated.
Thank you !
I've managed to use MSR UI on iOS devices to some degree*, so that although UI elements (e.g. rule sets) are not visible in portrait mode, you've seen them in landscape. Now with recents builds (24302) this does not work anymore, elements (rule sets, entities) are not anymore visible in landscape mode.
Does anyone have similar experiences? Using iOS 18 and Safari/Chrome browser.
( *Drag & drop of rule conditions have never worked on a mobile)
@toggledbits Since I have upgraded ZWaveJSController to 24293 from 24257 I am seeing entries related to registering action set_volume, but action is not defined by the capability 143 every time I restart Reactor.
The Siren seems to be doing what it is supposed to do. The volume levels are fine. Should I worry about it?
Reactor version 24302
ZWaveJSController version 24293
Z-Wave JS UI version 9.27.4
zwave-js version 14.3.4
I have the following ACL defined:
groups: admin: users: - admin applications: true api_acls: # This ACL allows users in the "admin" group to access the API - url: "/api" group: admin allow: true log: true # This ACL allows anyone/thing to access the /api/v1/alive API endpoint - url: "/api/v1/alive" allow: trueAnd I have authenticated to MSR as "admin" user. However, I'm getting "access denied" when trying to access http://*******:8111/api/v1/log
So what I'm missing, is my ACL incorrectly defined?
Using build 24302 on Docker.
Hi
I have just connected a bunch of EzloPi controllers to MSR to import some ESP based devices etc.
They all seemed to have worked and imported in to MSR apart from I have one missing device. It is a Digital Gas Sensor device.
This is how that device looks in the Ezlo API.
Devices Info:
_id: "10696001" deviceTypeId: "ezlopi" parentDeviceId: "10696000" category: "level_sensor" subcategory: "" gatewayId: "457a5069" batteryPowered: false name: "Gas Sensor Digital" type: "sensor" reachable: true persistent: true serviceNotification: false armed: false roomId: "" security: "no" ready: true status: "idle" parentRoom: true protectConfig: "default"Items Info:
_id: "20696001" deviceId: "10696001" hasGetter: true hasSetter: false name: "smoke_density" show: true valueType: "substance_amount" scale: "parts_per_million" value: 2.7472610473632812 valueFormatted: "2.75" status: "idle"There is also an Analog Gas sensor that one did import in to MSR OK.
68d63dab-b871-4f44-912b-cf6e0b9eb4c6-image.png
Devices Info:
_id: "10696000" deviceTypeId: "ezlopi" parentDeviceId: "10696000" category: "security_sensor" subcategory: "gas" gatewayId: "457a5069" batteryPowered: false name: "Gas Sensor Analog" type: "sensor" reachable: true persistent: true serviceNotification: false armed: false roomId: "" security: "no" ready: true status: "idle" parentRoom: true protectConfig: "default"Items Info:
_id: "20696000" deviceId: "10696000" hasGetter: true hasSetter: false name: "gas_alarm" show: true valueType: "token" enum: 0: "no_gas" 1: "combustible_gas_detected" 2: "toxic_gas_detected" 3: "unknown" valueFormatted: "no_gas" value: "no_gas" status: "idle"And this is how this MQ2 Gas Sensor looks like on their dashboard:
Digital
cb77dfa3-4af5-4d06-9635-89207a716a89-image.png
Analog
4fb4da1b-e946-4b89-876c-bcd9f5699b6c-image.png
They have an EzloPi website here you can create your own sensor projects using ESP boards, which is very interesting stuff!
And I just wrote on the Ezlo forum here, how to connect an EzloPi controller to MSR.
THANKS.
A couple of things for you @toggledbits, since you mentioned that this release has new features and some tweaks are expected.
Local expressions cannot be deleted. Pushing the X button has no effect for me.
When cloning an entity action, the result is strange (first is cloned one, second is the original action):
a92ea094-9e2c-4aaa-bf47-2d07a6ffdbd0-image.png
When changing the action on the cloned element, the params are added to the original one. See screenshot:
92ac3011-83c8-466b-bd23-47d483ad7a52-image.png
Dark theme has a couple of strange contrasts. One is visible in the previous screenshots (white text on yellow background). Another one is in groups (blue text on blue background):
9b3c4988-53ef-44e6-9672-30e744cacb75-image.png
Overall, I found blue, yellow, red and green (in buttons and forms) to be too bright.
On the bright side:
I love the new script action: thank you! The dark theme is a great start to avoid getting blinded at night I promise I'll try very soon the new features around actions. Thanks!@toggledbits
I just upgraded to version MSR 24293, bare metal running on Fedora. Upon restart, I am getting a error banner:
I followed the new directions about npm
npm i --no-save --no-package-lock --omit dev
Any idea what the issue is?
Seems like switching the UI to the newly added dark mode (thank you for this) does nothing. The UI stays in light mode and only a few buttons turn into dark mode (see screenshot)
Things I have tried:
Hard refresh
Different browser
Different computer
Restarting Reactor
Failed troubleshooting attempts:
No errors in Chrome console
No relevant errors in Reactor log (can still PM the full log file)
Reactor version: latest-24293-ea42a81d
Hardware: Odroid N2+
Linux version: Ubuntu 24.04.1 LTS
3df2806f-9146-485b-9ec1-d056e91cefe5-image.png Dark mode enabled
ff823023-c079-4684-b01f-d6ac6527d31a-image.png Light mode enabled
Good morning,
I have a service MQTT service that needs a restart occasionally. The add-on (Smartbed MQTT) is for the smart bed base for my bed. It has a "safety light" that I can control from HAAS & MSR as a light entity, and also moves the head of the bed to a preset at bedtime, and then lies it back flat in the morning The problem is, from time to time, the light becomes "unavailable" Restarting from the Add-ons tab in HAAS always fixes it, but I should be able to detect when it happens when "light.tempur_pedic_safety_lights" is not true or false, i.e., unavailable.
What I don't know how to do is how to restart that service. Does anybody have experience in restarting add-ons from MSR?
Running:
Reactor (Multi-hub) latest-24212-3ce15e25 ZWaveJSController [0.1.24232]HAAS:
RPi5-64 (8GB) Core 2024.7.3 Supervisor 2024.08.0 Operating System 13.0 Frontend 20240710.0Can I use Dynamic Group Control for Triggers and Reactions?
-
Good evening all,
I've run across a quirk with my iBlinds motors in Home Assistant. Each iBlinds zwave motor has two controls that I can use. One is a switch, and one is a cover control.cid:A1190F3F-FB02-4332-93DE-9A15A490D9AB
The switch control is a binary on/off switch. On, the blind goes to the "open" position (v2 controllers, 50%, v3 controllers user definable parameter)
If you click on the cover icon, it moves between two positions. Essentially, it's closed in both positions, just 180 degrees apart. The cover control does give you the granularity to move to any position between 0 and 100, which is sometimes useful, when you just don't want it open or closed, such as letting some light in, but closing it enough when the sun is shining directly into the window and blinding everyone.
Here's the problem, which I've brought up with iBlinds support, and they're singing Simon and Garfunkel (Sound of Silence). The two controls don't update each other. If I open or close using the switch, the cover position value doesn't change. If I open or close using the cover control, the switch doesn't change to on or off. I've verified that this isn't just an issue with the dashboard/templates I'm using by going into the developer tools on HA and the values do not change. I've also checked those values in Reactor (Entities tab) and they do not update properly.
I've come up with a Reactor work around which sort of forces the controls to update. If anyone knows of a better way, please tell me. I have two rules set up that monitor for changes in the switch state, that then performs a x_haas_cover.set_cover_position to either 0 or 50 for either to off or to on respectively.
This is sort of a one way street at the moment. I don't have a reverse rule set up to change the switch value, but the current rule seems more of an issue.
All that being said. I have 14 iBlinds motors in my home. That would mean 28 rules in Reactor. I know how to set up a Dynamic Group Control for Triggers. I put all 14 switches in the reactor.yaml file, and I can use those for triggers. How would I go about using 14 corresponding cover controls for the reactions?
It may be a simple matter, but I'm not sure. One thing i can say is the name of the switch and cover entities are the same, except for the control type:
Edit:
Running:
Reactor: latest-23078-d592d400
Home Assistant 2023.3.5
Supervisor 2023.03.3
Operating System 9.5
Frontend 20230309.1 - latest -
@tamorgen So iBlinds are a funny beast. I'm running 11 of the v3's and my automations run the gamut from normal open/close to "tilt when the sun hits this side of the house", "tilt when I'm not home (for privacy)" - smashing the sun tilt together with the Away tilt... oh boy is that fun.
I use a Zooz ZWave stick connected to Home Assistant to run them. They're happy together but I also do run a ping rule hourly lest they lose sight of the stick. Hubitat runs the rest of the house for now.
To control them... oy. Here's a couple samples:
The
.refresh
keeps Home Assistant happy in keeping the two status' you have in your first screenshot in sync.I have fought long and hard over the past two years with many, many hours of trial and error with these and, even this morning, am still making adjustments. I am quite demanding of my automations with them, in all fairness to both the blinds themselves and MSR.
ProTip: if you're controlling multiple iBlinds in one automation, a five or so second delay between each blind's actions will help a LOT. I believe I actually got that advice from iBlinds Support (when they answer).
Yes - you will have a LOT of iBlinds rules and reactions to truly control these bad boys. No - you will never get them all to open/close simultaneously. I've settled on a nice routine where they start their actions at the front of the house and end at the back, each performing it's task sequentially after the other. Not quite as cool but it's still ok.
OH - I also do a weekly recalibration to keep the iBlinds "accurate" lest they drift a bit over time.
To your actual ask - I've installed the Dynamic Group Controller but not delved into it as yet. Hopefully the info above helps you as the iBlinds rabbithole can run deep and dark. MSR has been key in my ability to get the iBlinds to function the best of any integration I've tried.
-
Note that @gwp1 is using ZWaveJSController to interface with iBlinds, not HassController. So this is more direct control that circumvents HA's interpretation.
-
@gwp1 said in Can I use Dynamic Group Control for Triggers and Reactions?:
@tamorgen So iBlinds are a funny beast. I'm running 11 of the v3's and my automations run the gamut from normal open/close to "tilt when the sun hits this side of the house", "tilt when I'm not home (for privacy)" - smashing the sun tilt together with the Away tilt... oh boy is that fun.
I use a Zooz ZWave stick connected to Home Assistant to run them. They're happy together but I also do run a ping rule hourly lest they lose sight of the stick. Hubitat runs the rest of the house for now.
To control them... oy. Here's a couple samples:
The
.refresh
keeps Home Assistant happy in keeping the two status' you have in your first screenshot in sync.I have fought long and hard over the past two years with many, many hours of trial and error with these and, even this morning, am still making adjustments. I am quite demanding of my automations with them, in all fairness to both the blinds themselves and MSR.
ProTip: if you're controlling multiple iBlinds in one automation, a five or so second delay between each blind's actions will help a LOT. I believe I actually got that advice from iBlinds Support (when they answer).
Yes - you will have a LOT of iBlinds rules and reactions to truly control these bad boys. No - you will never get them all to open/close simultaneously. I've settled on a nice routine where they start their actions at the front of the house and end at the back, each performing it's task sequentially after the other. Not quite as cool but it's still ok.
OH - I also do a weekly recalibration to keep the iBlinds "accurate" lest they drift a bit over time.
To your actual ask - I've installed the Dynamic Group Controller but not delved into it as yet. Hopefully the info above helps you as the iBlinds rabbithole can run deep and dark. MSR has been key in my ability to get the iBlinds to function the best of any integration I've tried.
I've been running 14 iBlinds v2 since 2019, and I just replaced 2 of them with v3.1. I've always had issues with the units responding consistently. The answers I've gotten from their support is "try repairing it closer", or you need to have beaming repeaters. I have 75 Z-wave devices in my house, and every single device that is hard wired is beaming. I think they just have a script that assumes it's the users fault, and they really aren't interested in helping.
I could set up a ping hourly, and that may help with connectivity. I don't run them all at once. I have Reactor set to "wait for completion" on each of the reactions before moving on to the next one.
None of this unfortunately addresses the issue of the switch control and the cover control not being in sync. I don't seem to have a .refresh command in HA, or at least I'm not sure where it is. If that syncs them up, then I'll be happy. Where is that refresh command located?
-
-
@gwp1 said in Can I use Dynamic Group Control for Triggers and Reactions?:
@tamorgen That sounds vaguely familiar!
Low and behold iBlinds support finally got back with me, and they actually acknowledged the original problem I was seeing was actually a problem.
Hi Timothy, Very sorry for the delayed response, we have been getting more reports of this issue and have been building up to a solution. We have determined this to be a driver issue within Home Assistant that will need to be addressed for each hub. We have never really sent battery report until battery level drops to the low battery alert threshold and this feature is required by zwave certification. We always had the hub poll the battery level since some hubs opted for polling the device independently of the device sending a report. We will need to add polling to the HA driver and other drivers of the same issue. Thank you for your patience. Thanks, Chance H. The iBlinds Team
and
Hi Timothy, To add to this, the polling will update the position as well as the battery to address your issue specifically. Thanks, Chance H. The iBlinds Team
Feeling some vindication, after their original emails were all to the tone of "you're doing it wrong, you need to exclude and pair your devices. You need beaming repeaters (I guess the 55 other devices that aren't battery powered and are beaming don't count)."
-
-
-
I've split this topic. This thread remains for discussion specific to iBlinds only; if you have further comments on your issue getting ZWaveJSController running, please make those in the new thread where that specific discussion takes place.
-
@toggledbits said in Can I use Dynamic Group Control for Triggers and Reactions?:
I've split this topic. This thread remains for discussion specific to iBlinds only; if you have further comments on your issue getting ZWaveJSController running, please make those in the new thread where that specific discussion takes place.
Thanks Patrick, that's fine. I knew it was going off on a bit of a tangent and asked you to fork it a bit ago.
Back to the original subject, now that I'm have ZWaveJSController working and I can use the refresh command, I still want to set up a rule based upon a state changing to poll the entity and force that refresh.
I set up the Dynamic Groups in my reactor.yaml using the zwavejs entities. I have three ones set up. One for the switch state, one for the position state, and one for the cover state. This way, I can run refresh if anyone of them changes. If there is a better way, please let me know.
"iblinds_switch": select: - include_entity: - 'zwavejs>63-0' - 'zwavejs>62-0' - 'zwavejs>64-0' - 'zwavejs>65-0' - 'zwavejs>79-0' - 'zwavejs>77-0' - 'zwavejs>78-0' - 'zwavejs>206-0' - 'zwavejs>205-0' - 'zwavejs>75-0' - 'zwavejs>74-0' - 'zwavejs>71-0' - 'zwavejs>16-0' - 'zwavejs>61-0' filter_expression: > entity.power_switch.state "iblinds_position": select: - include_entity: - 'zwavejs>63-0' - 'zwavejs>62-0' - 'zwavejs>64-0' - 'zwavejs>65-0' - 'zwavejs>79-0' - 'zwavejs>77-0' - 'zwavejs>78-0' - 'zwavejs>206-0' - 'zwavejs>205-0' - 'zwavejs>75-0' - 'zwavejs>74-0' - 'zwavejs>71-0' - 'zwavejs>16-0' - 'zwavejs>61-0' filter_expression: > entity.cover.position.value "iblinds_cover": select: - include_entity: - 'zwavejs>63-0' - 'zwavejs>62-0' - 'zwavejs>64-0' - 'zwavejs>65-0' - 'zwavejs>79-0' - 'zwavejs>77-0' - 'zwavejs>78-0' - 'zwavejs>206-0' - 'zwavejs>205-0' - 'zwavejs>75-0' - 'zwavejs>74-0' - 'zwavejs>71-0' - 'zwavejs>16-0' - 'zwavejs>61-0' filter_expression: > entity.cover.state
The rule I'm trying to set up is to look for any change on those switches (on to off or off to on), and then set a reaction to refresh the cover (zwave_device.refresh)
In the set reaction, it doesn't appear to let my dig down any further once I put the group in. What do I need to do to make this work, if it's even possible.
-
@tamorgen said in Can I use Dynamic Group Control for Triggers and Reactions?:
In the set reaction, it doesn't appear to let my dig down any further once I put the group in. What do I need to do to make this work, if it's even possible.
Experimental, undocumented feature: add
group_actions: true
to your group's configuration:"iblinds_switch": select: - include_entity: - 'zwavejs>63-0' ... - 'zwavejs>61-0' filter_expression: "entity.power_switch.state" group_actions: true
-
@toggledbits said in Can I use Dynamic Group Control for Triggers and Reactions?:
@tamorgen said in Can I use Dynamic Group Control for Triggers and Reactions?:
In the set reaction, it doesn't appear to let my dig down any further once I put the group in. What do I need to do to make this work, if it's even possible.
Experimental, undocumented feature: add
group_actions: true
to your group's configuration:"iblinds_switch": select: - include_entity: - 'zwavejs>63-0' ... - 'zwavejs>61-0' filter_expression: "entity.power_switch.state" group_actions: true
Thanks Patrick. I'll give that a try.
-
@toggledbits said in Can I use Dynamic Group Control for Triggers and Reactions?:
@tamorgen said in Can I use Dynamic Group Control for Triggers and Reactions?:
In the set reaction, it doesn't appear to let my dig down any further once I put the group in. What do I need to do to make this work, if it's even possible.
Experimental, undocumented feature: add
group_actions: true
to your group's configuration:"iblinds_switch": select: - include_entity: - 'zwavejs>63-0' ... - 'zwavejs>61-0' filter_expression: "entity.power_switch.state" group_actions: true
You said it was unsupported
Reactor doesn't seem to like my filter.
[latest-23078]2023-04-03T18:19:59.724Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>63-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-]
These are the values when I look at the Entities tab for one of the blind controllers.
-
Well that has nothing to do with group actions. It's specifically complaining about your filter. Hass is famous for giving null state when a device is unreachable or still initializing. If the DGC comes up faster than Hass, you get those messages. They usually don't stick.
And please remember the posting guidelines. When posting an error, don't just post the error message; you need to post several dozen lines from before it, for context.
-
@toggledbits said in Can I use Dynamic Group Control for Triggers and Reactions?:
Well that has nothing to do with group actions. It's specifically complaining about your filter. Hass is famous for giving null state when a device is unreachable or still initializing. If the DGC comes up faster than Hass, you get those messages. They usually don't stick.
And please remember the posting guidelines. When posting an error, don't just post the error message; you need to post several dozen lines from before it, for context.
Understood, however, the system has been back up for white a while, and it just keeps repeating those errors. The lines I'm seeing before are unrelated and appear to be just normal reactions in my system.
[latest-23078]2023-04-03T18:44:11.461Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>63-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>62-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>64-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>65-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>79-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>77-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>78-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.462Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Cover#zwavejs>206-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Cover#zwavejs>205-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>75-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>74-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>71-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>16-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T18:44:11.463Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.cover.state error with Light#zwavejs>61-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-]
-
I restarted Reactor to see if I could see anything coming back up.
latest-23078]2023-04-03T19:06:05.925Z <Structure:INFO> Structure#1 stopping DynamicGroupController#groups [latest-23078]2023-04-03T19:06:05.926Z <DynamicGroupController:null> DynamicGroupController#groups stopping [latest-23078]2023-04-03T19:06:05.926Z <Controller:NOTICE> DynamicGroupController#groups stopping [latest-23078]2023-04-03T19:06:05.927Z <Controller:ERR> Controller DynamicGroupController#groups is off-line! [latest-23078]2023-04-03T19:06:09.706Z <Structure:INFO> Structure#1 loading controller interface groups (DynamicGroupController) [latest-23078]2023-04-03T19:06:09.710Z <DynamicGroupController:null> Module DynamicGroupController v22313 [latest-23078]2023-04-03T19:06:09.746Z <Structure:INFO> Starting controller DynamicGroupController#groups [latest-23078]2023-04-03T19:06:09.750Z <Controller:NOTICE> Controller DynamicGroupController#groups is now online. [latest-23078]2023-04-03T19:06:14.711Z <DynamicGroupController:INFO> All controllers ready, setting up dynamic groups [latest-23078]2023-04-03T19:06:14.728Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>63-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.728Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>62-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.728Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>64-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.728Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>65-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.728Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>79-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.729Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>77-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.729Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Light#zwavejs>78-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.729Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Cover#zwavejs>206-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-] [latest-23078]2023-04-03T19:06:14.729Z <DynamicGroupController:ERR> DynamicGroupController#groups filter expression entity.power_switch.state error with Cover#zwavejs>205-0: [ReferenceError] Invalid scope in reference to member state of (object)null [-]
-
OK. Two things:
-
When I made the example for
group_actions
above, I abbreviated the select and filter expressions, which I didn't expect you to copy verbatim; I just put it there for alignment/indenting. Use the select and filter expressions you had previously. -
Update to the 23093 version of ZWaveJSController I just released, which fixes another small iBlinds issue.
-
-
@toggledbits said in Can I use Dynamic Group Control for Triggers and Reactions?:
OK. Two things:
-
When I made the example for
group_actions
above, I abbreviated the select and filter expressions, which I didn't expect you to copy verbatim; I just put it there for alignment/indenting. Use the select and filter expressions you had previously. -
Update to the 23093 version of ZWaveJSController I just released, which fixes another small iBlinds issue.
Thanks. I thought the filter expressions format had changed for with the group_actions flag, so I changed it to your example.
I also updated to the latest ZWaveJSController.
I still eppar to be getting those same errors, even with changing back to:
"iblinds_switch": select: - include_entity: - 'zwavejs>63-0' - 'zwavejs>62-0' - 'zwavejs>64-0' - 'zwavejs>65-0' - 'zwavejs>79-0' - 'zwavejs>77-0' - 'zwavejs>78-0' - 'zwavejs>206-0' - 'zwavejs>205-0' - 'zwavejs>75-0' - 'zwavejs>74-0' - 'zwavejs>71-0' - 'zwavejs>16-0' - 'zwavejs>61-0' filter_expression: > entity.power_switch.state group_actions: true "iblinds_position": select: - include_entity: - 'zwavejs>63-0' - 'zwavejs>62-0' - 'zwavejs>64-0' - 'zwavejs>65-0' - 'zwavejs>79-0' - 'zwavejs>77-0' - 'zwavejs>78-0' - 'zwavejs>206-0' - 'zwavejs>205-0' - 'zwavejs>75-0' - 'zwavejs>74-0' - 'zwavejs>71-0' - 'zwavejs>16-0' - 'zwavejs>61-0' filter_expression: > entity.cover.position.value group_actions: true
-
-
entity.attributes.power_switch.state
and the same change for the others, like you had originally. -
@toggledbits
Thanks, that did the trick. Do I need to use the local expressions when using this approach? I'm guessing no. -
That would depend on what you're using them for. The only one I see above is to make a list of entity names from a group's members, presumably to use it in a message or something else not yet completed?
-