Morning, experts. Hard on learning about the internet check script in MSR tools, I was wondering what suggestions anyone has about a local (i.e. non-internet dependent) notification method.
This was prompted by yesterday's fun and games with my ISP.
I've got the script Cronned and working properly but short of flashing a light on and off, I'm struggling to think of a way of alerting me (ideally to my phone)
I guess I could set up a Discord server at home, but that feels like overkill for a rare occasion. Any other suggestions?
TIA
C
Hi,
I'm trying to integrate the sonos-mqtt (https://sonos2mqtt.svrooij.io/) with the MSR and it's coming along nicely so far.
But cannot wrap my head around how to define custom capabilities in MQTT templates. I need this for the TTS announcements and similarly for the notification sounds where I would pass the sound file as parameter.
So this is what I have in the local_mqtt_devices.yaml
capabilities: x_sonos_announcement: attributes: actions: speak: arguments: text: type: string volume: type: int delay: type: intAnd this is the template:
templates: sonos-announcement: capabilities: - x_sonos_announcement actions: x_sonos_announcement: speak: topic: "sonos/cmd/speak" payload: expr: > { "text": parameters.text, "volume": parameters.volume, "delayMs": parameters.delay, "onlyWhenPlaying": false, "engine": "neural" } type: jsonSo the speak action should send something like this to topic sonos/cmd/speak
{ "text": "message goes here", "volume": 50, "delayMs": 100, "onlyWhenPlaying": false, "engine": "neural" }At startup the MSR seems to be quite unhappy with my configuration:
reactor | [latest-25016]2025-02-09T08:19:59.029Z <MQTTController:WARN> MQTTController#mqtt entity Entity#mqtt>sonos-announcement unable to configure capabilities [Array][ "x_sonos_announcement" ] reactor | i18n: missing fi-FI language string: Configuration for {0:q} is incomplete because the following requested capabilities are undefined: {1} reactor | i18n: missing fi-FI language string: Configuration for {0:q} has unrecognized capability {1:q} in actions reactor | Trace: Configuration for {0:q} is incomplete because the following requested capabilities are undefined: {1} reactor | at _T (/opt/reactor/server/lib/i18n.js:611:28) reactor | at AlertManager.addAlert (/opt/reactor/server/lib/AlertManager.js:125:25) reactor | at MQTTController.sendWarning (/opt/reactor/server/lib/Controller.js:627:30) reactor | at MQTTController.start (/var/reactor/ext/MQTTController/MQTTController.js:268:26) reactor | at async Promise.allSettled (index 0) Configuration for "sonos-announcement" has unrecognized capability "x_sonos_announcement" in actions Controller: MQTTController#mqtt Last 10:21:37 AM Configuration for "sonos-announcement" is incomplete because the following requested capabilities are undefined: x_sonos_announcement Controller: MQTTController#mqtt Last 10:21:37 AMThis is probably a pretty stupid question and the approach may not even work at all, but maybe someone or @toggledbits for sure, could point me to the right direction.
Basically the idea is to be able to send TTS messages from reactions using entity actions. I've previously used HTTP requests to Sonos HTTP API (https://hub.docker.com/r/chrisns/docker-node-sonos-http-api/) for the same functionality, but since moving to sonos-mqtt, I need a way to send the TTS notifications using MQTTController. Along with the actual message, volume and delay must also be parameterizable.
br,
mgvra
MSR latest-25016-d47fea38 / MQTTController [0.2.24293]
Hi, @toggledbits
I just noticed that following a reboot of my raspberry pi, some of the rules, that I was expecting to recover, are not catching up following a reboot. I have made a simple test rule (rule-m6rz6ol1) with only "after Date/time" as trigger and "turn on a lamp" as a set reaction. All my infrastructure is on the same board so Reactor, Hass, Zwavejs, ... are all rebooting.
Here is the sequence of the test case (All time converted to Zulu to match logs):
Rule "after Date/Time" set to 14:05:00z Shutdown on Raspberry Pi at 14:04:00z Power back up at 14:08:00z Rule overview shows true as of 14:08:14z waiting for 00:00:00 in GUIFrom the log I can see that MSR is picking up the rule and knows that the state of the rule has changed from false to true and tries to send the update to HASS but failed with websocket error.
Here is what I see from the log:
14:04:04z shutdown complete 14:08:08z Power up 14:08:13.111z websocket connection 14:08:15:323z Reaction to the light failed, Websocket not opened After there is a series of websocket connection attempt until 14:08:51z where it seemed to be really ready.Back in 2021 we had a discussion (https://smarthome.community/topic/700/solved-start-up?_=1738766986566) and you proposed to add a startup_delay:xxxx and startup_wait:xxxx parameter in the engine section of "reactor.yaml". When I try the startup_delay (this used to be a hard delay), the engine failed to start (I think). I then try the startup_wait:xxxx without any success. Since it wait for the connection status to be up to cancel the delay, it does not do anyting since Hass is reporting the socket up without really being up ( I think...).
Questions:
Did I figured it all wrong? should the startup_delay:xxxxx have worked? Any ideas?Here is the log:
OK now I am stuck. I did add the log but when I submit the editor complained saying that I am limited to 32767 characters. The log from the shutdown to the time the websocket is stable is about 300000 character long. What are my options?
Not a big issue simply a request if easily doable.
The MSR logs files inside the container are owned by root witch is fine however, the permissions are very restrictive. I do not know if there is something wrong with my installation but the logs permission are set to 222 (write only). Even if the docker volume is set for Read/Write the log files are retaining these values.
I go around the problem by doing a chmod 777 on all reactor logs but every time there is an MSR log rotation the permissions are set back to 222. So unless the permission are implemented in the container there is no permanent solution to this (that I know of).
I do not know much about Docker container so I do not know what is involved here.
Can the logfiles permission be simply chaged in the container to at least allow "other" read permission?
Could the MSR log rotation routine implement a chmod to set the permission?
Just a small anoyance
Thanks
@toggledbits In the MSR documentation, under Standard Capabilities, I noticed that the
button.since attribute was deprecated as of version 22256 and the metadata is the preferred way to access the last-modified time of an attribute.
Am I reading this right? Should I stop using it in my rules?
Thanks
When on my bare metal RPi with MSR I had a rule that ran every minute to check Internet status via a script in MSR called reactor_inet_check.sh
I've moved to containerized MSR and see in the instructions that this cannot be run from the container.
The script cannot run within the Reactor docker container. If you are using Reactor in a docker container, the script needs to be run by cron or an equivalent facility on the host system (e.g. some systems, like Synology NAS, have separate task managers that may be used to schedule the repeated execution of tasks such as this).
I've put a script on my container host that calls the reator_inet_check.sh script and it isn't erroring... but I still see the internet status within MSR as null.
Before I go diving down the rabbit hole... should this work?
My cronjob on the proxmox host:
909fe6f0-77fd-4734-80a4-c9e354c910b6-image.png
The contents of msr_internet_check_caller.sh
16337528-cf31-4968-bffe-af1149f7103e-image.png
Background: this is a Windows MSR install I've done for our local pool/amenity center just to run some fans and lights (not my daily driver at home). Install went perfectly fine.
Scenario: I want the lights to go on when it's dark enough (even if during a storm, not just after sunset) so I'm using solarRadiation from my weather station to drive that Trigger. Easy stuff.
Issue: sometimes, someone goes in the office and just starts flipping switches and the result can be lights turned on in the daytime or off at night. I'm trying to create a "catch-all" wherein if it is daytime and the lights somehow find their way ON, they will turn themselves back OFF.
I have the following Reaction built:
b30eab5b-5a14-4a3a-8c9a-47e3e7e53dc3-image.png
I also have this Reaction for opposite, ie the lights find themselves turned off after dark and they will turn themselves back on:
5c6946b1-297c-4eb1-9618-74820979df29-image.png
Here are my two rules:
288cba86-f941-4157-86d9-d8e7487905f7-image.png *NOTE that in my manual testing, ie I turn on the light switch at the incorrect time, when the solarRadiation level changes the Lights ON rule flags and shows as SET. On the next change of solarRadiation it goes back to reset again.
My expectation is that Lights OFF rule should see the lights are on, the solarRadiation is above the set limit, and turn them off. Instead, every other run, the ON rule moves to SET and then reset again on the following run.
Logs appear angry:
[latest-25016]2025-01-26T22:03:31.696Z <Engine:INFO> Enqueueing "Lights ON<RESET>" (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:03:31.712Z <Engine:NOTICE> Starting reaction Lights ON<RESET> (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:03:31.713Z <Engine:INFO> Lights ON<RESET> all actions completed. [latest-25016]2025-01-26T22:03:42.565Z <wsapi:INFO> client "127.0.0.1#3" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:42.753Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:42.754Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:42.790Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:42.839Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#6" authorized [latest-25016]2025-01-26T22:03:43.353Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:43.353Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:03:48.146Z <wsapi:INFO> client "127.0.0.1#6" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:48.308Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:48.309Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:48.346Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:48.390Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#7" authorized [latest-25016]2025-01-26T22:03:49.412Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:49.413Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:03:52.734Z <wsapi:INFO> client "127.0.0.1#7" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:52.891Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:52.892Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:52.925Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:52.965Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#8" authorized [latest-25016]2025-01-26T22:03:54.383Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:54.384Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:04:01.590Z <wsapi:INFO> [WSAPI]wsapi#1 rpc_echo [Object]{ "comment": "UI activity" } [latest-25016]2025-01-26T22:04:39.646Z <Rule:INFO> Lights OFF (rule-m6e33ja3 in Atrium Lights) evaluated; rule state transition from RESET to SET! [latest-25016]2025-01-26T22:04:39.656Z <Rule:INFO> Lights ON (rule-m6e4ajh7 in Atrium Lights) evaluated; rule state transition from RESET to SET! [latest-25016]2025-01-26T22:04:39.663Z <Engine:INFO> Enqueueing "Lights OFF<SET>" (rule-m6e33ja3:S) [latest-25016]2025-01-26T22:04:39.665Z <Engine:INFO> Enqueueing "Lights ON<SET>" (rule-m6e4ajh7:S) [latest-25016]2025-01-26T22:04:39.668Z <Engine:NOTICE> Starting reaction Lights OFF<SET> (rule-m6e33ja3:S) [latest-25016]2025-01-26T22:04:39.669Z <Engine:NOTICE> Starting reaction Lights ON<SET> (rule-m6e4ajh7:S) [latest-25016]2025-01-26T22:04:39.669Z <Engine:INFO> Lights ON<SET> all actions completed. [latest-25016]2025-01-26T22:04:39.675Z <Rule:INFO> Lights OFF (rule-m6e33ja3 in Atrium Lights) evaluated; rule state transition from SET to RESET! [latest-25016]2025-01-26T22:04:39.680Z <Engine:NOTICE> ReactionHistory: no entry for [latest-25016]2025-01-26T22:04:39.683Z <Engine:NOTICE> [Engine]Engine#1 entry 256 reaction rule-m6e33ja3:S-1q2f1j0p: [Error] terminated [parent terminating] [latest-25016]2025-01-26T22:04:39.683Z <Engine:CRIT> Error: terminated [parent terminating] Error: terminated at Engine._process_reaction_queue (C:\Users\Jalan\msr\reactor\server\lib\Engine.js:1644:47) [latest-25016]2025-01-26T22:04:39.699Z <Engine:NOTICE> [Engine]Engine#1 entry 254 reaction rule-m6e33ja3:S: [Error] terminated [preempted by rule state change] [latest-25016]2025-01-26T22:04:39.699Z <Engine:CRIT> Error: terminated [preempted by rule state change] Error: terminated at Engine._process_reaction_queue (C:\Users\Jalan\msr\reactor\server\lib\Engine.js:1644:47) [latest-25016]2025-01-26T22:04:39.700Z <Engine:INFO> Enqueueing "Lights OFF<RESET>" (rule-m6e33ja3:R) [latest-25016]2025-01-26T22:04:39.704Z <Engine:NOTICE> Starting reaction Lights OFF<RESET> (rule-m6e33ja3:R) [latest-25016]2025-01-26T22:04:39.705Z <Engine:INFO> Lights OFF<RESET> all actions completed. [latest-25016]2025-01-26T22:05:48.822Z <Rule:INFO> Lights ON (rule-m6e4ajh7 in Atrium Lights) evaluated; rule state transition from SET to RESET! [latest-25016]2025-01-26T22:05:48.831Z <Engine:INFO> Enqueueing "Lights ON<RESET>" (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:05:48.847Z <Engine:NOTICE> Starting reaction Lights ON<RESET> (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:05:48.847Z <Engine:INFO> Lights ON<RESET> all actions completed.Hi @toggledbits
I found this very old post that talked about a way to limit device reading to avoid the throttled problem, because it's not a question of logic, it's that the device actually sends a lot of information, in my case the NUT ups installed in HE.
https://smarthome.community/topic/687/flapping-device?_=1737652139854
It mentions engine section of reactor.yaml by setting update_rate_limit, but I looked in the current MSR documentation and I can't find this information, so I don't know if it's still valid, its effect and parameters.
My situation is simple, when I have a UPS problem the NUT is sending dozens of reports per second and then I have the throttled problem. The same rule applies when the power is normal.
This is the rule, and the parameter that fails is the Tripp Lite UPS status.
cf9ddabf-3144-4e5a-80a4-0dc7664b9573-image.png
a813a077-974e-4737-897c-e383085b3d8f-image.png
All error is the same scenario.
[latest-25016]2025-01-23T12:01:32.753Z <Rule:WARN> (13) NUT Disconected (rule-l4djr0p7 in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:32.756Z <Rule:WARN> (27) Falta de Energia (rule-l4h9ceod in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:32.769Z <Rule:WARN> (73) UPS Battery Low (rule-l4hj850o in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:32.772Z <Rule:WARN> (74) UPS Comm Fail (rule-l4kbs5cp in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttlin> [latest-25016]2025-01-23T12:01:32.776Z <Rule:WARN> (76) UPS Utility Back (rule-l4hjhs6m in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:32.780Z <Rule:WARN> UPS On Battery (rule-l4hjuka5 in Datacenter) update rate 121/min exceeds limit (120/min)! Logic loop? Throttling> [latest-25016]2025-01-23T12:01:32.781Z <Rule:WARN> UPS Info (rule-l4gheo63 in Datacenter) update rate 121/min exceeds limit (120/min)! Logic loop? Throttling... [latest-25016]2025-01-23T12:01:40.757Z <Rule:WARN> (13) NUT Disconected (rule-l4djr0p7 in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:40.759Z <Rule:WARN> (27) Falta de Energia (rule-l4h9ceod in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:40.776Z <Rule:WARN> (73) UPS Battery Low (rule-l4hj850o in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:40.777Z <Rule:WARN> (74) UPS Comm Fail (rule-l4kbs5cp in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttlin> [latest-25016]2025-01-23T12:01:40.778Z <Rule:WARN> (76) UPS Utility Back (rule-l4hjhs6m in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott>Thanks.
Hello -
Long time. Hope everyone is good.
I have a rule that looks at a number of temperature sensors around the house. It simply sends a general alert if any of them fall below their threshold. (A basic “House is too cold” alert for when we’re away)
Generally, this has worked well. But I was wondering if there’s a way to make the message somewhat dynamic without creating separate rules for each sensor.
E.g. “House is too cold due to Sump Temperature below 45 degrees.”
I thought I remember reading about someone doing this in the past but couldn’t find it.
Thanks for any ideas!
After upgrade from 24366 to 25016 toggle on Vera (openLuup) lock entity doesn't seem to work.
VeraController log level 5
24366:
25016:
[latest-25016]2025-01-20T20:30:25.457Z <VeraController:INFO> VeraController#vera perform action toggle.toggle on Lock#vera>device_10016 with [Object]{ } [latest-25016]2025-01-20T20:30:25.458Z <VeraController:5:VeraController.js:1210> VeraController#vera no configured implementation for toggle.toggle on Lock#vera>device_10016; calling super [latest-25016]2025-01-20T20:30:25.458Z <VeraController:INFO> VeraController#vera perform action lock.set on Lock#vera>device_10016 with [Object]{ "state": false } [latest-25016]2025-01-20T20:30:25.461Z <VeraController:5:VeraController.js:1255> VeraController#vera sending action request [Object]{ "newTargetValue": "0", "DeviceNum": 10016, "id": "action", "serviceId": "urn:upnp-org:serviceId:DoorLock1", "action": "SetTarget" } [latest-25016]2025-01-20T20:30:25.461Z <VeraController:5:VeraController.js:515> [VeraController:verarequest] requesting http://127.0.0.1:3480/data_request?newTargetValue=0&DeviceNum=10016&id=action&serviceId=urn%3Aupnp-org%3AserviceId%3ADoorLock1&action=SetTarget&output_format=json&_r=1737405025461 ([Object]{ }) [latest-25016]2025-01-20T20:30:25.463Z <VeraController:NOTICE> VeraController#vera action lock.set([Object]{ "state": false }) on Lock#vera>device_10016 succeededI tried to log an issue in Mantis Bug Tracker but I can't log in anymore?
Trying to understand what cause a local expresssion to be evaluated. I have read the manual but I am still not clear about it. Using the test rule below, I can see in the log that the rule is being automatically evaluated every time the temperature entity is changing. That is great...
What I am trying to understand is why the expression is not evaluated based on time as well since the "case" statement has time dependencies.
Any help would be appreciated
I have the following test rule:
eba6a3ea-ff61-4610-88c9-9b9864f11ff8-Screenshot 2025-01-21 095244.png
2d9c1ff5-7b73-4005-b324-9029c2709db9-Screenshot 2025-01-21 095302.png
Here is the expressioncode:
vFrom1 = "09:25:00", vFrom2 = "09:30:00", vFrom3 = "09:41:00", vTo = "10:55:00", # Get current time (format HH:MM:SS) vToDay = strftime("%H:%M:%S"), #Get current house temperature CurrentHouseTemp = getEntity( "hass>Thermostat2 " ).attributes.temperature_sensor.value, case when CurrentHouseTemp <= 19 and vToDay >= vFrom1 && vToDay <= vTo: "true1" # From1 when CurrentHouseTemp <= 20 and vToDay >= vFrom2 && vToDay <= vTo: "true2" # From2 when CurrentHouseTemp < 26 and vToDay >= vFrom3 && vToDay <= vTo: "true3" # From3 else "false" endAnd then MSR...
My first issue: I'm logged into the msr CT as reactor (I used the suggested username just to keep things simple as this is new space for me and I was high off my success of migrating HA over).
When I run
docker pull toggledbits/reactor:latest-amd64... it assigns the \reactor\ subdirectory where installed root ownership. I am absolutely logged in with the correct non-root user.
1c58aead-85ca-4b2c-8f48-c3d1f57d7fe3-image.png
Second issue: I copied over the following folders:
67e7e4a5-cee8-4de1-90c7-1df35f1070b9-image.png
When MSR loads, all of my Global Expressions are missing.
Third issue:
All controllers connect wonderfully (Hubitat, etc)... except HA.
After changing ownership of the logs to reactor again I can see this when MSR calls HA:
Yes, I created a fresh new long-lived access token for the MSR containerized install and updated the reactor.yaml config file correctly.
Honestly, all-in-all, for my total lack of expertise here I'm very pleased that I only have these three issues. But they are def blockers atm.
My RPi bare metal install of MSR hooked right up to the new HA and is humming along just fine (I used hostnames were possible and shuffled some IPs in other places so I wouldn't run into things later that were mapped incorrectly that I'd forgotten about.)
Proxmox 8.3.2 MSR lives in an Ubuntu 24.04 Proxmox container MSR is latest docker versionWhat else can I provide to those smarter than me here?
Reactor (Multi-hub) latest-24366-3de60836
Running on Proxmox 8 VM
Ubuntu 22.04.5 LTS
Docker version 27.5.0, build a187fa5
Docker Compose version v2.32.3
Browsers being used on Mac OS Sequoia: Safari, Firefox also occurs with Safari on iPhone 16 Pro 18.2.1
This occurs on two different instances of MSR running at two different locations having the same environment detailed above.
When I select "Reactions->Create Reaction" I get an error window with a red “Runtime Error:” banner. Note that I can edit and save existing Reactions
—-------------------<SNIP>————————————
Runtime Error:
@http://192.168.119.137:8111/reactor/en-US/lib/js/reactor-ui-reactions.js:445:34
You may report this error, but do not screen shot it. Copy-paste the complete text. Remember to include a description of the operation you were performing in as much detail as possible. Report using the Reactor Bug Tracker (in your left navigation) or at the SmartHome Community.
---------------------</SNIP>————————
apt update, apt upgrade, reboot have been performed as well as
docker system prune -a
docker compose down
docker compose up -d
Many thanks in advance,
-bh
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.I may have posted this in the wrong section. MSR running on Bare metal Debian bullseye. Both Openluup and MSR are on the same device (an Intel NUC) at IP 192.168.70.249. Any suggestions as to where I go to resolve?
TIA
Happy new year, everyone! Hope all are well!
Looking for some pointers troubleshooting a slightly puzzling to me issue. When digging around on a different issue I noticed this happening regularly in the MSR logs:
[latest-24366]2025-01-10T19:50:07.630Z <Engine:NOTICE> Starting reaction Garden lights on when the doors are open<SET> (rule-lb2h69nb:S) [latest-24366]2025-01-10T19:50:07.630Z <VeraController:INFO> VeraController#vera perform action power_switch.on on Switch#vera>device_20060 with [Object]{ } [latest-24366]2025-01-10T19:50:07.630Z <VeraController:INFO> VeraController#vera perform action power_switch.set on Switch#vera>device_20060 with [Object]{ "state": true } [latest-24366]2025-01-10T19:50:07.670Z <VeraController:NOTICE> VeraController#vera action power_switch.set([Object]{ "state": true }) on Switch#vera>device_20060 succeeded [latest-24366]2025-01-10T19:50:07.671Z <Engine:INFO> Resuming reaction Garden lights on when the doors are open<SET> (rule-lb2h69nb:S) from step 1 [latest-24366]2025-01-10T19:50:07.672Z <Engine:NOTICE> Garden lights on when the doors are open<SET> delaying until 1736538787672<10/01/2025, 19:53:07> [latest-24366]2025-01-10T19:50:19.595Z <Rule:INFO> Garden lights on when the doors are open (rule-lb2h69nb in Outside Lights) evaluated; rule state transition from SET to RESET! [latest-24366]2025-01-10T19:52:16.506Z <Rule:INFO> Garden lights on when the doors are open (rule-lb2h69nb in Outside Lights) evaluated; rule state transition from RESET to SET! [latest-24366]2025-01-10T19:52:16.515Z <Engine:INFO> [Engine]Engine#1 not enqueueing rule-lb2h69nb:S: already in queue with status 2 [latest-24366]2025-01-10T19:52:20.823Z <Rule:INFO> Garden lights on when the doors are open (rule-lb2h69nb in Outside Lights) evaluated; rule state transition from SET to RESET! [latest-24366]2025-01-10T19:53:07.676Z <Engine:INFO> Resuming reaction Garden lights on when the doors are open<SET> (rule-lb2h69nb:S) from step 2 [latest-24366]2025-01-10T19:53:07.677Z <VeraController:INFO> VeraController#vera perform action power_switch.off on Switch#vera>device_20060 with [Object]{ } [latest-24366]2025-01-10T19:53:07.678Z <VeraController:INFO> VeraController#vera perform action power_switch.set on Switch#vera>device_20060 with [Object]{ "state": false } [latest-24366]2025-01-10T19:53:07.719Z <VeraController:NOTICE> VeraController#vera action power_switch.set([Object]{ "state": false }) on Switch#vera>device_20060 succeeded [latest-24366]2025-01-10T19:53:07.720Z <Engine:INFO> Resuming reaction Garden lights on when the doors are open<SET> (rule-lb2h69nb:S) from step 3 [latest-24366]2025-01-10T19:53:07.721Z <Engine:INFO> Garden lights on when the doors are open<SET> all actions completed. [latest-24366]2025-01-10T19:55:04.468Z <VeraController:ERR> VeraController#vera update request failed: [FetchError] network timeout at: http://192.168.70.249:3480/data_request?id=status&Timeout=15&DataVersion=416912953&MinimumDelay=50&output_format=json&_r=1736538886459 [-] [latest-24366]2025-01-10T19:55:09.646Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20050: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20050) [-] [latest-24366]2025-01-10T19:55:09.646Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.646Z <VeraController:CRIT> *Entity#vera>device_20050 [latest-24366]2025-01-10T19:55:09.656Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20570: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20570) [-] [latest-24366]2025-01-10T19:55:09.656Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.656Z <VeraController:CRIT> *Entity#vera>device_20570 [latest-24366]2025-01-10T19:55:09.678Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20610: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20610) [-] [latest-24366]2025-01-10T19:55:09.679Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.679Z <VeraController:CRIT> *Entity#vera>device_20610 [latest-24366]2025-01-10T19:55:09.744Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20631: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20631) [-] [latest-24366]2025-01-10T19:55:09.744Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.744Z <VeraController:CRIT> *Entity#vera>device_20631 [latest-24366]2025-01-10T19:55:09.889Z <VeraController:NOTICE> VeraController#vera reload detected! [latest-24366]2025-01-10T19:55:09.910Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20050: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20050) [-] [latest-24366]2025-01-10T19:55:09.910Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.910Z <VeraController:CRIT> *Entity#vera>device_20050 [latest-24366]2025-01-10T19:55:09.935Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20570: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20570) [-] [latest-24366]2025-01-10T19:55:09.936Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.936Z <VeraController:CRIT> *Entity#vera>device_20570 [latest-24366]2025-01-10T19:55:09.937Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20610: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20610) [-] [latest-24366]2025-01-10T19:55:09.937Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.937Z <VeraController:CRIT> *Entity#vera>device_20610 [latest-24366]2025-01-10T19:55:09.939Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20631: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20631) [-] [latest-24366]2025-01-10T19:55:09.939Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.939Z <VeraController:CRIT> *Entity#vera>device_20631 [latest-24366]2025-01-10T19:55:09.968Z <Controller:INFO> VeraController#vera 0 dead entities older than 86400000s purged [latest-24366]2025-01-10T19:55:10.037Z <VeraController:NOTICE> VeraController#vera reload detected!That repeats until something like this:
[latest-24366]2025-01-10T19:55:10.049Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20050: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20050) [-] [latest-24366]2025-01-10T19:55:10.049Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:10.049Z <VeraController:CRIT> *Entity#vera>device_20050 [latest-24366]2025-01-10T19:55:10.053Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20570: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20570) [-] [latest-24366]2025-01-10T19:55:10.053Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:10.053Z <VeraController:CRIT> *Entity#vera>device_20570 [latest-24366]2025-01-10T19:55:10.062Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20610: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20610) [-] [latest-24366]2025-01-10T19:55:10.062Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:10.062Z <VeraController:CRIT> *Entity#vera>device_20610 [latest-24366]2025-01-10T19:55:10.112Z <VeraController:WARN> VeraController#vera failed to apply attribute scene_activation.scene_id to Entity#vera>device_20631: [TypeError] Can't set NaN on attribute scene_activation.scene_id (vera>device_20631) [-] [latest-24366]2025-01-10T19:55:10.112Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:10.113Z <VeraController:CRIT> *Entity#vera>device_20631 [latest-24366]2025-01-10T20:00:05.003Z <Engine:INFO> [Engine]Engine#1 master timer tick, local time "10/01/2025 20:00:05" (TZ offset 0 mins from UTC) [latest-24366]2025-01-10T20:13:51.872Z <Rule:INFO> No motion in Cinema (rule-m4ocglke in Cinema Environment) evaluated; rule state transition from SET to RESET! [latest-24366]2025-01-10T20:13:51.882Z <Rule:INFO> Cinema Heater On (rule-m4ocf1di in Cinema Environment) evaluated; rule state transition from RESET to SET! [latest-24366]2025-01-10T20:13:51.888Z <Engine:INFO> Enqueueing "Cinema Heater On<SET>" (rule-m4ocf1di:S)And the errors / reloads just stop.
From Openluup:
2025-01-10 19:49:56.379 luup_log:63: BroadLink_Mk2 debug: RM3 Mini - IR 1: urn:schemas-micasaverde-com:device:IrTransmitter:1 2025-01-10 19:50:00.085 luup_log:0: 14Mb, 1.7%cpu, 36.1days 2025-01-10 19:50:07.591 luup.variable_set:: 20160.urn:micasaverde-com:serviceId:EnergyMetering1.KWH was: 18.6793008 now: 18.6805008 #hooks:0 2025-01-10 19:50:07.591 luup.variable_set:: 20160.urn:micasaverde-com:serviceId:EnergyMetering1.KWHReading was: 1736538000 now: 1736538600 #hooks:0 2025-01-10 19:50:07.591 luup.variable_set:: 20160.urn:micasaverde-com:serviceId:EnergyMetering1.Watts was: 7.4 now: 7.3 #hooks:0 2025-01-10 19:50:07.591 luup.variable_set:: 20170.urn:micasaverde-com:serviceId:EnergyMetering1.KWH was: 32.2417984 now: 32.2470016 #hooks:0 2025-01-10 19:50:07.591 luup.variable_set:: 20170.urn:micasaverde-com:serviceId:EnergyMetering1.KWHReading was: 1736538000 now: 1736538600 #hooks:0 2025-01-10 19:50:07.591 luup.variable_set:: 20330.urn:micasaverde-com:serviceId:EnergyMetering1.KWHReading was: 1736538000 now: 1736538600 #hooks:0 2025-01-10 19:50:07.592 luup.variable_set:: 20770.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 0 now: 1 #hooks:0 2025-01-10 19:50:07.592 luup.variable_set:: 20770.urn:micasaverde-com:serviceId:SecuritySensor1.LastTrip was: 1736534850 now: 1736538607 #hooks:0 2025-01-10 19:50:07.593 openLuup.server:: request completed (3392 bytes, 1 chunks, 12875 ms) tcp{client}: 0x55c3299a9cf8 2025-01-10 19:50:07.618 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c3299a9cf8 2025-01-10 19:50:07.624 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329d0a5b8 2025-01-10 19:50:07.624 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912906&MinimumDelay=50&output_format=json&_r=1736538607623 HTTP/1.1 tcp{client}: 0x55c329d0a5b8 2025-01-10 19:50:07.632 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c3292ed678 2025-01-10 19:50:07.633 openLuup.server:: GET /data_request?newTargetValue=1&DeviceNum=20060&id=action&serviceId=urn%3Aupnp-org%3AserviceId%3ASwitchPower1&action=SetTarget&output_format=json&_r=1736538607631 HTTP/1.1 tcp{client}: 0x55c3 292ed678 2025-01-10 19:50:07.633 luup.call_action:: 20060.urn:upnp-org:serviceId:SwitchPower1.SetTarget 2025-01-10 19:50:07.633 luup.call_action:: action will be handled by parent: 37 2025-01-10 19:50:07.633 luup.variable_set:: 20060.urn:upnp-org:serviceId:SwitchPower1.Target was: 0 now: 1 #hooks:0 2025-01-10 19:50:07.669 openLuup.server:: request completed (35 bytes, 1 chunks, 35 ms) tcp{client}: 0x55c3292ed678 2025-01-10 19:50:07.673 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c3292ed678 2025-01-10 19:50:07.776 openLuup.server:: request completed (821 bytes, 1 chunks, 151 ms) tcp{client}: 0x55c329d0a5b8 2025-01-10 19:50:07.784 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329d0a5b8 2025-01-10 19:50:07.795 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c3287bc8f8 2025-01-10 19:50:07.796 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912907&MinimumDelay=50&output_format=json&_r=1736538607794 HTTP/1.1 tcp{client}: 0x55c3287bc8f8 2025-01-10 19:50:08.644 luup.variable_set:: 20060.urn:upnp-org:serviceId:SwitchPower1.Status was: 0 now: 1 #hooks:0 2025-01-10 19:50:08.950 openLuup.server:: request completed (821 bytes, 1 chunks, 1154 ms) tcp{client}: 0x55c3287bc8f8 2025-01-10 19:50:08.958 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c3287bc8f8 2025-01-10 19:50:08.969 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c3297e95a8 2025-01-10 19:50:08.970 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912908&MinimumDelay=50&output_format=json&_r=1736538608969 HTTP/1.1 tcp{client}: 0x55c3297e95a8 2025-01-10 19:50:19.181 luup.variable_set:: 20770.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 1 now: 0 #hooks:0 2025-01-10 19:50:19.585 openLuup.server:: request completed (832 bytes, 1 chunks, 10615 ms) tcp{client}: 0x55c3297e95a8 2025-01-10 19:50:19.602 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c3297e95a8 2025-01-10 19:50:19.605 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328d298a8 2025-01-10 19:50:19.605 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912909&MinimumDelay=50&output_format=json&_r=1736538619604 HTTP/1.1 tcp{client}: 0x55c328d298a8 2025-01-10 19:50:34.950 openLuup.server:: request completed (593 bytes, 1 chunks, 15344 ms) tcp{client}: 0x55c328d298a8 2025-01-10 19:50:34.953 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c328d298a8 2025-01-10 19:50:34.965 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328c48a58 2025-01-10 19:50:34.966 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912909&MinimumDelay=50&output_format=json&_r=1736538634964 HTTP/1.1 tcp{client}: 0x55c328c48a58 2025-01-10 19:50:34.989 luup.variable_set:: 25019.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 0 now: 1 #hooks:0 2025-01-10 19:50:34.990 luup.variable_set:: 25019.urn:micasaverde-com:serviceId:SecuritySensor1.LastTrip was: 1736534437 now: 1736538634 #hooks:0 2025-01-10 19:50:35.094 openLuup.server:: request completed (975 bytes, 1 chunks, 127 ms) tcp{client}: 0x55c328c48a58 2025-01-10 19:50:35.101 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c328c48a58 2025-01-10 19:50:35.113 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c32985e298 2025-01-10 19:50:35.113 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912911&MinimumDelay=50&output_format=json&_r=1736538635111 HTTP/1.1 tcp{client}: 0x55c32985e298 2025-01-10 19:50:40.255 luup.variable_set:: 25021.urn:micasaverde-com:serviceId:LightSensor1.CurrentLevel was: 0 now: 30 #hooks:1 2025-01-10 19:50:40.256 scheduler.watch_callback:: 25021.urn:micasaverde-com:serviceId:LightSensor1.CurrentLevel called [20]DataWatcherCallback() function: 0x55c3288a8d20 2025-01-10 19:50:40.460 openLuup.server:: request completed (835 bytes, 1 chunks, 5346 ms) tcp{client}: 0x55c32985e298 2025-01-10 19:50:40.472 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c32985e298 2025-01-10 19:50:40.478 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329b28238 2025-01-10 19:50:40.479 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912912&MinimumDelay=50&output_format=json&_r=1736538640478 HTTP/1.1 tcp{client}: 0x55c329b28238 2025-01-10 19:50:44.471 luup.variable_set:: 25007.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 0 now: 1 #hooks:1 2025-01-10 19:50:44.472 luup.variable_set:: 25007.urn:micasaverde-com:serviceId:SecuritySensor1.LastTrip was: 1736538400 now: 1736538644 #hooks:0 2025-01-10 19:50:44.472 scheduler.watch_callback:: 25007.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped called [20]DataWatcherCallback() function: 0x55c3288a8d20 2025-01-10 19:50:44.775 openLuup.server:: request completed (975 bytes, 1 chunks, 4296 ms) tcp{client}: 0x55c329b28238 2025-01-10 19:50:44.775 openLuup.server:: request completed (975 bytes, 1 chunks, 4296 ms) tcp{client}: 0x55c329b28238 2025-01-10 19:50:44.782 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329b28238 2025-01-10 19:50:44.793 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328f1e968 2025-01-10 19:50:44.793 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912914&MinimumDelay=50&output_format=json&_r=1736538644791 HTTP/1.1 tcp{client}: 0x55c328f1e968 2025-01-10 19:51:00.122 openLuup.server:: request completed (593 bytes, 1 chunks, 15328 ms) tcp{client}: 0x55c328f1e968 2025-01-10 19:51:00.125 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c328f1e968 2025-01-10 19:51:00.136 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c32995b318 2025-01-10 19:51:00.136 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912914&MinimumDelay=50&output_format=json&_r=1736538660134 HTTP/1.1 tcp{client}: 0x55c32995b318 2025-01-10 19:51:15.481 openLuup.server:: request completed (593 bytes, 1 chunks, 15344 ms) tcp{client}: 0x55c32995b318 2025-01-10 19:51:15.484 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c32995b318 2025-01-10 19:51:15.495 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c32998b068 2025-01-10 19:51:15.497 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912914&MinimumDelay=50&output_format=json&_r=1736538675493 HTTP/1.1 tcp{client}: 0x55c32998b068 2025-01-10 19:51:30.869 openLuup.server:: request completed (593 bytes, 1 chunks, 15371 ms) tcp{client}: 0x55c32998b068 2025-01-10 19:51:30.872 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c32998b068 2025-01-10 19:51:30.884 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c32905bda8 2025-01-10 19:51:30.885 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912914&MinimumDelay=50&output_format=json&_r=1736538690882 HTTP/1.1 tcp{client}: 0x55c32905bda8 2025-01-10 19:51:32.886 luup.variable_set:: 20380.urn:upnp-org:serviceId:TemperatureSensor1.CurrentTemperature was: 21 now: 22 #hooks:0 2025-01-10 19:51:33.090 openLuup.server:: request completed (841 bytes, 1 chunks, 2205 ms) tcp{client}: 0x55c32905bda8 2025-01-10 19:51:33.100 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c32905bda8 2025-01-10 19:51:33.112 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328de0d58 2025-01-10 19:51:33.112 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912915&MinimumDelay=50&output_format=json&_r=1736538693111 HTTP/1.1 tcp{client}: 0x55c328de0d58 2025-01-10 19:51:36.064 luup.variable_set:: 25007.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 1 now: 0 #hooks:1 2025-01-10 19:51:36.065 scheduler.watch_callback:: 25007.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped called [20]DataWatcherCallback() function: 0x55c3288a8d20 2025-01-10 19:51:36.369 openLuup.server:: request completed (832 bytes, 1 chunks, 3256 ms) tcp{client}: 0x55c328de0d58 2025-01-10 19:51:36.377 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c328de0d58 2025-01-10 19:51:36.387 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329054188 2025-01-10 19:51:36.388 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912916&MinimumDelay=50&output_format=json&_r=1736538696386 HTTP/1.1 tcp{client}: 0x55c329054188 2025-01-10 19:51:37.134 luup.variable_set:: 20380.urn:upnp-org:serviceId:TemperatureSensor1.CurrentTemperature was: 22 now: 21 #hooks:0 2025-01-10 19:51:37.540 openLuup.server:: request completed (841 bytes, 1 chunks, 1152 ms) tcp{client}: 0x55c329054188 2025-01-10 19:51:37.553 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329054188 2025-01-10 19:51:37.566 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328d97568 2025-01-10 19:51:37.566 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912917&MinimumDelay=50&output_format=json&_r=1736538697564 HTTP/1.1 tcp{client}: 0x55c328d97568 2025-01-10 19:51:41.367 luup.variable_set:: 20380.urn:upnp-org:serviceId:TemperatureSensor1.CurrentTemperature was: 21 now: 22 #hooks:0 2025-01-10 19:51:41.874 openLuup.server:: request completed (841 bytes, 1 chunks, 4307 ms) tcp{client}: 0x55c328d97568 2025-01-10 19:51:41.884 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c328d97568 2025-01-10 19:51:41.895 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329385678 2025-01-10 19:51:41.896 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912918&MinimumDelay=50&output_format=json&_r=1736538701894 HTTP/1.1 tcp{client}: 0x55c329385678 2025-01-10 19:51:57.168 openLuup.server:: request completed (593 bytes, 1 chunks, 15272 ms) tcp{client}: 0x55c329385678 2025-01-10 19:51:57.171 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329385678 2025-01-10 19:51:57.183 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329b092b8 2025-01-10 19:51:57.184 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912918&MinimumDelay=50&output_format=json&_r=1736538717182 HTTP/1.1 tcp{client}: 0x55c329b092b8 2025-01-10 19:52:00.124 luup_log:0: 14Mb, 1.6%cpu, 36.1days 2025-01-10 19:52:00.476 openLuup.server:: request completed (1841 bytes, 1 chunks, 3292 ms) tcp{client}: 0x55c329b092b8 2025-01-10 19:52:00.483 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329b092b8 2025-01-10 19:52:00.495 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c3297be088 2025-01-10 19:52:00.495 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912929&MinimumDelay=50&output_format=json&_r=1736538720494 HTTP/1.1 tcp{client}: 0x55c3297be088 2025-01-10 19:52:09.867 luup.variable_set:: 25021.urn:micasaverde-com:serviceId:LightSensor1.CurrentLevel was: 30 now: 0 #hooks:1 2025-01-10 19:52:09.868 scheduler.watch_callback:: 25021.urn:micasaverde-com:serviceId:LightSensor1.CurrentLevel called [20]DataWatcherCallback() function: 0x55c3288a8d20 2025-01-10 19:52:10.071 openLuup.server:: request completed (834 bytes, 1 chunks, 9575 ms) tcp{client}: 0x55c3297be088 2025-01-10 19:52:10.079 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c3297be088 2025-01-10 19:52:10.088 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c329c16a08 2025-01-10 19:52:10.089 openLuup.server:: GET /data_request?id=status&Timeout=15&DataVersion=416912930&MinimumDelay=50&output_format=json&_r=1736538730087 HTTP/1.1 tcp{client}: 0x55c329c16a08 2025-01-10 19:52:16.194 luup.variable_set:: 20770.urn:micasaverde-com:serviceId:SecuritySensor1.Tripped was: 0 now: 1 #hooks:0 2025-01-10 19:52:16.195 luup.variable_set:: 20770.urn:micasaverde-com:serviceId:SecuritySensor1.LastTrip was: 1736538607 now: 1736538736 #hooks:0 2025-01-10 19:52:16.498 openLuup.server:: request completed (976 bytes, 1 chunks, 6409 ms) tcp{client}: 0x55c329c16a08 2025-01-10 19:52:16.515 openLuup.io.server:: HTTP:3480 connection closed openLuup.server.receive closed tcp{client}: 0x55c329c16a08 2025-01-10 19:52:16.516 openLuup.io.server:: HTTP:3480 connection from 192.168.70.249 tcp{client}: 0x55c328dbad18Nothing I can see indicating that Openluup is reloading?
.249 IP address is the internal IP of the NUC that hosts both Openluup and MSR.
Any thoughts as to how I can troubleshoot this? It's not a big deal, but would like to get to the bottom of it.
I should add that all the devices listed in entries like this:
[latest-24366]2025-01-10T19:55:09.744Z <VeraController:INFO> VeraController#vera class scene_controller meta [Object]{ "source": "urn:micasaverde-com:serviceId:SceneController1/sl_SceneActivated", "expr": "int(value)" } orig final NaN [latest-24366]2025-01-10T19:55:09.744Z <VeraController:CRIT> *Entity#vera>device_20631Are the tamper switches on Fibaro FGMS001 multifunction detectors, of which I have 4, and they correspond exactly to the devices listed.
TIA
C
Hi
I was looking at an old rule and I wanted to edit it, to add another Constraint, however I cannot seem to do it.
On this screen shot you can see an existing entry in the Constraints and on its pull down menu the "Changes" option is available.
09735de3-8e92-4e12-bfa2-5191f48924a7-image.png
However on the new line I just added I have no changes option in its pull down menu.
d85c4067-880e-4281-a12b-dac4d316a4da-image.png
Here is the original now locked post about this topic.
https://smarthome.community/topic/395/contact-sensor-opened-1-minute-ago-how?_=1736354690742
If you look on the old screen shots on that post, I was using the "changes" operator. Like this:
a1262e01-d3fd-4723-872f-872f1f6d9899-image.png
However today when I edited this rule the operators are showing as == and not as changes on all the entries in the Constraints area.
Also the old entries now say -- and the value is blank. But on the new line I just added it says that is not valid, so not sure how the old lines are like that.
a458d52d-214d-4862-a2b7-d31009f89cde-image.png
So I am a bit confused what happened.
Thanks
@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) ``Not sure that it is the same issue but just got this on built 24302 when running a reaction for testing purpose. Despite the error message, the reaction ran properly.
Error: Command timeout (195 start_reaction)
at _ClientAPI._commandTimeout (http://192.168.2.163:8111/client/ClientAPI.js:552:136)
1a3422eb-d760-4609-a740-a40d04a6bab2-Screenshot 2024-12-29 231851.png
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.
EzloController error
-
@toggledbits I'm still having some problem with variables being referenced when deleted. Looks like the Engine is looking for an old global expression (undefined)? that I think I had a time ago with
matchEntities
and
@ 2021-10-04T14:11:00.003Z
This rule triggers: Rule:INFO Notifiering - Ezlo devices (Rule#rule-ku32xyj5) SET!
I've now put a sustianed for 3 secs on the first variable trigger to ignore flapping.
None of the other rules triggered in the log snippet has any local expression or referenced global expressions and the "Error: Object does not exist" is present from:
2021-10-04T10:31:08.900Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:31:08.901Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:31:08.905Z <Engine:5:Engine.js:948> Engine#1 set global Medeltemp; value=(number)22 2021-10-04T10:31:08.908Z <Engine:5:Engine.js:948> Engine#1 set global Luftfuktighet; value=(number)0.8148148148148148 2021-10-04T10:31:10.074Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:31:10.075Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:31:25.061Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:31:25.061Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:00.014Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T10:32:00.027Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T10:32:09.094Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:09.095Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:10.297Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:10.297Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:24.996Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:32:24.996Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:00.002Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T10:33:00.015Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T10:33:09.142Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:09.143Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:09.148Z <Engine:5:Engine.js:948> Engine#1 set global Luftfuktighet; value=(number)0.7901234567901234 2021-10-04T10:33:10.387Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:10.388Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:25.394Z <Engine:5:Engine.js:1108> Engine#1 var Medeltemp dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:25.394Z <Engine:5:Engine.js:1108> Engine#1 var Luftfuktighet dependency entity-changed Entity#vera>device_30005 2021-10-04T10:33:30.894Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a0373129e0715cf4a765f 2021-10-04T10:33:30.897Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/homebridge/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/homebridge/reactor/server/lib/Engine.js:1109:59) at /home/homebridge/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/homebridge/reactor/server/lib/MessageBus.js:96:47) at /home/homebridge/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/homebridge/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/homebridge/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/homebridge/reactor/server/lib/Entity.js:248:207)
Where everything above the error is just repeating.
Log from rule SET in next post...
-
First lines looks interesting
2021-10-04T14:10:33.692Z <EzloController:WARN> EzloController#ezlo warning: update parameter serviceNotification for Entity#ezlo>device_603a0367129e0715cf4a7604 not previously defined! (value now (boolean)false) 2021-10-04T14:10:33.693Z <EzloController:WARN> EzloController#ezlo warning: update parameter syncNotification for Entity#ezlo>device_603a0367129e0715cf4a7604 not previously defined! (value now (boolean)false) 2021-10-04T14:10:33.694Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a0367129e0715cf4a7604 2021-10-04T14:10:33.697Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:10:35.317Z <EzloController:WARN> EzloController#ezlo warning: update parameter serviceNotification for Entity#ezlo>device_603a036a129e0715cf4a761d not previously defined! (value now (boolean)false) 2021-10-04T14:10:35.318Z <EzloController:WARN> EzloController#ezlo warning: update parameter syncNotification for Entity#ezlo>device_603a036a129e0715cf4a761d not previously defined! (value now (boolean)false) 2021-10-04T14:10:35.318Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036a129e0715cf4a761d 2021-10-04T14:10:35.318Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:10:35.439Z <EzloController:WARN> EzloController#ezlo warning: update parameter serviceNotification for Entity#ezlo>device_6107edd0129e071241a25469 not previously defined! (value now (boolean)false) 2021-10-04T14:10:35.439Z <EzloController:WARN> EzloController#ezlo warning: update parameter syncNotification for Entity#ezlo>device_6107edd0129e071241a25469 not previously defined! (value now (boolean)false) 2021-10-04T14:10:35.440Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_6107edd0129e071241a25469 2021-10-04T14:10:35.440Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:10:39.201Z <EzloController:WARN> EzloController#ezlo warning: update parameter serviceNotification for Entity#ezlo>device_603a60dc129e071231a7f95e not previously defined! (value now (boolean)false) 2021-10-04T14:10:39.201Z <EzloController:WARN> EzloController#ezlo warning: update parameter syncNotification for Entity#ezlo>device_603a60dc129e071231a7f95e not previously defined! (value now (boolean)false) 2021-10-04T14:10:39.203Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a60dc129e071231a7f95e 2021-10-04T14:10:39.205Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:11:00.002Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T14:11:00.003Z <Rule:INFO> Notifiering - Ezlo devices (Rule#rule-ku32xyj5) SET! 2021-10-04T14:11:00.005Z <Engine:5:Engine.js:1386> _process_reaction_queue() wake-up! 2021-10-04T14:11:00.005Z <Engine:INFO> Enqueueing "Notifiering - Ezlo devices<SET>" (rule-ku32xyj5:S) 2021-10-04T14:11:00.006Z <Engine:5:Engine.js:1246> Engine#1 enqueued reaction rule-ku32xyj5:S as 70 2021-10-04T14:11:00.006Z <Engine:5:Engine.js:1386> _process_reaction_queue() ending with 1 in queue; waiting for 1633356660006<10/4/2021, 4:11:00 PM> (next delayed task) 2021-10-04T14:11:00.013Z <Engine:INFO> Engine#1 matchEntities({ "controller": [ "ezlo" ], "capability": [ "x_ezlo_device" ], "group": [ ] }) took 0ms and returned 22 entities 2021-10-04T14:11:00.014Z <Rule:INFO> Notifiering - Ezlo devices (Rule#rule-ku32xyj5) RESET! 2021-10-04T14:11:00.015Z <Engine:5:Engine.js:1386> _process_reaction_queue() wake-up! 2021-10-04T14:11:00.015Z <Engine:5:Engine.js:1347> _process_reaction_queue() running task 70 { "tid": 70, "id": "rule-ku32xyj5:S", "rule": "rule-ku32xyj5", "__reaction": [RuleReaction#rule-ku32xyj5:S], "next_step": 0, "status": 0, "ts": 1633356660005, "parent": --null--, "__resolve": --function--, "__reject": --function--, "__promise": [object Promise], "halt": true } 2021-10-04T14:11:00.015Z <Engine:INFO> Halting reaction Notifiering - Ezlo devices<SET> (rule-ku32xyj5:S) at step 0 2021-10-04T14:11:00.016Z <Engine:NOTICE> Handling reaction halt request for Notifiering - Ezlo devices<SET> at step 0 2021-10-04T14:11:00.016Z <Engine:5:Engine.js:1351> _process_reaction_queue() task returned, new status -1; task 70 2021-10-04T14:11:00.016Z <Engine:NOTICE> Engine#1 entry 70 reaction rule-ku32xyj5:S: terminated 2021-10-04T14:11:00.016Z <Engine:CRIT> !terminated 2021-10-04T14:11:00.017Z <Engine:5:Engine.js:1386> _process_reaction_queue ending with 0 in queue; none delayed/ready; waiting 2021-10-04T14:11:00.021Z <Engine:INFO> Enqueueing "Notifiering - Ezlo devices<RESET>" (rule-ku32xyj5:R) 2021-10-04T14:11:00.021Z <Engine:5:Engine.js:1246> Engine#1 enqueued reaction rule-ku32xyj5:R as 71 2021-10-04T14:11:00.021Z <Engine:5:Engine.js:1386> _process_reaction_queue() wake-up! 2021-10-04T14:11:00.022Z <Engine:5:Engine.js:1347> _process_reaction_queue() running task 71 { "tid": 71, "id": "rule-ku32xyj5:R", "rule": "rule-ku32xyj5", "__reaction": [RuleReaction#rule-ku32xyj5:R], "next_step": 0, "status": 0, "ts": 1633356660021, "parent": --null--, "__resolve": --function--, "__reject": --function--, "__promise": [object Promise] } 2021-10-04T14:11:00.022Z <Engine:NOTICE> Starting reaction Notifiering - Ezlo devices<RESET> (rule-ku32xyj5:R) 2021-10-04T14:11:00.023Z <Engine:5:Engine.js:1496> Engine#1 reaction rule-ku32xyj5:R step 0 notify Pushover with { "message": "Alla enheter svarar igen.", "profile": "MSR", "title": "Ezlo-enheter svarar igen.", "priority": "0" } 2021-10-04T14:11:00.023Z <NotifyPushover:5:NotifyPushover.js:216> NotifyPushover sending profile MSR notification request: Alla enheter svarar igen. 2021-10-04T14:11:00.024Z <Engine:INFO> Notifiering - Ezlo devices<RESET> all actions completed. 2021-10-04T14:11:00.024Z <Engine:5:Engine.js:1351> _process_reaction_queue() task returned, new status -1; task 71 2021-10-04T14:11:00.025Z <Engine:5:Engine.js:1386> _process_reaction_queue ending with 0 in queue; none delayed/ready; waiting 2021-10-04T14:11:00.647Z <NotifyPushover:5:NotifyPushover.js:224> NotifyPushover successful endpoint exchange (message sent) 2021-10-04T14:11:03.822Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036e129e0715cf4a763e 2021-10-04T14:11:03.825Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:11:03.828Z <Rule:INFO> Tänd i Källaren beroende på Ljus (Rule#rule-kmuwu2tk) RESET! 2021-10-04T14:11:03.835Z <Engine:5:Engine.js:1386> _process_reaction_queue() wake-up! 2021-10-04T14:11:03.836Z <Engine:INFO> Enqueueing "Tänd i Källaren beroende på Ljus<RESET>" (rule-kmuwu2tk:R) 2021-10-04T14:11:03.837Z <Engine:5:Engine.js:1246> Engine#1 enqueued reaction rule-kmuwu2tk:R as 72 2021-10-04T14:11:03.838Z <Engine:5:Engine.js:1386> _process_reaction_queue() ending with 1 in queue; waiting for 1633356663837<10/4/2021, 4:11:03 PM> (next delayed task) 2021-10-04T14:11:03.840Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036e129e0715cf4a763a 2021-10-04T14:11:03.842Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:11:03.845Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036e129e0715cf4a763a 2021-10-04T14:11:03.848Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:11:03.850Z <Engine:5:Engine.js:1386> _process_reaction_queue() wake-up! 2021-10-04T14:11:03.851Z <Engine:5:Engine.js:1347> _process_reaction_queue() running task 72 { "tid": 72, "id": "rule-kmuwu2tk:R", "rule": "rule-kmuwu2tk", "__reaction": [RuleReaction#rule-kmuwu2tk:R], "next_step": 0, "status": 0, "ts": 1633356663836, "parent": --null--, "__resolve": --function--, "__reject": --function--, "__promise": [object Promise] } 2021-10-04T14:11:03.852Z <Engine:NOTICE> Starting reaction Tänd i Källaren beroende på Ljus<RESET> (rule-kmuwu2tk:R) 2021-10-04T14:11:03.852Z <Engine:5:Engine.js:1416> Engine#1 reaction rule-kmuwu2tk:R handling group rule-kmuwu2tk:R-7pjfxee constraints state true 2021-10-04T14:11:03.852Z <Engine:5:Engine.js:1418> Engine#1 constraints OK for reaction rule-kmuwu2tk:R group rule-kmuwu2tk:R-7pjfxee, queueing 2021-10-04T14:11:03.853Z <Engine:5:Engine.js:1430> Engine#1 reaction rule-kmuwu2tk:R group rule-kmuwu2tk:R-7pjfxee enqueued, waiting for completion 2021-10-04T14:11:03.853Z <Engine:5:Engine.js:1351> _process_reaction_queue() task returned, new status 3; task 72 2021-10-04T14:11:03.855Z <Engine:5:Engine.js:1246> Engine#1 enqueued reaction rule-kmuwu2tk:R-7pjfxee as 73 2021-10-04T14:11:03.856Z <Engine:5:Engine.js:1386> _process_reaction_queue() ending with 2 in queue; waiting for 1633356663855<10/4/2021, 4:11:03 PM> (next delayed task) 2021-10-04T14:11:03.856Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036e129e0715cf4a763a 2021-10-04T14:11:03.857Z <default:CRIT> Error: Object does not exist Error: Object does not exist at Function.getInstance (/home/username/reactor/server/lib/GlobalExpression.js:130:27) at Engine._expr_dependency (/home/username/reactor/server/lib/Engine.js:1109:59) at /home/username/reactor/server/lib/MessageBus.js:99:208 at Array.forEach (<anonymous>) at MessageBus._sendToBus (/home/username/reactor/server/lib/MessageBus.js:96:47) at /home/username/reactor/server/lib/MessageBus.js:109:48 at new Promise (<anonymous>) at MessageBus.send (/home/username/reactor/server/lib/MessageBus.js:106:16) at Entity.publish (/home/username/reactor/server/lib/Observable.js:71:44) at Entity.deferNotifies (/home/username/reactor/server/lib/Entity.js:248:207) 2021-10-04T14:11:03.858Z <Engine:5:Engine.js:1108> Engine#1 var (undefined) dependency entity-changed Entity#ezlo>device_603a036e129e0715cf4a763a 2021-10-04T14:11:03.859Z <default:CRIT> Error: Object does not exist Error: Object does not exist
-
Is this on 21275?
-
@toggledbits Sorry, yes. latest-21275-df3d784
-
OK. I think I see this. I was at least able to reproduce one case. It's not to do with deleting global variables, or global variables at all, really; it. It has to do with the subcontexts that are created by lexpjs in
each
statements, and the MSR Engine looking for private data in the current context and not realizing that it was operating from a subcontext. And in this case, it was your rule expression that exposed the problem. Sounds messy, but not hard to fix. I think.Build coming later today.
FYI, just an observation on what you're doing in this rule expression:
join(each name in (each id in (matchEntities( { controller: 'ezlo', capability: 'x_ezlo_device' } )): getEntity( id ).attributes.x_ezlo_device.reachable == false ? id : null ): getEntity( name ).name, ', ' )
If you use a compound statement (
do...done
) as the body of a singleeach
loop, and store thegetEntity()
result in a temporary variable, you only need one loop, it looks a bit cleaner, and runs a lot faster (because you're only fetching the entity once):join( each id in matchEntities( { controller: 'ezlo', capability: 'x_ezlo_device' } ): do e=getEntity( id ), e.attributes.x_ezlo_device.reachable ? null : e.name done, ", " )
This compound statement loop first stores the result of
getEntity()
into a variablee
. This variable, since it is being defined by the loop, can only be used within the loop. But, as you can see on the next line, it can be used both to make thereachable
test, and to returnname
as the loop body result foreach
. Also note that since thereachable
attribute is already a boolean, you can use it directly (without a comparison against another boolean), you just need to reverse the ternary operands (so whenreachable
is true,null
is returned, and when not reachable, the entity name is returned). -
@toggledbits Ok, great explanation!
I do like cleaner expressions and will absolutely switch todo...done
, thank you for the example.
I knew it was doing double gets but each run took 0ms so I did not bother, but optimization is always welcomed.FYI: I have some devices paired that are not usable yet and they return x_ezlo_device.reachable=null so until they are integrated correctly I'll keep the boolean comparison for now.
-
Hi, updated MSR latest-21281-c4807c0
I have connection with ezloplus in set_anonymous_access: trueMSR starts to be connected and disconnected.
Ezlo is not connected
sys_system.state=false
`
[latest-21281]2021-10-08T20:29:30.398Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:29:33.849Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:29:33.850Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:29:33.850Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:29:38.850Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:29:38.851Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:29:38.851Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:29:59.226Z <Structure:WARN> Structure#1 promiseEntity(ezlo>housemode,30000) timeout! [latest-21281]2021-10-08T20:29:59.227Z <Rule:CRIT> Rule#rule-ks210svp failed subscription to ezlo>housemode [latest-21281]2021-10-08T20:29:59.227Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.251Z <Structure:WARN> Structure#1 promiseEntity(ezlo>housemode,30000) timeout! [latest-21281]2021-10-08T20:29:59.251Z <Rule:CRIT> Rule#rule-ks210svp failed subscription to ezlo>housemode [latest-21281]2021-10-08T20:29:59.252Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.252Z <Rule:5:Rule.js:704> Rule#rule-ks210svp start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.252Z <Rule:5:Rule.js:982> Rule#rule-ks210svp (v0 Function DayMode OverNight) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.252Z <Rule:5:Rule.js:986> Rule#rule-ks210svp._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.253Z <Rule:5:Rule.js:990> Rule#rule-ks210svp update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.253Z <Rule:5:Rule.js:914> Rule#rule-ks210svp evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:29:59.254Z <Rule:5:Rule.js:1002> Rule#rule-ks210svp._evaluate() trigger state now false (was false) [latest-21281]2021-10-08T20:29:59.259Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>housemode ReferenceError: Can't find entity ezlo>housemode at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1294:27) at Rule._evaluateGroup (/opt/reactor/server/lib/Rule.js:1658:99) at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1283:47) at Rule._evaluateConstraints (/opt/reactor/server/lib/Rule.js:1689:42) at Rule._evaluate (/opt/reactor/server/lib/Rule.js:1003:55) at processTicksAndRejections (internal/process/task_queues.js:95:5) at async /opt/reactor/server/lib/Rule.js:969:17 [latest-21281]2021-10-08T20:29:59.261Z <Structure:WARN> Structure#1 promiseEntity(ezlo>device_613e233f129e2912114c0941,30000) timeout! [latest-21281]2021-10-08T20:29:59.262Z <Rule:CRIT> Rule#rule-ktmit785 failed subscription to ezlo>device_613e233f129e2912114c0941 [latest-21281]2021-10-08T20:29:59.262Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.262Z <Rule:5:Rule.js:704> Rule#rule-ktmit785 start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.262Z <Rule:5:Rule.js:982> Rule#rule-ktmit785 (vT DLT 1 Bulb ID ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.263Z <Rule:5:Rule.js:986> Rule#rule-ktmit785._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.263Z <Rule:5:Rule.js:990> Rule#rule-ktmit785 update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.263Z <Rule:5:Rule.js:914> Rule#rule-ktmit785 evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:29:59.279Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>device_613e233f129e2912114c0941 ReferenceError: Can't find entity ezlo>device_613e233f129e2912114c0941 at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1294:27) at Rule._evaluateGroup (/opt/reactor/server/lib/Rule.js:1658:99) at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1283:47) at Rule._evaluateTriggers (/opt/reactor/server/lib/Rule.js:1675:38) at Rule._evaluate (/opt/reactor/server/lib/Rule.js:1001:55) at processTicksAndRejections (internal/process/task_queues.js:95:5) at async /opt/reactor/server/lib/Rule.js:969:17 [latest-21281]2021-10-08T20:29:59.280Z <Structure:WARN> Structure#1 promiseEntity(ezlo>device_613e2b02129e2912114c0993,30000) timeout! [latest-21281]2021-10-08T20:29:59.280Z <Rule:CRIT> Rule#rule-kthqmgb6 failed subscription to ezlo>device_613e2b02129e2912114c0993 [latest-21281]2021-10-08T20:29:59.280Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.280Z <Rule:5:Rule.js:704> Rule#rule-kthqmgb6 start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.281Z <Rule:5:Rule.js:982> Rule#rule-kthqmgb6 (vR4 DLT 1 Bulb ID ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.281Z <Rule:5:Rule.js:986> Rule#rule-kthqmgb6._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.281Z <Rule:5:Rule.js:990> Rule#rule-kthqmgb6 update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.282Z <Rule:5:Rule.js:914> Rule#rule-kthqmgb6 evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:29:59.284Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>device_613e2b02129e2912114c0993 ReferenceError: Can't find entity ezlo>device_613e2b02129e2912114c0993 at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1294:27) at Rule._evaluateGroup (/opt/reactor/server/lib/Rule.js:1658:99) at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1283:47) at Rule._evaluateTriggers (/opt/reactor/server/lib/Rule.js:1675:38) at Rule._evaluate (/opt/reactor/server/lib/Rule.js:1001:55) at processTicksAndRejections (internal/process/task_queues.js:95:5) at runNextTicks (internal/process/task_queues.js:64:3) at listOnTimeout (internal/timers.js:526:9) at processTimers (internal/timers.js:500:7) at async /opt/reactor/server/lib/Rule.js:969:17 [latest-21281]2021-10-08T20:29:59.285Z <Structure:WARN> Structure#1 promiseEntity(ezlo>device_613e2959129e2912114c098f,30000) timeout! [latest-21281]2021-10-08T20:29:59.285Z <Rule:CRIT> Rule#rule-kthqpda8 failed subscription to ezlo>device_613e2959129e2912114c098f [latest-21281]2021-10-08T20:29:59.286Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.286Z <Rule:5:Rule.js:704> Rule#rule-kthqpda8 start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.286Z <Rule:5:Rule.js:982> Rule#rule-kthqpda8 (vR4 DLT 3 Lux ID ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.287Z <Rule:5:Rule.js:986> Rule#rule-kthqpda8._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.287Z <Rule:5:Rule.js:990> Rule#rule-kthqpda8 update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.287Z <Rule:5:Rule.js:914> Rule#rule-kthqpda8 evaluateExpressions() with 1 expressions [latest-21281]2021-10-08T20:29:59.290Z <Rule:ERR> Rule#rule-kthqpda8: error evaluating expression test: TypeError: Cannot read property 'log' of null [latest-21281]2021-10-08T20:29:59.290Z <Rule:ERR> Rule#rule-kthqpda8: expression: round((abs(int( getEntity( "ezlo>device_613e2959129e2912114c098f" ).attributes.light_sensor.value ) * (100/300) -100) - int(( getEntity( "ezlo>device_613e2959129e2912114c098f" ).attributes.light_sensor.value * (100/300) ) - 100))/2) [latest-21281]2021-10-08T20:29:59.291Z <Rule:CRIT> TypeError: Cannot read property 'log' of null TypeError: Cannot read property 'log' of null at _0x2f8d77 (/opt/reactor/server/lib/Engine.js:984:21) at _run (/opt/reactor/common/lexp.js:1383:34) at _run (/opt/reactor/common/lexp.js:1338:33) at _run (/opt/reactor/common/lexp.js:1338:33) at _run (/opt/reactor/common/lexp.js:1338:33) at /opt/reactor/common/lexp.js:1381:33 at Array.forEach (<anonymous>) at _run (/opt/reactor/common/lexp.js:1380:28) at _run (/opt/reactor/common/lexp.js:1208:34) at _run (/opt/reactor/common/lexp.js:1208:34) [latest-21281]2021-10-08T20:29:59.295Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>device_613e2959129e2912114c098f ReferenceError: Can't find entity ezlo>device_613e2959129e2912114c098f at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1294:27) at Rule._evaluateGroup (/opt/reactor/server/lib/Rule.js:1658:99) at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1283:47) at Rule._evaluateTriggers (/opt/reactor/server/lib/Rule.js:1675:38) at Rule._evaluate (/opt/reactor/server/lib/Rule.js:1001:55) at processTicksAndRejections (internal/process/task_queues.js:95:5) at runNextTicks (internal/process/task_queues.js:64:3) at listOnTimeout (internal/timers.js:526:9) at processTimers (internal/timers.js:500:7) at async /opt/reactor/server/lib/Rule.js:969:17 [latest-21281]2021-10-08T20:29:59.296Z <Structure:WARN> Structure#1 promiseEntity(ezlo>device_613e2959129e2912114c0982,30000) timeout! [latest-21281]2021-10-08T20:29:59.296Z <Rule:CRIT> Rule#rule-kthqljcu failed subscription to ezlo>device_613e2959129e2912114c0982 [latest-21281]2021-10-08T20:29:59.296Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.296Z <Rule:5:Rule.js:704> Rule#rule-kthqljcu start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.297Z <Rule:5:Rule.js:982> Rule#rule-kthqljcu (vR4 DLT 2 Motion ID ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.297Z <Rule:5:Rule.js:986> Rule#rule-kthqljcu._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.297Z <Rule:5:Rule.js:990> Rule#rule-kthqljcu update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.297Z <Rule:5:Rule.js:914> Rule#rule-kthqljcu evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:29:59.299Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>device_613e2959129e2912114c0982 ReferenceError: Can't find entity ezlo>device_613e2959129e2912114c0982 at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1294:27) at Rule._evaluateGroup (/opt/reactor/server/lib/Rule.js:1658:99) at Rule._evaluateCondition (/opt/reactor/server/lib/Rule.js:1283:47) at Rule._evaluateTriggers (/opt/reactor/server/lib/Rule.js:1675:38) at Rule._evaluate (/opt/reactor/server/lib/Rule.js:1001:55) at processTicksAndRejections (internal/process/task_queues.js:95:5) at runNextTicks (internal/process/task_queues.js:64:3) at listOnTimeout (internal/timers.js:526:9) at processTimers (internal/timers.js:500:7) at async /opt/reactor/server/lib/Rule.js:969:17 [latest-21281]2021-10-08T20:29:59.300Z <Structure:WARN> Structure#1 promiseEntity(ezlo>device_614e0c2f129e29124dfcd825,30000) timeout! [latest-21281]2021-10-08T20:29:59.300Z <Rule:CRIT> Rule#rule-ktpv9g18 failed subscription to ezlo>device_614e0c2f129e29124dfcd825 [latest-21281]2021-10-08T20:29:59.300Z <Rule:CRIT> !timeout [latest-21281]2021-10-08T20:29:59.301Z <Rule:5:Rule.js:704> Rule#rule-ktpv9g18 start() dependencies resolved, performing initial evaluation [latest-21281]2021-10-08T20:29:59.301Z <Rule:5:Rule.js:982> Rule#rule-ktpv9g18 (vR3 DLT 1 Bulb ID) evaluate() acquiring mutex [latest-21281]2021-10-08T20:29:59.301Z <Rule:5:Rule.js:986> Rule#rule-ktpv9g18._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:29:59.301Z <Rule:5:Rule.js:990> Rule#rule-ktpv9g18 update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:29:59.301Z <Rule:5:Rule.js:914> Rule#rule-ktpv9g18 evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:29:59.304Z <Rule:CRIT> ReferenceError: Can't find entity ezlo>device_614e0c2f129e29124dfcd825
`
-
[latest-21281]2021-10-08T20:37:59.635Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:38:06.565Z <Rule:5:Rule.js:763> Rule#rule-ks56pa4y dependency notification timer-trigger Timer#rule-ks56pa4y from Timer#rule-ks56pa4y [latest-21281]2021-10-08T20:38:06.566Z <Rule:5:Rule.js:769> Rule#rule-ks56pa4y requesting eval; timer-trigger Timer#rule-ks56pa4y [latest-21281]2021-10-08T20:38:06.566Z <Rule:5:Rule.js:982> Rule#rule-ks56pa4y (vK DLT 8 Delay OFF ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:38:06.569Z <Rule:5:Rule.js:986> Rule#rule-ks56pa4y._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:38:06.570Z <Rule:5:Rule.js:990> Rule#rule-ks56pa4y update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:38:06.570Z <Rule:5:Rule.js:914> Rule#rule-ks56pa4y evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:38:06.571Z <Rule:5:Rule.js:1650> cond condcxc7czr evaluation state false->true [latest-21281]2021-10-08T20:38:06.576Z <Rule:5:Rule.js:1002> Rule#rule-ks56pa4y._evaluate() trigger state now false (was false) [latest-21281]2021-10-08T20:38:06.576Z <Rule:5:Rule.js:1004> Rule#rule-ks56pa4y._evaluate() constraints state true [latest-21281]2021-10-08T20:38:06.576Z <Rule:5:Rule.js:1013> Rule#rule-ks56pa4y rule state now false, changed no [latest-21281]2021-10-08T20:38:07.815Z <Rule:5:Rule.js:763> Rule#rule-ktrefqfy dependency notification timer-trigger Timer#rule-ktrefqfy from Timer#rule-ktrefqfy [latest-21281]2021-10-08T20:38:07.815Z <Rule:5:Rule.js:769> Rule#rule-ktrefqfy requesting eval; timer-trigger Timer#rule-ktrefqfy [latest-21281]2021-10-08T20:38:07.816Z <Rule:5:Rule.js:982> Rule#rule-ktrefqfy (vH DLT 8 Delay OFF ) evaluate() acquiring mutex [latest-21281]2021-10-08T20:38:07.816Z <Rule:5:Rule.js:986> Rule#rule-ktrefqfy._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:38:07.816Z <Rule:5:Rule.js:990> Rule#rule-ktrefqfy update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:38:07.816Z <Rule:5:Rule.js:914> Rule#rule-ktrefqfy evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:38:07.817Z <Rule:5:Rule.js:1650> cond condcxc7czr evaluation state false->true [latest-21281]2021-10-08T20:38:07.818Z <Rule:5:Rule.js:1002> Rule#rule-ktrefqfy._evaluate() trigger state now false (was false) [latest-21281]2021-10-08T20:38:07.818Z <Rule:5:Rule.js:1004> Rule#rule-ktrefqfy._evaluate() constraints state true [latest-21281]2021-10-08T20:38:07.818Z <Rule:5:Rule.js:1013> Rule#rule-ktrefqfy rule state now false, changed no [latest-21281]2021-10-08T20:38:19.635Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:38:19.636Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:38:19.636Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:38:28.614Z <wsapi:WARN> wsapi: timed out waiting for ping reply (pong) from client "172.17.0.1#4" [latest-21281]2021-10-08T20:38:28.615Z <wsapi:INFO> client "172.17.0.1#4" closed, code=1006, reason= [latest-21281]2021-10-08T20:38:49.688Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:38:49.688Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:38:49.688Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:38:54.226Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:39:14.695Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:39:14.695Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:39:14.696Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:39:44.747Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:39:44.747Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:39:44.748Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:40:14.758Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:40:14.758Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:40:14.759Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:40:44.809Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:40:44.810Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:40:44.810Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:41:19.824Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:41:19.824Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:41:19.825Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:41:39.101Z <wsapi:WARN> wsapi: timed out waiting for ping reply (pong) from client "172.17.0.1#5" [latest-21281]2021-10-08T20:41:39.102Z <wsapi:INFO> client "172.17.0.1#5" closed, code=1006, reason= [latest-21281]2021-10-08T20:41:49.876Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:41:49.876Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:41:49.876Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:42:29.878Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:42:29.879Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:42:29.879Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:42:59.931Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:42:59.931Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:42:59.931Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:43:44.942Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:43:44.942Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:43:44.943Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:44:14.994Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:44:14.994Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:44:14.994Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:44:33.693Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:44:35.025Z <wsapi:INFO> client "172.17.0.1#6" closed, code=1001, reason= [latest-21281]2021-10-08T20:44:54.281Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:45:04.999Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:45:04.999Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:45:05.000Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:45:35.050Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:45:35.051Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:45:35.051Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:46:30.052Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:46:30.052Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:46:30.053Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:46:34.315Z <wsapi:WARN> wsapi: timed out waiting for ping reply (pong) from client "172.17.0.1#7" [latest-21281]2021-10-08T20:46:34.316Z <wsapi:INFO> client "172.17.0.1#7" closed, code=1006, reason= [latest-21281]2021-10-08T20:46:46.206Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:47:00.103Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:47:00.103Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:47:00.104Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:47:11.581Z <wsapi:INFO> client "172.17.0.1#8" closed, code=1005, reason= [latest-21281]2021-10-08T20:47:14.206Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:48:00.114Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:48:00.115Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:48:00.115Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:48:30.167Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:48:30.167Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:48:30.168Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:49:30.169Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:49:30.169Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:49:30.170Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:50:00.221Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:50:00.221Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:50:00.221Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:50:24.385Z <wsapi:WARN> wsapi: timed out waiting for ping reply (pong) from client "172.17.0.1#9" [latest-21281]2021-10-08T20:50:24.386Z <wsapi:INFO> client "172.17.0.1#9" closed, code=1006, reason= [latest-21281]2021-10-08T20:50:27.211Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:51:00.225Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:51:00.225Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:51:00.226Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:51:22.359Z <wsapi:INFO> client "172.17.0.1#10" closed, code=1001, reason= [latest-21281]2021-10-08T20:51:22.848Z <wsapi:INFO> wsapi: connection from ::ffff:172.17.0.1 [latest-21281]2021-10-08T20:51:30.276Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:51:30.277Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:51:30.277Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:52:30.279Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:52:30.279Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:52:30.280Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:53:00.331Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:53:00.331Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:53:00.331Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T20:54:00.338Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T20:54:00.338Z <Controller:INFO> EzloController#ezlo opening hub connection to "90000464" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:54:00.339Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T20:54:30.006Z <Rule:5:Rule.js:763> Rule#rule-ktggia4q dependency notification entity-changed Entity#vera>device_719 from Entity#vera>device_719 [latest-21281]2021-10-08T20:54:30.007Z <Rule:5:Rule.js:769> Rule#rule-ktggia4q requesting eval; entity-changed Entity#vera>device_719 [latest-21281]2021-10-08T20:54:30.007Z <Rule:5:Rule.js:982> Rule#rule-ktggia4q (vB2 DLT 2 Motion ID) evaluate() acquiring mutex [latest-21281]2021-10-08T20:54:30.008Z <Rule:5:Rule.js:986> Rule#rule-ktggia4q._evaluate() mutex acquired, evaluating [latest-21281]2021-10-08T20:54:30.008Z <Rule:5:Rule.js:990> Rule#rule-ktggia4q update rate is 0/min limit 60/min [latest-21281]2021-10-08T20:54:30.008Z <Rule:5:Rule.js:914> Rule#rule-ktggia4q evaluateExpressions() with 0 expressions [latest-21281]2021-10-08T20:54:30.009Z <Rule:5:Rule.js:1002> Rule#rule-ktggia4q._evaluate() trigger state now false (was false) [latest-21281]2021-10-08T20:54:30.009Z <Rule:5:Rule.js:1004> Rule#rule-ktggia4q._evaluate() constraints state true [latest-21281]2021-10-08T20:54:30.009Z <Rule:5:Rule.js:1013> Rule#rule-ktggia4q rule state now false, changed no [latest-21281]2021-10-08T20:54:30.389Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T20:54:30.390Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T20:54:30.390Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation
-
No changes to EzloController for several builds now. Mine is working great.
What's your install environment?
Log snippets need several dozen lines before the error in order to be useful. For controller connection issues, it's also good to capture the entire startup until a bit past the first connection failure.
-
It's Docker on Synology
[latest-21281]2021-10-08T21:17:51.677Z <app:null> Reactor latest-21281-c4807c0 starting on v14.17.3 [latest-21281]2021-10-08T21:17:51.678Z <app:INFO> Process ID 1; platform linux/x64 #41890 SMP Thu Jul 15 03:37:40 CST 2021; locale (undefined) [latest-21281]2021-10-08T21:17:51.678Z <app:INFO> Basedir /opt/reactor; data in /var/reactor/storage [latest-21281]2021-10-08T21:17:51.679Z <app:INFO> NODE_PATH /opt/reactor [latest-21281]2021-10-08T21:17:51.691Z <app:INFO> Configured locale (undefined); selected locale(s) en-US.UTF-8 [latest-21281]2021-10-08T21:17:51.746Z <app:INFO> Loaded locale en-US [latest-21281]2021-10-08T21:17:51.880Z <Plugin:null> Module Plugin v21173 [latest-21281]2021-10-08T21:17:51.888Z <default:INFO> Module Entity v21260 [latest-21281]2021-10-08T21:17:51.891Z <Controller:null> Module Controller v21278 [latest-21281]2021-10-08T21:17:51.891Z <default:null> Module Structure v21270 [latest-21281]2021-10-08T21:17:51.900Z <default:null> Module Ruleset v21096 [latest-21281]2021-10-08T21:17:51.900Z <default:null> Module Rulesets v21096 [latest-21281]2021-10-08T21:17:51.922Z <default:null> Module Rule v21278 [latest-21281]2021-10-08T21:17:51.978Z <default:null> Module Engine v21277 [latest-21281]2021-10-08T21:17:51.978Z <default:null> Module httpapi v21278 [latest-21281]2021-10-08T21:17:51.987Z <default:null> Module httpproxy v21054 [latest-21281]2021-10-08T21:17:52.004Z <default:null> Module wsapi v21274 [latest-21281]2021-10-08T21:17:52.075Z <app:NOTICE> Starting Structure... [latest-21281]2021-10-08T21:17:52.079Z <Structure:NOTICE> Structure#1 plugin ID influx disabled; skipping [latest-21281]2021-10-08T21:17:52.081Z <Structure:INFO> Structure#1 starting controller interface vera (VeraController) [latest-21281]2021-10-08T21:17:52.085Z <Structure:INFO> Structure#1 starting controller interface ezlo (EzloController) [latest-21281]2021-10-08T21:17:52.086Z <Structure:INFO> Structure#1 starting controller interface weather (OWMWeatherController) [latest-21281]2021-10-08T21:17:52.087Z <Structure:INFO> Structure#1 starting controller interface reactor_system (SystemController) [latest-21281]2021-10-08T21:17:52.173Z <default:null> Module VeraController v21271 [latest-21281]2021-10-08T21:17:52.180Z <default:null> Module EzloController v21274 [latest-21281]2021-10-08T21:17:52.183Z <default:null> Module OWMWeatherController v21278 [latest-21281]2021-10-08T21:17:52.184Z <default:null> Module SystemController v21102 [latest-21281]2021-10-08T21:17:52.192Z <VeraController:NOTICE> VeraController#vera starting [latest-21281]2021-10-08T21:17:52.246Z <VeraController:INFO> VeraController#vera loaded mapping ver 21274 rev 1 format 1 notice [latest-21281]2021-10-08T21:17:52.247Z <VeraController:INFO> VeraController: deviceclass vera_system_object capability sys_system does not provide attribute state [latest-21281]2021-10-08T21:17:52.295Z <EzloController:null> EzloController#ezlo created, config { "source": "wss://10.0.4.119:17000", "serial": "XXXXXXXXXX" } [latest-21281]2021-10-08T21:17:52.295Z <EzloController:null> EzloController#ezlo instance log level (null) (4) [latest-21281]2021-10-08T21:17:52.314Z <Controller:INFO> EzloController#ezlo device mapping data loaded; checking... [latest-21281]2021-10-08T21:17:52.316Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T21:17:52.346Z <Controller:NOTICE> Controller SystemController#reactor_system is now online. [latest-21281]2021-10-08T21:17:52.374Z <Controller:INFO> EzloController#ezlo opening hub connection to "XXXXXXXXXX" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T21:17:52.376Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T21:17:52.381Z <app:INFO> Structure running; pausing for controllers' initial ready [latest-21281]2021-10-08T21:17:52.632Z <OWMWeatherController:INFO> OWMWeatherController#weather done; 1 locations, 0 failed [latest-21281]2021-10-08T21:17:52.634Z <OWMWeatherController:NOTICE> Controller OWMWeatherController#weather is now online. [latest-21281]2021-10-08T21:17:53.307Z <VeraController:NOTICE> Controller VeraController#vera is now online. [latest-21281]2021-10-08T21:18:22.427Z <Controller:WARN> EzloController#ezlo websocket error during open/negotation: Error: WebSocket was closed before the connection was established [latest-21281]2021-10-08T21:18:22.428Z <Controller:ERR> EzloController#ezlo failed to connect websocket to wss://10.0.4.119:17000: TimedPromise timeout [latest-21281]2021-10-08T21:18:22.429Z <Controller:NOTICE> EzloController#ezlo websocket to wss://10.0.4.119:17000 closed during open/negotiation [latest-21281]2021-10-08T21:18:27.433Z <Controller:INFO> EzloController#ezlo performing hub login without cloud authentication (hub.offline.anonymous_access must be enabled) [latest-21281]2021-10-08T21:18:27.433Z <Controller:INFO> EzloController#ezlo opening hub connection to "XXXXXXXXXX" at wss://10.0.4.119:17000 [latest-21281]2021-10-08T21:18:27.434Z <Controller:NOTICE> EzloController#ezlo connecting via WS to wss://10.0.4.119:17000 [latest-21281]2021-10-08T21:18:52.386Z <app:NOTICE> Starting HTTP server and API... [latest-21281]2021-10-08T21:18:52.392Z <app:NOTICE> Starting Reaction Engine... [latest-21281]2021-10-08T21:18:52.393Z <Engine:INFO> Reaction Engine starting [latest-21281]2021-10-08T21:18:52.393Z <Engine:INFO> Checking rule sets... [latest-21281]2021-10-08T21:18:52.445Z <Engine:INFO> Checking rules... [latest-21281]2021-10-08T21:18:52.446Z <Engine:INFO> Data check complete; no corrections. [latest-21281]2021-10-08T21:18:52.485Z <Engine:5:Engine.js:1350> _process_reaction_queue() entry 630 [latest-21281]2021-10-08T21:18:52.500Z <Rule:5:Rule.js:623> Rule#rule-kuhickgs cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.501Z <Engine:5:Engine.js:886> Engine: new rule rule-kuhickgs ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.522Z <Rule:5:Rule.js:623> Rule#rule-ku1myjlz cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.522Z <Engine:5:Engine.js:886> Engine: new rule rule-ku1myjlz ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.534Z <Rule:5:Rule.js:623> Rule#rule-ks5pci0k cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.534Z <Engine:5:Engine.js:886> Engine: new rule rule-ks5pci0k ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.536Z <Rule:5:Rule.js:623> Rule#rule-ks5pdqcs cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.536Z <Engine:5:Engine.js:886> Engine: new rule rule-ks5pdqcs ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.537Z <Rule:5:Rule.js:623> Rule#rule-ks5pbeg9 cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.538Z <Engine:5:Engine.js:886> Engine: new rule rule-ks5pbeg9 ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.539Z <Rule:5:Rule.js:623> Rule#rule-ks5p8t6m cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.539Z <Engine:5:Engine.js:886> Engine: new rule rule-ks5p8t6m ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.540Z <Rule:5:Rule.js:623> Rule#rule-ks3j24qn cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.541Z <Engine:5:Engine.js:886> Engine: new rule rule-ks3j24qn ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.549Z <Rule:5:Rule.js:623> Rule#rule-ktrlog1t cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.549Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlog1t ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.550Z <Rule:5:Rule.js:623> Rule#rule-ktrlox2g cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.550Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlox2g ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.551Z <Rule:5:Rule.js:623> Rule#rule-ktrlp04x cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.552Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlp04x ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.553Z <Rule:5:Rule.js:623> Rule#rule-ktrlp2cn cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.553Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlp2cn ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.554Z <Rule:5:Rule.js:623> Rule#rule-ktrlp4il cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.555Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlp4il ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.556Z <Rule:5:Rule.js:623> Rule#rule-ktrlp6j9 cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.556Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlp6j9 ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.557Z <Rule:5:Rule.js:623> Rule#rule-ktrlp8v2 cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.557Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlp8v2 ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.558Z <Rule:5:Rule.js:623> Rule#rule-ktrlpbmt cleaning loaded condition states [latest-21281]2021-10-08T21:18:52.558Z <Engine:5:Engine.js:886> Engine: new rule rule-ktrlpbmt ((undefined)), creating! [latest-21281]2021-10-08T21:18:52.559Z <Rule:5:Rule.js:623> Rule#rule-ktrlpdzf cleaning loaded condition states
-
Huh. Docker container also working just fine for me, with authenticated access, with anonymous access, and with anonymous insecure access. What version of firmware is your hub? Have you tried to reboot the hub?
-
Now it's working again after I powered off/on ezlo controller and restarted Reactor. The log is too long, no privileges to upload it. It's not the first time it happens upgrating the container.
ezloplus Firmware: 2.0.19.1714.2
Thanks anyway.[latest-21281]2021-10-08T21:55:33.176Z <Controller:INFO> EzloController#ezlo hub inventory complete/successful; 837ms [latest-21281]2021-10-08T21:55:33.179Z <Controller:NOTICE> Controller EzloController#ezlo is now online.
-
T toggledbits locked this topic on