@asgothian
Das ist das komplette Skript (mit der Debug-Zeile und dem "Fehler" mit nur runskript ohne Timeout
//Definitionen
const sDPFrost = '0_userdata.0.Wetter.aktuell.Frost';
const aDP_Frost_Devices=['hm-rpc.0.00089D89BA198D.3.STATE','hm-rpc.0.00089D89A1686E.4.STATE','hm-rpc.0.00089F29B112F6.3.STATE']; //Pumpe Zisterne, Moorbeet, Teich => aus wenn Frost, weil Kanäle und-verknüpft
const sDP_SensorIBC1 = 'hm-rpc.0.001F1A4990B273.1.STATE'; // Pegelschalter IBC voll
const titel = "RaspMatic Reboot";
var msg = 'Frost aktualisiert ' + '\n\r';
// Trigger RaspMatic nach Reboot
function sendMsg(pushmsg){
sendTo("pushover", {
message: pushmsg , // mandatory - your text message
title: titel, // optional - your message's title, otherwise your app's name is used
//sound: 'magic', // optional - the name of one of the sounds supported by device clients to override the user's default sound choice
// pushover, bike, bugle, cashregister, classical, cosmic, falling,
// gamelan, incoming, intermission, magic, mechanical, pianobar, siren,
// spacealarm, tugboat, alien, climb, persistent, echo, updown, none
priority: -1 // optional
// -1 to always send as a quiet notification,
// 1 to display as high-priority and bypass the user's quiet hours, or
// 2 to also require confirmation from the user
});
};
on ({id: 'hm-rega.0.950', change: 'lt'}, function(data){ //Variable "CCU im Reboot" von RaspMatic
// if (!data.state.val) // CCU nicht mehr im Reboot
// {
console.log(data);
var bFrost = getState(sDPFrost).val;
// Frost initialisieren
aDP_Frost_Devices.forEach (id => {
setState(id, !bFrost);
msg += '-- ' + id + ' : ' + !bFrost +'\n\r';
});
// IBC Pegel initialisieren
var bIBC_voll = getState(sDP_SensorIBC1).val;
setState('0_userdata.0.Bewässerung.IBC.Pegel_voll', bIBC_voll);
msg += ' -- IBC Pegel voll : ' + bIBC_voll + '\n\r';
//Bewässerung reinit => Ventil-Steuerung-Skript neutstarten
stopScript('common.Bewässerung.Ventil_Steuerung', () => {
//setTimeout( ()=> {runScript('common.Bewässerung.Ventil_Steuerung')},1000);
runScript('common.Bewässerung.Ventil_Steuerung');
});
msg += ' -- Reinit Venti-Überwachung \n\r';
// Info über Boot loggen
console.warn ("[Raspimatic-Boot] " + msg);
sendMsg(msg);
// }
});
Es gibt nur eine Ausgabe ->
EventObj {
id: 'hm-rega.0.950',
newState: {
val: false,
ts: 1757669894412,
ack: false,
lc: 1757669894412,
from: 'system.adapter.admin.0',
q: 0,
c: undefined,
user: 'system.user.admin'
},
oldState: {
val: true,
ts: 1757669892106,
ack: true,
lc: 1757669888017,
from: 'system.adapter.hm-rega.0',
q: 0,
c: undefined,
user: 'system.user.admin'
},
state: {
val: false,
ts: 1757669894412,
ack: false,
lc: 1757669894412,
from: 'system.adapter.admin.0',
q: 0,
c: undefined,
user: 'system.user.admin'
}
}
aber das Skript startet wieder 2x:
javascript.0 2025-09-12 11:38:15.492 info Start JavaScript script.js.common.Bewässerung.Ventil_Steuerung (Javascript/js)
javascript.0 2025-09-12 11:38:14.589 info Start JavaScript script.js.common.Bewässerung.Ventil_Steuerung (Javascript/js)
Und beide gestartet Skripts laufen dann parallel weiter...