Refactor advanced-reactor node to improve input handling and initialize reactor properties

This commit is contained in:
2025-06-13 15:10:57 +02:00
parent 05d33b7f39
commit d71698d94e
3 changed files with 57 additions and 34 deletions

View File

@@ -10,25 +10,35 @@ module.exports = function(RED) {
const reactor = new Reactor(
config.volume,
[
config.S_O_init,
config.S_I_init,
config.S_S_init,
config.S_NH_init,
config.S_N2_init,
config.S_NO_init,
config.S_HCO_init,
config.X_I_init,
config.X_S_init,
config.X_H_init,
config.X_STO_init,
config.X_A_init,
config.X_TS_init
parseFloat(config.S_O_init),
parseFloat(config.S_I_init),
parseFloat(config.S_S_init),
parseFloat(config.S_NH_init),
parseFloat(config.S_N2_init),
parseFloat(config.S_NO_init),
parseFloat(config.S_HCO_init),
parseFloat(config.X_I_init),
parseFloat(config.X_S_init),
parseFloat(config.X_H_init),
parseFloat(config.X_STO_init),
parseFloat(config.X_A_init),
parseFloat(config.X_TS_init)
]
);
node.on('input', function(msg, send, done) {
if (msg.topic == "clock") {
reactor.updateState(msg);
switch (msg.topic) {
case "clock":
reactor.updateState(msg);
break;
case "Influx":
reactor.setInflux = msg;
break;
case "OTR":
reactor.setOTR = msg;
break;
default:
console.log("Unknown topic: " + msg.topic)
}
if (done) {