I just installed the testing version 21.5.3.
It works great for Shelly but also for Tasmota
Merci bien
Hi @toggledbits
Just a quick question. I noticed that I can't test a "set variable" action when the rule is not active. I wanted to set a global expression in a reaction and wanted to test it by pushing the "Run action now" button in the border of the reaction, but it didn't do anything. Only when I activated the rule, the button worked.
Is this a bug or is this by design?
I'm running the latest docker build:
latest-23114-e4060aae
I've done a bit of repackaging of MSR to make it work as an add-on under Home Assistant mostly for my own purposes but hopefully it makes it a bit easier to install and get going.
Contribute to mrw298/hassio-reactor-addon development by creating an account on GitHub.
Hi Everyone,
I am just starting to move over from Vera to Home Assistant using MSR.
On vera I had been using DelayLight. I have tried to replicate it with help from youtube (https://www.youtube.com/watch?v=fc_ij0D1hXE) Reactor for Vera #006 - Emulating DelayLight in Reactor.
I have created 6 rules that sort of work. but I am just wondering if this is best practice or should can it be built in 1 rule like the old vera way?
Hi!
I tried to find an answer in both the forum and by myself, without any luck. I'm trying to make my Echo device play a mp3 file. The same mp3 file is easy to play with other smart speakers (Sonos, Google/Nest) - that it no problem. Same approch do not work with Echo devices. The mp3 files I want to use is located on my HA installation (config/www/audio), running on ver. 2023.5.4. I have MSR ver 23114.
Is there a way to do this easily?
Thanks!
/Fanan
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'm controlling a HVAC device through the MQTTController. While setting up the entity config in reactor.yaml, I started with this on the action block:
set_setpoint: topic: "ezlo_mqtt/set/item/%topic%/set/Tsetpoint" payload: expr: "parameters.setpoint" type: rawHowever, as the setpoint is a number in the UI, things were not fully parseable as a number and nothing was outputted to mqtt.
So I've added this code to MQTTController.js at line 1449 to add the payload type 'number':
} else if ( 'number' === act.payload.type ) { payload = String( payload ); } else if (''raw' !== ( act.payload.type || 'raw' ) ) {After this change, I was able to set the payload type to number:
set_setpoint: topic: "ezlo_mqtt/set/item/%topic%/set/Tsetpoint" payload: expr: "parameters.setpoint" type: numberAnd things worked as intended, being able to send numbers in the actions bit of a rule set.
I still use Vera controllers in combination with ReactorSensors. I have several Reactor sensors in use to retrieve weather data from Wunderground (i have a personal weather station), my smartmeter etc.
Recently I installed solar panels with a SolarEdge inverter. SolarEdge has an API to retrieve my power production data from their cloud.
Output is in json.
So I created a new Reactor Sensor. Connection is working (query okay).
But I encounter problems at the Value Expressions. Either I get ""query okay" but no data or I get "query okay but 1 expressions failed"
This is the json output
{"overview":{"lastUpdateTime":"2023-05-12 10:45:57","lifeTimeData":{"energy":476310.0,"revenue":216.577},"lastYearData":{"energy":433001.0},"lastMonthData":{"energy":433001.0},"lastDayData":{"energy":8262.0},"currentPower":{"power":5647.0},"measuredBy":"INVERTER"}}So it has different layers/levels.
I tried to put in the Value Expressions field several combinations to get the energy data of today (8262.0), like:
response.lastDayData.energy
response.overview.lastDayData.energy
response.overview.lastUpdateTime.lastDayData.energy
all fail...
Who can help me with this ?
The wifi on my router is turned off, and wifi around the house is provided using a mesh - 3 units altogether (one connected directly to the router) that are spread around the house.
I would like to start automating certain tasks around the house and intend to try adding a few smart sockets to my setup.
The mesh system I have supports both 2.4GHz and 5GHz, and does not provide me with the option to control them - i.e. turn one or both on/off, give each a different SSID, etc.
The devices I wish to purchase/use only support 2.4GHz.
Will turning the mesh units off and temporarily turning the 2.4GHz wifi on the router to allow me to set them up be enough? Will I then be able to return to my usual setup and everything will work as it should?
Many thanks in advance
Hey everyone, I'm currently working on developing a bed sensor that can detect when you're out of bed. It could be used to trigger other smart home gadgets, like lights or blinds, temperature etc.
The sensors are placed under the legs of your bed post. Should look and feel like "smart furniture pads" with size 2 inches in diameter and 1/4 inch thick.
Before we go any further, I'd love to get your thoughts on this - would a bed sensor like this be something you'd find useful? We're still in the early stages of development, so any feedback you have would be greatly appreciated. Thanks in advance!
Some background
I'm trying to integrate a Zigbee device into the MSR using zigbee2mqtt bridge and MQTTController. The device in question is a cheap mood light that has following properties that I'd like to control:
I'v already managed to get the switch part working and can toggle the light on/off. Also the brightness value is mapped back to MSR. In zigbee2mqtt it has a value range from 0 to 254, so this the reason for the expression:
expr: 'payload.brightness / 254'Here's the entity definition (don't know whether the type should be something else than the Switch)
zigbee-lidl-mood-light: name: 'Lidl Mood Light' friendly_name: 'Mood Light' type: Switch uses_template: lidl-moodlightAnd the corresponding template (NOTE: rgb_color has not been defined in this example):
lidl-moodlight: init: "zigbee2mqtt/%friendly_name%/get/state" query: "zigbee2mqtt/%friendly_name%/get/state" capabilities: - power_switch - toggle - dimming primary_attribute: power_switch.state events: "zigbee2mqtt/%friendly_name%": "power_switch.state": json_payload: true expr: 'upper(payload.state) == "ON"' "dimming.level": json_payload: true expr: 'payload.brightness / 254' actions: power_switch: "on": topic: "zigbee2mqtt/%friendly_name%/set/state" payload: 'ON' "off": topic: "zigbee2mqtt/%friendly_name%/set/state" payload: 'OFF' set: topic: "zigbee2mqtt/%friendly_name%/set/state" payload: expr: "parameters.state ? 'ON' : 'OFF'" type: raw toggle: topic: "zigbee2mqtt/%friendly_name%/set/state" payload: 'TOGGLE'The problem
In order to control the brightness or the RGB color values, I would have send a JSON payload in corresponding actions. But I have no idea how to define it in the template. The reason why the switch part is working is that the zigbee2mqtt accepts also plain ON / OFF / TOGGLE string payloads in that case.
But the brightness should be controlled with the following payload:
{"brightness": 196}And the RGB color like:
{"color":{"rgb":"46,102,150"}}Here's the link for the documentation (the Exposes part defines the messages).
So how should I define the JSON payload for example for the dimming action? It definitely should be some sort of expressions since I have to map the MSR real value (0...1) to (0...254) for the zigbee2mqtt.
actions: dimming: set: topic: "zigbee2mqtt/%friendly_name%/set" payload: expr: ????? type: jsonAnother problem is the RGB value. I could use the rgb_color capability for the setting but the problem is that the zigbee2mqtt only reports the current color in hue/saturation or xy coordinates.
Here's an example of published message after setting the color:
Topic: zigbee2mqtt/Mood Light QoS: 0 { "brightness":254, "color":{ "hue":240, "saturation":100, "x":0.1355, "y":0.0399 }, "color_mode":"xy", "color_temp":574, "linkquality":96, "state":"ON" }I would have to map those values back to RGB, but is it even possible with existing constructs in MQTTController's templates?
Help would be appreciated @toggledbits
br,
mgvra
Good morning all,
I've got a stable Home Assistant running on a RPI 4 with a Aeotec Z-Stick 7 Plus, and of course the Z-wave JS integration. I've manually moved a handful of devices, and I'm overall much happier with the HA z-wave capability than I am with Vera. There are still some things I'm trying to figure out that I have in Vera that I'm not sure how they'll work in HA, but no deal breakers.
I've got all of my automation on MSR and off of luup Reactor, so really the only thing left for me is to migrate my Z-wave network. I saw @rafale77's post about using a Zwave.me UZB1 to Zway, but of course that's not what I'm using.
Is there a similar method that I can use my Aeotec Z-Stick 7 plus to Home Assistant? I have around 70 Z-wave devices (give or take devices that generate multiple instances in Vera), so manual unpairing, including, etc, would be quite a chore.
Good evening,
I was wondering if it would be possible to send out a push notification when there is a update to MSR to HA users. I know how to set up notifications through Reactor to HA users, but I'm unsure what to look for in regards to updates. I know that MSR itself will tell me there is an update, but unless I'm logged into MSR in a browser, I'm not always going to see that.
Just updated to latest-23114-e4060aae MSR
Home Assistant 2023.4.6
Supervisor 2023.04.1
Operating System 10.0
ChatGPT samples:
Me:
Tell me about an iot program called openLuup.
It:
OpenLuup is an open source home automation system that is built on the VeraLuup platform. It is designed to be easy to install and configure, and provides users with a powerful and versatile way to control their home automation devices. OpenLuup offers a wide range of features, including support for many popular home automation devices, scheduling, scripting, and integration with other services. OpenLuup is designed to be customizable, allowing users to create their own home automation systems. It is an excellent choice for those looking to create their own home automation system without spending a lot of money.
Me:
Write an iot program using openLuup.
It:
--openLuup IoT Program-- -- Initialize Variables -- local device_id = "MyHomeDevice" local temperature_sensor_id = "MyTemperatureSensor" local temperature_threshold = 75 -- Create Devices -- luup.create_device("OpenLuup Temperature Sensor", 0, device_id, "D_GenericSensor1.xml", "I_GenericSensor1.xml", "S_TemperatureSensor1.xml", "") luup.variable_set("urn:upnp-org:serviceId:TemperatureSensor1", "CurrentTemperature", 0, device_id) -- Start Timer -- luup.call_delay("check_temperature", 10, "", false) --Function to Check Temperature-- function check_temperature() local current_temperature = luup.variable_get(temperature_sensor_id, "CurrentTemperature", 0) --Check Temperature Threshold-- if current_temperature >= temperature_threshold then --Send Alert-- luup.call_action("urn:micasaverde-com:serviceId:HomeAutomationGateway1", "SendTextMessage", {PhoneNumber="1234567890", Message="ALERT! Temperature exceeded threshold!"}, 0) end --Reset Timer-- luup.call_delay("check_temperature", 10, "", false) endMe:
Write an iot program using openLuup.
It:
Write an iot program using openLuup. -- openLuup IOT Program -- -- Variables local lampState = false local lampTime = 0 -- Functions function lampTimer() if lampTime > 0 then lampTime = lampTime - 1 if lampTime == 0 then luup.variable_set('urn:upnp-org:serviceId:SwitchPower1', 'Status', 0, lampDeviceID) lampState = false end end end -- Setup luup.call_delay('lampTimer', 60, 0) -- Main Loop while true do -- Check for motion if luup.variable_get('urn:micasaverde-com:serviceId:MotionSensor1', 'Tripped', motionSensorDeviceID) == '1' then if not lampState then luup.variable_set('urn:upnp-org:serviceId:SwitchPower1', 'Status', 1, lampDeviceID) lampState = true -- Set lamp timer to 5 minutes lampTime = 300 end end luup.sleep(1) endWhat??
luup.sleep(1)Not good - looks like I still have some semblance of a job to fulfill.
Me:
An iot program called openLuup was written by akbooer. Who is akbooer?
It: (note: answer redacted and as I understand it, also incorrect re: AltUI):
akbooer is the pseudonym of the software developer and home automation enthusiast. He is the creator of the openLuup home automation software, which is an open-source version of the Vera home automation system. He is also the creator of the AltUI graphical user interface for openLuup.
Me:
Who created of the AltUI graphical user interface for openLuup.
and
Me:
Who created of the AltUI graphical user interface for the home automation system Vera.
Names two different people - mmmm.
Regardless very impressive - give it a few more years.
MSR tooltip says that "disabled groups are ignored, as if they did not exist (conditions don't run)".
Just want to clarify if it's by design that actions beneath disabled groups should run? They do run, but intuitively I was expecting them to be disabled as well.
Running the latest build under Docker.
I just installed the testing version 21.5.3.
It works great for Shelly but also for Tasmota
Merci bien
I have been using outdoor sheltered since October 2017 the Zwave TopVico sensor bought in China. It is the same as therealdb.
https://fr.aliexpress.com/item/32806609627.html?spm=a2g0s.9042311.0.0.27426c37jFx49C
it works perfectly and makes it possible to automate the lighting of the lights in my pedestrian alley.
After restarting VearEdge and OpenLuup several times (restarting the Pi4), everything is back to normal.
Thank you for your help.
Thanks ...
I followed this post and managed to successfully use my HANK SCN04 remote with Reactor and Home Assistant.
Merry Christmas/Holidays! or
Joyeux Noël/Bonne Année ( )
Following the change of browser (Microsoft Edge) and the proper functioning of the entities dialog box, I modified my Google Chrome version
from the beta version (Version 111.0.5563.50 (Official build) beta (64 bits))
to the stable version (Version 110.0.5481.178 (Official Build) (64-bit))
to see that it works fine.
Thank you once again for your help which solved my problem which had been going on for several days...
Cordially
I'm using Google Chrome Version 111.0.5563.50 (Official Build) beta (64 bit)
I refreshed the browser, but the click does not open the entities dialog
I just found that I have the same problem on Global expressions, I can't display the entities list.
I feel like the call function to open the entities dialog is not working.
@toggledbits
*
Yes, but clicking does not open the dialog box: nothing happens....
I already use a version of Reactor installed on another Raspberry pi4, installed without Docker and it works fine.
I'm migrating to a new raspberry pi 4 where I installed Docker, Portainer, MQTT, Zigbee2Mqtt, Zwave-js-ui without issue.
The installation of Reactor seems correct, the only problem is that no dialog box opens when clicking to select an entity.
I restarted the installation several times and I have the same observation.
Can you please give me some hint to try to solve this problem. Why does the click not call the entities dialog box?
THANKS
New installation of Reactor version 23063-c464b685 on a Raspberry PI4 with Portainer/Docker.
Report :
No drop-down list on Entity Attribute in "Creation Rule Sets" interface
I can however visualize the entities.
I have configured HomeAssistant and all entities are coming up fine.
I have an unsupported Hass version 2023.3.0b5.
I'm new to Docker and can someone guide me to a solution?
Christian FABRE
Alert:
Rule :
Entities:
log Reactor :
[latest-23063]2023-03-05T09:51:49.575Z <app:null> Process ID 1 user/group 0/0; docker; platform linux/arm64 #1595 SMP PREEMPT Wed Oct 26 11:07:24 BST 2022; locale (undefined)
[latest-23063]2023-03-05T09:51:49.576Z <app:null> Basedir /opt/reactor; data in /var/reactor/storage
[latest-23063]2023-03-05T09:51:49.577Z <app:null> NODE_PATH=/opt/reactor:/opt/reactor/node_modules
[latest-23063]2023-03-05T09:51:49.584Z <app:INFO> Configured locale (undefined); selected locale(s) en-US.UTF-8
[latest-23063]2023-03-05T09:51:49.708Z <app:INFO> Loaded locale en-US for en-US
[latest-23063]2023-03-05T09:51:49.725Z <Structure:null> Module Structure v22323
[latest-23063]2023-03-05T09:51:49.729Z <Capabilities:null> Module Capabilities v22356
[latest-23063]2023-03-05T09:51:49.806Z <Capabilities:NOTICE> System capabilities loaded from core distribution, data version 23058 revision 1
[latest-23063]2023-03-05T09:51:49.849Z <Plugin:null> Module Plugin v22300
[latest-23063]2023-03-05T09:51:49.869Z <TimerBroker:null> Module TimerBroker v22283
[latest-23063]2023-03-05T09:51:49.878Z <Entity:null> Module Entity v22353
[latest-23063]2023-03-05T09:51:49.889Z <Controller:null> Module Controller v23044
[latest-23063]2023-03-05T09:51:49.926Z <default:null> Module Ruleset v22293
[latest-23063]2023-03-05T09:51:49.928Z <default:null> Module Rulesets v22146
[latest-23063]2023-03-05T09:51:49.943Z <GlobalExpression:null> Module GlobalExpression v22146
[latest-23063]2023-03-05T09:51:49.977Z <Predicate:null> Module Predicate v22345
[latest-23063]2023-03-05T09:51:49.987Z <AlertManager:null> Module AlertManager v22283
[latest-23063]2023-03-05T09:51:49.995Z <Rule:null> Module Rule v22345
[latest-23063]2023-03-05T09:51:50.004Z <GlobalReaction:null> Module GlobalReaction v22324
[latest-23063]2023-03-05T09:51:50.008Z <Engine:null> Module Engine v23001
[latest-23063]2023-03-05T09:51:50.019Z <httpapi:null> Module httpapi v23058
[latest-23063]2023-03-05T09:51:50.078Z <wsapi:null> Module wsapi v23053
[latest-23063]2023-03-05T09:51:50.080Z <app:NOTICE> Starting Structure...
[latest-23063]2023-03-05T09:51:50.100Z <Structure:NOTICE> Structure#1 plugin ID influx disabled; skipping
[latest-23063]2023-03-05T09:51:50.106Z <Structure:INFO> Structure#1 loading controller interface hass (HassController)
[latest-23063]2023-03-05T09:51:50.210Z <HassController:null> Module HassController v23060
[latest-23063]2023-03-05T09:51:50.639Z <Structure:INFO> Structure#1 loading controller interface groups (DynamicGroupController)
[latest-23063]2023-03-05T09:51:50.649Z <DynamicGroupController:null> Module DynamicGroupController v22313
[latest-23063]2023-03-05T09:51:50.659Z <Structure:INFO> Structure#1 loading controller interface reactor_system (SystemController)
[latest-23063]2023-03-05T09:51:50.672Z <SystemController:null> Module SystemController v22306
[latest-23063]2023-03-05T09:51:50.680Z <Structure:INFO> Starting controller HassController#hass
[latest-23063]2023-03-05T09:51:50.682Z <HassController:NOTICE> HassController#hass starting...
[latest-23063]2023-03-05T09:51:50.691Z <Controller:INFO> HassController#hass loaded hass capabilities ver 22312 rev 2 format 1
[latest-23063]2023-03-05T09:51:50.715Z <Controller:INFO> HassController#hass loaded implementation data ver 23058 rev 1 format 1
[latest-23063]2023-03-05T09:51:50.715Z <Structure:INFO> Starting controller DynamicGroupController#groups
[latest-23063]2023-03-05T09:51:50.728Z <Controller:NOTICE> Controller DynamicGroupController#groups is now online.
[latest-23063]2023-03-05T09:51:50.728Z <Structure:INFO> Starting controller SystemController#reactor_system
[latest-23063]2023-03-05T09:51:50.733Z <Controller:NOTICE> Controller SystemController#reactor_system is now online.
[latest-23063]2023-03-05T09:51:50.877Z <HassController:INFO> HassController#hass device mapping data loaded; checking...
[latest-23063]2023-03-05T09:51:50.881Z <HassController:WARN> HassController: implementation of capability input_select.selector does not provide attribute values
[latest-23063]2023-03-05T09:51:50.884Z <HassController:NOTICE> HassController#hass connecting to ws://192.168.1.31:8123/api/websocket
[latest-23063]2023-03-05T09:51:50.894Z <app:NOTICE> Starting HTTP server and API...
[latest-23063]2023-03-05T09:51:50.901Z <httpapi:NOTICE> httpapi: starting HTTP service on port "8111"
[latest-23063]2023-03-05T09:51:50.909Z <app:NOTICE> Starting Reaction Engine...
[latest-23063]2023-03-05T09:51:50.910Z <Engine:INFO> Reaction Engine starting
[latest-23063]2023-03-05T09:51:50.911Z <Engine:INFO> Checking rule sets...
[latest-23063]2023-03-05T09:51:50.916Z <Engine:INFO> Checking rules...
[latest-23063]2023-03-05T09:51:50.923Z <Engine:INFO> Data check complete; no corrections.
[latest-23063]2023-03-05T09:51:50.938Z <Rule:NOTICE> rule-leu8xfe4 (rule-leu8xfe4 in First Rule Set) starting
[latest-23063]2023-03-05T09:51:50.939Z <Engine:NOTICE> Reaction Engine running!
[latest-23063]2023-03-05T09:51:50.939Z <Rule:NOTICE> rule-leu8xfe4 (rule-leu8xfe4 in First Rule Set) can't start -- rule is disabled
[latest-23063]2023-03-05T09:51:50.952Z <httpapi:NOTICE> httpapi: listening
[latest-23063]2023-03-05T09:51:50.981Z <app:NOTICE> Starting WSAPI...
[latest-23063]2023-03-05T09:51:50.983Z <wsapi:NOTICE> wsapi: starting version 23053
[latest-23063]2023-03-05T09:51:51.080Z <Engine:INFO> [Engine]Engine#1 master timer tick, local time "3/5/2023 10:51:51 AM" (TZ offset 60 mins from UTC)
[latest-23063]2023-03-05T09:51:51.119Z <HassController:NOTICE> HassController#hass connected, starting protocol
[latest-23063]2023-03-05T09:51:51.127Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime
[latest-23063]2023-03-05T09:51:51.145Z <HassController:INFO> HassController#hass successful authentication with ws://192.168.1.31:8123; fetching initial data...
[latest-23063]2023-03-05T09:51:51.155Z <HassController:INFO> HassController#hass Hass reports version "2023.3.0b5" location Maison timezone Europe/Paris state RUNNING safe_mode false
[latest-23063]2023-03-05T09:51:51.245Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_supervisor_update
[latest-23063]2023-03-05T09:51:51.248Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_core_update
[latest-23063]2023-03-05T09:51:51.249Z <HassController:NOTICE> HassController#hass no signature match for update.terminal_ssh_update
[latest-23063]2023-03-05T09:51:51.250Z <HassController:NOTICE> HassController#hass no signature match for update.file_editor_update
[latest-23063]2023-03-05T09:51:51.251Z <HassController:NOTICE> HassController#hass no signature match for update.samba_backup_update
[latest-23063]2023-03-05T09:51:51.252Z <HassController:NOTICE> HassController#hass no signature match for update.home_assistant_operating_system_update
[latest-23063]2023-03-05T09:51:51.253Z <HassController:NOTICE> HassController#hass no signature match for sun.sun
[latest-23063]2023-03-05T09:51:51.285Z <HassController:NOTICE> HassController#hass no signature match for calendar.calendrier
[latest-23063]2023-03-05T09:51:51.413Z <HassController:NOTICE> HassController#hass no signature match for siren.piscine_siren
[latest-23063]2023-03-05T09:51:51.419Z <HassController:NOTICE> HassController#hass no signature match for camera.portillon
[latest-23063]2023-03-05T09:51:51.607Z <Controller:INFO> HassController#hass 0 dead entities older than 86400000s purged
[latest-23063]2023-03-05T09:51:51.633Z <Controller:NOTICE> Controller HassController#hass is now online.
[latest-23063]2023-03-05T09:51:51.634Z <DynamicGroupController:INFO> All controllers ready, setting up dynamic groups
[latest-23063]2023-03-05T09:51:51.726Z <wsapi:INFO> wsapi: connection from ::ffff:192.168.1.42
[latest-23063]2023-03-05T09:51:55.510Z <wsapi:INFO> client "192.168.1.42#1" closed, code=1001, reason=
[latest-23063]2023-03-05T09:51:55.815Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/lang
[latest-23063]2023-03-05T09:51:55.843Z <wsapi:INFO> wsapi: connection from ::ffff:192.168.1.42
[latest-23063]2023-03-05T09:51:56.849Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime
[latest-23063]2023-03-05T09:52:07.392Z <httpapi:INFO> httpapi: API request from ::ffff:192.168.1.42: GET /api/v1/systime---
Log Portainer:
NODE_PATH /opt/reactor:/opt/reactor/node_modules
[latest-23063]2023-03-05T08:55:17.734Z <app:null> Reactor build latest-23063-c464b685 starting on v16.15.1
[latest-23063]2023-03-05T08:55:17.736Z <app:null> Process ID 1 user/group 0/0; docker; platform linux/arm64 #1595 SMP PREEMPT Wed Oct 26 11:07:24 BST 2022; locale (undefined)
[latest-23063]2023-03-05T08:55:17.737Z <app:null> Basedir /opt/reactor; data in /var/reactor/storage
[latest-23063]2023-03-05T08:55:17.738Z <app:null> NODE_PATH=/opt/reactor:/opt/reactor/node_modules
[latest-23063]2023-03-05T08:55:17.875Z <Structure:null> Module Structure v22323
[latest-23063]2023-03-05T08:55:17.879Z <Capabilities:null> Module Capabilities v22356
[latest-23063]2023-03-05T08:55:18.004Z <Plugin:null> Module Plugin v22300
[latest-23063]2023-03-05T08:55:18.023Z <TimerBroker:null> Module TimerBroker v22283
[latest-23063]2023-03-05T08:55:18.032Z <Entity:null> Module Entity v22353
[latest-23063]2023-03-05T08:55:18.042Z <Controller:null> Module Controller v23044
[latest-23063]2023-03-05T08:55:18.079Z <default:null> Module Ruleset v22293
[latest-23063]2023-03-05T08:55:18.080Z <default:null> Module Rulesets v22146
[latest-23063]2023-03-05T08:55:18.096Z <GlobalExpression:null> Module GlobalExpression v22146
[latest-23063]2023-03-05T08:55:18.129Z <Predicate:null> Module Predicate v22345
[latest-23063]2023-03-05T08:55:18.139Z <AlertManager:null> Module AlertManager v22283
[latest-23063]2023-03-05T08:55:18.146Z <Rule:null> Module Rule v22345
[latest-23063]2023-03-05T08:55:18.156Z <GlobalReaction:null> Module GlobalReaction v22324
[latest-23063]2023-03-05T08:55:18.159Z <Engine:null> Module Engine v23001
[latest-23063]2023-03-05T08:55:18.171Z <httpapi:null> Module httpapi v23058
[latest-23063]2023-03-05T08:55:18.232Z <wsapi:null> Module wsapi v23053
[latest-23063]2023-03-05T08:55:18.358Z <HassController:null> Module HassController v23060
[latest-23063]2023-03-05T08:55:18.780Z <DynamicGroupController:null> Module DynamicGroupController v22313
[latest-23063]2023-03-05T08:55:18.803Z <SystemController:null> Module SystemController v22306```
# If you have more than one of any type of controller, just copy the section for controller type
# and give it new (unique) "id". There is no limit on the number of controllers.
controllers:
- id: hass
enabled: true
implementation: HassController
name: A Home Assistant system
config:
source: 'wss://XX.XX.XX.XX:8123'
access_token: "YYYYYYYYY"
#
event_targets: # this section starts the event-receiving entities
"Hank_SCN04_bp1": # Assign an ID to your entity; each entity must have a unique ID
name: Hank_bp1 # This is optional but recommended, so you have a friendly name
capabilities: ['button'] # define an array of capabilities to be modified by the event
events: # define an array of events that modify capability attributes on the entity
- event: # start of an event; each element of the events array begins this way
event_type: zwave_js_value_notification
data: # optional section, if further matching to the event data is required
node_id: 12
property: "scene" # Square button
property_key: "001"
response: # begin the (required) response section for handling the event
"button.state": # an attribute that the event modifies.
from: "event.data.value" # dot-reference expression to pull value from event message
map: # optional, map to modify value
KeyPressed: 'appui_court' # if value is value_in, it is mapped to new_value
KeyReleased: 'appui_relache'
KeyHeldDown: 'appui_maintenu'
"button.since": # an attribute that the event modifies.
from: "event.context.id" # dot-reference expression to pull value from event message
"Hank_SCN04_bp2": # Assign an ID to your entity; each entity must have a unique ID
name: Hank_bp2 # This is optional but recommended, so you have a friendly name
capabilities: ['button'] # define an array of capabilities to be modified by the event
events: # define an array of events that modify capability attributes on the entity
- event: # start of an event; each element of the events array begins this way
event_type: zwave_js_value_notification
data: # optional section, if further matching to the event data is required
node_id: 12
property: "scene" # Square button
property_key: "002"
response: # begin the (required) response section for handling the event
"button.state": # an attribute that the event modifies.
from: "event.data.value" # dot-reference expression to pull value from event message
map: # optional, map to modify value
KeyPressed: 'appui_court' # if value is value_in, it is mapped to new_value
KeyReleased: 'appui_relache'
KeyHeldDown: 'appui_maintenu'
"button.since": # an attribute that the event modifies.
from: "event.context.id" # dot-reference expression to pull value from event message
"Hank_SCN04_bp3": # Assign an ID to your entity; each entity must have a unique ID
name: Hank_bp3 # This is optional but recommended, so you have a friendly name
capabilities: ['button'] # define an array of capabilities to be modified by the event
events: # define an array of events that modify capability attributes on the entity
- event: # start of an event; each element of the events array begins this way
event_type: zwave_js_value_notification
data: # optional section, if further matching to the event data is required
node_id: 12
property: "scene" # Square button
property_key: "003"
response: # begin the (required) response section for handling the event
"button.state": # an attribute that the event modifies.
from: "event.data.value" # dot-reference expression to pull value from event message
map: # optional, map to modify value
KeyPressed: 'appui_court' # if value is value_in, it is mapped to new_value
KeyReleased: 'appui_relache'
KeyHeldDown: 'appui_maintenu'
"button.since": # an attribute that the event modifies.
from: "event.context.id" # dot-reference expression to pull value from event message
"Hank_SCN04_bp4": # Assign an ID to your entity; each entity must have a unique ID
name: Hank_bp4 # This is optional but recommended, so you have a friendly name
capabilities: ['button'] # define an array of capabilities to be modified by the event
events: # define an array of events that modify capability attributes on the entity
- event: # start of an event; each element of the events array begins this way
event_type: zwave_js_value_notification
data: # optional section, if further matching to the event data is required
node_id: 12
property: "scene" # Square button
property_key: "004"
response: # begin the (required) response section for handling the event
"button.state": # an attribute that the event modifies.
from: "event.data.value" # dot-reference expression to pull value from event message
map: # optional, map to modify value
KeyPressed: 'appui_court' # if value is value_in, it is mapped to new_value
KeyReleased: 'appui_relache'
KeyHeldDown: 'appui_maintenu'
"button.since": # an attribute that the event modifies.
from: "event.context.id" # dot-reference expression to pull value from event message
#
#
I abruptly attach a copy of my file.
I was inspired by the code given in the posts above
It works correctly for me.
Thank you for your reply
My system is a Raspberry Pi4 4GB with a 120GB SSD from stock.
Which is weird, I had the same problem twice following power outages.
I'm going to power it through my inverter to prevent this from happening again.
Context :