User Tools

Site Tools


haussteuerung:automatiken

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
haussteuerung:automatiken [2025/10/22 06:37] dominikhaussteuerung:automatiken [2025/10/22 06:44] (current) dominik
Line 1: Line 1:
-====== Automatiken ======+====== ioB Scripte ====== 
 + 
 +===== Automatiken =====
 <code> <code>
    /*******************************************************    /*******************************************************
Line 313: Line 315:
 </code> </code>
  
 +===== Licht nach Sonne =====
 +<code | download>
 +// Licht um 6 Uhr ein
 +schedule("0 6 * * *", function () {
 +  if (compareTime('06:00', null, ">", getAstroDate("sunrise", undefined, 0))) {
 +    console.log('Haustür : Schalte das Licht ein (06:00)');
 +    setState("hm-rpc.0.NEQ1504413.1.STATE"/*OD_SW_Haustue_Licht:1.STATE*/, true);
 +  } else {
 +    console.log('Haustür : Licht bleibt aus (Sonnenaufgang < 06:00)');
 +  }
 +});
 +
 +// Licht um X Uhr aus nach Sonnenstand
 +schedule({astro: "sunriseEnd", shift: 30}, function () {
 +  console.log((['Haustür : Schalte das Licht aus um : ',formatDate(new Date(), "hh:mm:ss"),' (Sunrise End : ',getAstroDate("sunriseEnd", undefined, 0),')'].join('')));
 +  setState("hm-rpc.0.NEQ1504413.1.STATE"/*OD_SW_Haustue_Licht:1.STATE*/, false);
 +});
 +
 +// Licht Abends um X Uhr an nach Sonnenstand
 +schedule({astro: "sunsetStart", shift: -20}, function () {
 +  if (compareTime('23:00', null, "<", getAstroDate("sunsetStart", undefined, -20))) {
 +    console.log((['Haustür : Schalte das Licht ein um : ',formatDate(new Date(), "hh:mm:ss"),' (Sunset Start : ',getAstroDate("sunsetStart", undefined, 0),')'].join('')));
 +    setState("hm-rpc.0.NEQ1504413.1.STATE"/*OD_SW_Haustue_Licht:1.STATE*/, true);
 +  } else {
 +    console.log('Haustür : Licht bleibt aus (Sonnenuntergang > 23:00)');
 +  }
 +});
 +
 +// Licht um 23 Uhr aus
 +schedule("0 23 * * *", function () {
 +  console.log('Haustür : Schalte das Licht aus (22:00)');
 +  setState("hm-rpc.0.NEQ1504413.1.STATE"/*OD_SW_Haustue_Licht:1.STATE*/, false);
 +});
 +
 +schedule({astro: "sunrise", shift: 0}, function () {
 +  console.debug(('Astro : Sunrise : ' + String(formatDate(new Date(), "hh:mm:ss"))));
 +});
 +
 +schedule({astro: "sunsetStart", shift: 0}, function () {
 +  console.debug(('Astro : Sunset Start : ' + String(formatDate(new Date(), "hh:mm:ss"))));
 +});
 +
 +schedule({astro: "sunriseEnd", shift: 0}, function () {
 +  console.debug(('Astro : Sunrise End : ' + String(formatDate(new Date(), "hh:mm:ss"))));
 +});
 +
 +schedule({astro: "sunset", shift: 0}, function () {
 +  console.debug(('Astro : Sunset : ' + String(formatDate(new Date(), "hh:mm:ss"))));
 +});
 +
 +</code>
 +
 +===== Licht bei Bewegung Garage =====
 +<code | download>
 +// Licht Haustür bei Bewegung an und wieder aus machen
 +on({id: 'hm-rpc.0.NEQ0119442.1.MOTION', val: true}, function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  console.log('Bewegung Haustür erkannt');
 +  if (getState("hm-rpc.0.NEQ1222700.1.STATE").val == false) {
 +    console.log('Schalte das Licht Garage EIN für 4 Minuten');
 +    // Motion wieder zurück setzen - wird nicht immer resettet
 +    setState("hm-rpc.0.NEQ0119442.1.MOTION"/*OD_SB_Haustuer:1.MOTION*/, false);
 +    setState("hm-rpc.0.NEQ1222700.1.STATE"/*GR_AS_LichtAussen_2erLicht:1.STATE*/, true);
 +    setStateDelayed("hm-rpc.0.NEQ1222700.1.STATE"/*GR_AS_LichtAussen_2erLicht:1.STATE*/, false, 420000, false);
 +    setState("hm-rpc.0.NEQ1222700.2.STATE"/*GR_AS_LichtAussen_4erLicht:2.STATE*/, true);
 +    setStateDelayed("hm-rpc.0.NEQ1222700.2.STATE"/*GR_AS_LichtAussen_4erLicht:2.STATE*/, false, 360000, false);
 +  } else {
 +    console.log('Licht draussen ist schon eingeschaltet');
 +  }
 +});
 +</code>
 +
 +===== Heizung =====
 +<code | download>
 +// Heizung alle ausschalten / auf Default setzen
 +on({id: "Global.0.Heizung.AlleAus"/*AlleAus*/, val: true}, function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Heizung.AlleAus").val == true) {
 +    console.log(('Heizung : Schalte alle Heizungen auf Default / Aus'));
 +    setState("Global.0.Heizung.AlleAus"/*AlleAus*/, false);
 +    // Erdgeschoss
 +    setState("hm-rpc.0.LEQ0423081.4.SET_TEMPERATURE"/*AZ_HZ:4.SET_TEMPERATURE*/, 16);
 +    setState("hm-rpc.0.MEQ0248967.4.SET_TEMPERATURE"/*WZ_HZ_Gross:4.SET_TEMPERATURE*/, 18);
 +    setState("hm-rpc.0.MEQ0249461.4.SET_TEMPERATURE"/*WZ_HZ_Sofa:4.SET_TEMPERATURE*/, 19);
 +    setState("hm-rpc.0.MEQ0249467.4.SET_TEMPERATURE"/*WZ_HZ_Klein:4.SET_TEMPERATURE*/, 18.5);
 +    setState("hm-rpc.0.MEQ0249356.4.SET_TEMPERATURE"/*KU_HZ:4.SET_TEMPERATURE*/, 19);
 +    setState("hm-rpc.0.MEQ1552083.4.SET_TEMPERATURE"/*WC_HZ:4.SET_TEMPERATURE*/, 14);
 +    // Keller
 +    setState("hm-rpc.0.MEQ1554281.4.SET_TEMPERATURE"/*KL_HZ_Hobby:4.SET_TEMPERATURE*/, 8);
 +    setState("hm-rpc.0.MEQ1883925.4.SET_TEMPERATURE"/*KL_HZ_Bastel:4.SET_TEMPERATURE*/, 0);
 +    setState("hm-rpc.0.MEQ1885072.4.SET_TEMPERATURE"/*KL_HZ_Sauna:4.SET_TEMPERATURE*/, 0);
 +    // Erste Etage
 +    setState("hm-rpc.0.MEQ1554264.4.SET_TEMPERATURE"/*LN_HZ:4.SET_TEMPERATURE*/, 17);
 +    setState("hm-rpc.0.MEQ0249466.4.SET_TEMPERATURE"/*BD_HZ:4.SET_TEMPERATURE*/, 18);
 +    setState("hm-rpc.0.MEQ1550232.4.SET_TEMPERATURE"/*SZ_HZ:4.SET_TEMPERATURE*/, 15);
 +    setState("hm-rpc.0.MEQ1550206.4.SET_TEMPERATURE"/*GZ_HZ:4.SET_TEMPERATURE*/, 15);
 +  }
 +});
 +</code>
 +
 +<code | download>
 +// Heizung um 5:30 Uhr einschalten wenn Automatik eingeschaltet
 +schedule("30 5 * * *", function () {
 +  if (getState("Global.0.Heizung.BD_Automatik").val == true) {
 +    console.log('Bad : Schalte Heizung ein (06:00)');
 +    setState("hm-rpc.0.MEQ0249466.4.SET_TEMPERATURE"/*BD_HZ:4.SET_TEMPERATURE*/, 21);
 +  }
 +});
 +
 +// Heizung um 9:30 Uhr ausschalten
 +schedule("30 9 * * *", function () {
 +  console.log('Bad : Schalte Heizung aus (09:30)');
 +  setState("hm-rpc.0.MEQ0249466.4.SET_TEMPERATURE"/*BD_HZ:4.SET_TEMPERATURE*/, 18);
 +});
 +</code>
 +
 +<code | download>
 +// Heizungen im WZ gemeinsam steuern
 +on({id: "Global.0.Heizung.WZ_SetTempAlle"/*WZ_SetTempAlle*/, change: "ne"}, function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  console.log((['WZ Heizung : Setzte Temperatur auf ',getState("Global.0.Heizung.WZ_SetTempAlle").val,' °C'].join('')));
 +  setState("hm-rpc.0.MEQ0248967.4.SET_TEMPERATURE"/*WZ_HZ_Gross:4.SET_TEMPERATURE*/, getState("Global.0.Heizung.WZ_SetTempAlle").val);
 +  setState("hm-rpc.0.MEQ0249461.4.SET_TEMPERATURE"/*WZ_HZ_Sofa:4.SET_TEMPERATURE*/, (getState("Global.0.Heizung.WZ_SetTempAlle").val + 1));
 +  setState("hm-rpc.0.MEQ0249467.4.SET_TEMPERATURE"/*WZ_HZ_Klein:4.SET_TEMPERATURE*/, (getState("Global.0.Heizung.WZ_SetTempAlle").val + 0.5));
 +});
 +</code>
 +
 +===== Licht Bewegung Küche =====
 +<code | download>
 +/*******************************************************
 +* Licht bei Bewegung in der Küche einschalten
 +
 +* Geräte
 +* zigbee.0.14b457fffe7c749a.occupancy   KU_Bewegung                 Bewegungssensor
 +* hm-rpc.0.NEQ0951347.1.STATE           KU_AS_Regal_Deko:1.STATE    Schaltkontakt
 +*******************************************************/
 +
 +var Lampe_Aus;
 +
 +// Bewegungsflag setzen 
 +on({id: 'zigbee.0.14b457fffe7c749a.occupancy', change: "ne"}, function (obj) {
 +    if (obj.state.val == true) {
 +        // Nur ausführen wenn dunkel
 +        if (compareTime(getAstroDate("sunriseEnd", undefined, 10), getAstroDate("sunsetStart", undefined, -10), "not between", null)) {
 +            // Soll der Bewegungsmelder genutzt werden ? 
 +            if (getState("Global.0.Automatik.KU_Bewegungsmelder_AnAus").val == true) {
 +                setState("Global.0.Räume.Küche.KU_BewegungErkannt", true);
 +                if (Lampe_Aus) {clearTimeout(Lampe_Aus); Lampe_Aus = null;};
 +                Lampe_Aus = setTimeout(function () {
 +                    setState("Global.0.Räume.Küche.KU_BewegungErkannt", false);
 +                }, 360000); // 6 Minuten
 +            }
 +        } 
 +    }
 +});
 +
 +// Tastendruck auswerten und Flag setzen
 +on({id: 'hm-rpc.0.MEQ1844894.1.INSTALL_TEST', change: "any"}, function (obj) {
 +    var motion = getState("Global.0.Räume.Küche.KU_BewegungErkannt").val;
 +    var press  = getState("Global.0.Räume.Küche.KU_LichtSpüleAn").val;
 +    // Wenn das Licht aus ist -> an
 +    if (!motion && !press){
 +        setState("Global.0.Räume.Küche.KU_LichtSpüleAn", true);
 +        console.log("Tastendruck - Licht an");
 +    }
 +
 +    // Wenn das Licht an ist -> aus
 +    if (motion || press) {
 +        setState("Global.0.Räume.Küche.KU_LichtSpüleAn", false);
 +        setState("Global.0.Räume.Küche.KU_BewegungErkannt", false);
 +        console.log("Tastendruck - Licht AUS");
 +    }    
 +});
 +
 +// Licht einschalten wenn sich ein Status ändert
 +on({id: new RegExp('Global\\.0\\.Räume\\.Küche\\.KU_BewegungErkannt' + "|" + 'Global\\.0\\.Räume\\.Küche\\.KU_LichtSpüleAn'), change: "ne"}, function (obj) {
 +    var motion = getState("Global.0.Räume.Küche.KU_BewegungErkannt").val;
 +    var press  = getState("Global.0.Räume.Küche.KU_LichtSpüleAn").val;
 +    console.log("Licht schalten - Motion : " + motion + ", Switch : " + press + ", State : " + motion || press);
 +    setState("hm-rpc.0.NEQ0951347.1.STATE", motion || press);
 +});
 +
 +// Licht ausschalten wenn lange gedrückt
 +// on({id: 'hm-rpc.0.MEQ1844894.1.PRESS_LONG_RELEASE', change: "any"}, function (obj) {
 +//     console.log("Langer Tastendruck - Licht aus");
 +//     setState("Global.0.Räume.Küche.KU_LichtSpüleAn", false);
 +//     setState("Global.0.Räume.Küche.KU_BewegungErkannt", false);
 +// });
 +
 +</code>
 +
 +===== Rollos =====
 +<code | download>
 +/***********************************************
 +* Rollos 
 +* Level 0 (unten) bis 100 (oben) Mitte ist eher 80
 +
 +* hm-rpc.0.NEQ1214347.1.LEVEL   WZ_RL_ErkerLinks:1.LEVEL    
 +* hm-rpc.0.LEQ1025898.1.LEVEL   WZ_RL_ErkerMitte:1.LEVEL
 +* hm-rpc.0.QEQ1928719.1.LEVEL   WZ_RL_ErkerRechts:1.LEVEL
 +* hm-rpc.0.LEQ1026100.1.LEVEL   WZ_RL_SeiteGross:1.LEVEL
 +* hm-rpc.0.NEQ1562563.1.LEVEL   WZ_RL_SeiteKlein:1.LEVEL
 +* hm-rpc.0.LEQ1025905.1.LEVEL   WZ_RL_Strasse:1.LEVEL
 +* hm-rpc.0.LEQ1025913.1.LEVEL   KU_RL_Einfahrt:1.LEVEL
 +* hm-rpc.0.PEQ0183133.1.LEVEL   KU_RL_Feld:1.LEVEL
 +* hm-rpc.0.LEQ1032151.1.LEVEL   AZ_RL_Strasse:1.LEVEL
 +* hm-rpc.0.LEQ1032236.1.LEVEL   AZ_RL_Einfahrt:1.LEVEL
 +*/
 +
 +on({id: 'Global.0.Rollos.Control', change: "ne"}, function (obj) {
 +    var value = obj.state.val;
 +    var oldValue = obj.oldState.val;
 +
 +    switch (value) {
 +        // Für Tags alle hochfahren
 +        case "allup":
 +            setStateDelayed("hm-rpc.0.NEQ1214347.1.LEVEL", 100,    0, false);  // WZ_RL_ErkerLinks
 +            setStateDelayed("hm-rpc.0.LEQ1025898.1.LEVEL", 100, 1000, false);  // WZ_RL_ErkerMitte
 +            setStateDelayed("hm-rpc.0.QEQ1928719.1.LEVEL", 100, 2000, false);  // WZ_RL_ErkerRechts
 +            setStateDelayed("hm-rpc.0.LEQ1026100.1.LEVEL", 100, 3000, false);  // WZ_RL_SeiteGross
 +            setStateDelayed("hm-rpc.0.NEQ1562563.1.LEVEL",  50, 4000, false);  // WZ_RL_SeiteKlein
 +            setStateDelayed("hm-rpc.0.LEQ1025905.1.LEVEL", 100, 5000, false);  // WZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1025913.1.LEVEL", 100, 6000, false);  // KU_RL_Einfahrt
 +            setStateDelayed("hm-rpc.0.PEQ0183133.1.LEVEL", 100, 7000, false);  // KU_RL_Feld
 +            setStateDelayed("hm-rpc.0.LEQ1032151.1.LEVEL",  40, 8000, false);  // AZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1032236.1.LEVEL",  70, 9000, false);  // AZ_RL_Einfahrt
 +            break;
 +        // Für Nachts alle absenken
 +        case "alldown":
 +            setStateDelayed("hm-rpc.0.NEQ1214347.1.LEVEL",   0,    0, false);  // WZ_RL_ErkerLinks
 +            setStateDelayed("hm-rpc.0.LEQ1025898.1.LEVEL",   0, 1000, false);  // WZ_RL_ErkerMitte
 +            // Nicht schließen wenn Terassentür offen
 +            if (getState("hm-rpc.0.NEQ1481485.1.STATE").val == false) {
 +                setStateDelayed("hm-rpc.0.QEQ1928719.1.LEVEL",   0, 2000, false);  // WZ_RL_ErkerRechts
 +            } else {
 +                console.log("WZ_RL_ErkerRechts wird nicht geschlossen -> Terassentür auf");
 +            }
 +            setStateDelayed("hm-rpc.0.LEQ1026100.1.LEVEL",   0, 3000, false);  // WZ_RL_SeiteGross
 +            setStateDelayed("hm-rpc.0.NEQ1562563.1.LEVEL",   0, 4000, false);  // WZ_RL_SeiteKlein
 +            setStateDelayed("hm-rpc.0.LEQ1025905.1.LEVEL",   0, 5000, false);  // WZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1025913.1.LEVEL",   0, 6000, false);  // KU_RL_Einfahrt
 +            setStateDelayed("hm-rpc.0.PEQ0183133.1.LEVEL",   0, 7000, false);  // KU_RL_Feld
 +            setStateDelayed("hm-rpc.0.LEQ1032151.1.LEVEL",   0, 8000, false);  // AZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1032236.1.LEVEL",   0, 9000, false);  // AZ_RL_Einfahrt
 +            break;
 +        // Arbeitszimmer abdunkeln
 +        case "azdark":
 +            setStateDelayed("hm-rpc.0.LEQ1032151.1.LEVEL",  15,    0, false);  // AZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1032236.1.LEVEL",  25, 1000, false);  // AZ_RL_Einfahrt       
 +            break;
 +        // Arbeitszimmer aufhellen
 +        case "azlight":
 +            setStateDelayed("hm-rpc.0.LEQ1032151.1.LEVEL",  40,    0, false);  // AZ_RL_Strasse
 +            setStateDelayed("hm-rpc.0.LEQ1032236.1.LEVEL",  70, 1000, false);  // AZ_RL_Einfahrt        
 +            break;
 +        // Rollos im Erker auf 40% runter wegen Sonne
 +        case "erkersun":
 +            setStateDelayed("hm-rpc.0.NEQ1214347.1.LEVEL",  70,    0, false);  // WZ_RL_ErkerLinks
 +            setStateDelayed("hm-rpc.0.LEQ1025898.1.LEVEL",  70, 1000, false);  // WZ_RL_ErkerMitte
 +            if (getState("hm-rpc.0.NEQ1481485.1.STATE").val == false) {
 +                setStateDelayed("hm-rpc.0.QEQ1928719.1.LEVEL",  70, 2000, false);  // WZ_RL_ErkerRechts
 +            } else {
 +                console.log("WZ_RL_ErkerRechts wird nicht geschlossen -> Terassentür auf");
 +            }
 +            break;
 +        // Rolles um 30% Runter im Wohnzimmer für Vögel
 +        case "wz_birds":
 +            setStateDelayed("hm-rpc.0.NEQ1214347.1.LEVEL",  82,    0, false);       // WZ_RL_ErkerLinks
 +            setStateDelayed("hm-rpc.0.LEQ1025898.1.LEVEL",  82, 1000, false);       // WZ_RL_ErkerMitte
 +            if (getState("hm-rpc.0.NEQ1481485.1.STATE").val == false) {
 +                setStateDelayed("hm-rpc.0.QEQ1928719.1.LEVEL",  90, 2000, false);   // WZ_RL_ErkerRechts
 +            } else {
 +                console.log("WZ_RL_ErkerRechts wird nicht geschlossen -> Terassentür auf");
 +            }
 +            setStateDelayed("hm-rpc.0.LEQ1026100.1.LEVEL",  82, 3000, false);       // WZ_RL_SeiteGross
 +            setStateDelayed("hm-rpc.0.NEQ1562563.1.LEVEL",  50, 4000, false);       // WZ_RL_SeiteKlein
 +            setStateDelayed("hm-rpc.0.LEQ1025905.1.LEVEL",  70, 5000, false);       // WZ_RL_Strasse
 +            break;
 +        // alle anhalten
 +        case "stop":
 +            setState("hm-rpc.0.NEQ1214347.1.STOP", true);  // WZ_RL_ErkerLinks
 +            setState("hm-rpc.0.LEQ1025898.1.STOP", true);  // WZ_RL_ErkerMitte
 +            setState("hm-rpc.0.QEQ1928719.1.STOP", true);  // WZ_RL_ErkerRechts
 +            setState("hm-rpc.0.LEQ1026100.1.STOP", true);  // WZ_RL_SeiteGross
 +            setState("hm-rpc.0.NEQ1562563.1.STOP", true);  // WZ_RL_SeiteKlein
 +            setState("hm-rpc.0.LEQ1025905.1.STOP", true);  // WZ_RL_Strasse
 +            setState("hm-rpc.0.LEQ1025913.1.STOP", true);  // KU_RL_Einfahrt
 +            setState("hm-rpc.0.PEQ0183133.1.STOP", true);  // KU_RL_Feld
 +            setState("hm-rpc.0.LEQ1032151.1.STOP", true);  // AZ_RL_Strasse
 +            setState("hm-rpc.0.LEQ1032236.1.STOP", true);  // AZ_RL_Einfahrt
 +            break;
 +    }
 +
 +    setState("Global.0.Rollos.Control", "done");
 +});
 +
 +</code>
 +
 +===== Terasse =====
 +<code | download>
 +on({id: 'Global.0.Markiese.MoveTopOut', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveTopOut").val == true) {
 +    if (getState("Global.0.Automatik.OD_Markiese_Sommerbetrieb").val == true) {
 +      console.log('Markiese Oben : Ausfahren aktiviert ...');
 +      setState("Global.0.Markiese.MoveTopOut"/*MoveTopOut*/, false);
 +      setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein*/, '0');
 +      setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus*/, '1');
 +      // Nach 60 Sekunden den Ausgang wieder abschalten !
 +      setStateDelayed("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus*/, '0', 60000, false);
 +    } else {
 +      console.warn('Markiese Oben : Winterbetrieb aktiviert - kein Ausfahren !');
 +    }
 +  }
 +});
 +
 +on({id: 'Global.0.Markiese.MoveTopIn', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveTopIn").val == true) {
 +    console.log('Markiese Oben : Einfahren aktiviert ...');
 +    setState("Global.0.Markiese.MoveTopIn"/*MoveTopIn*/, false);
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus*/, '0');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein*/, '1');
 +    // Nach 60 Sekunden den Ausgang wieder abschalten !
 +    setStateDelayed("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein*/, '0', 60000, false);
 +  }
 +});
 +
 +on({id: 'Global.0.Markiese.MoveTopStop', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveTopStop").val == true) {
 +    console.log('Markiese Oben : NOTSTOP ...');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Rein*/, '0');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Oben_Raus*/, '0');
 +    setState("Global.0.Markiese.MoveTopOut"/*MoveTopOut*/, false);
 +    setState("Global.0.Markiese.MoveTopIn"/*MoveTopIn*/, false);
 +    setState("Global.0.Markiese.MoveTopStop"/*MoveTopStop*/, false);
 +  }
 +});
 +
 +on({id: 'Global.0.Markiese.MoveFrontOut', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveFrontOut").val == true) {
 +    if (getState("Global.0.Automatik.OD_Markiese_Sommerbetrieb").val == true) {
 +      console.log('Markiese Vorne : Ausfahren aktiviert ...');
 +      setState("Global.0.Markiese.MoveFrontOut"/*MoveFrontOut*/, false);
 +      setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up*/, '0');
 +      setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down*/, '1');
 +      // Nach 60 Sekunden den Ausgang wieder abschalten !
 +      setStateDelayed("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down*/, '0', 60000, false);
 +    } else {
 +      console.warn('Markiese Vorne : Winterbetrieb aktiviert - kein Ausfahren !');
 +    }
 +  }
 +});
 +
 +on({id: 'Global.0.Markiese.MoveFrontIn', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveFrontIn").val == true) {
 +    console.log('Markiese Vorne : Einfahren aktiviert ...');
 +    setState("Global.0.Markiese.MoveFrontIn"/*MoveFrontIn*/, false);
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down*/, '0');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up*/, '1');
 +    // Nach 60 Sekunden den Ausgang wieder abschalten !
 +    setStateDelayed("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up*/, '0', 60000, false);
 +  }
 +});
 +
 +on({id: 'Global.0.Markiese.MoveFrontStop', change: "any"}, async function (obj) {
 +  var value = obj.state.val;
 +  var oldValue = obj.oldState.val;
 +  if (getState("Global.0.Markiese.MoveFrontStop").val == true) {
 +    console.log('Markiese Vorne : NOTSTOP ...');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_down*/, '0');
 +    setState("mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up"/*mqtt.0.Schaltschrank.Switch_Bank_2.Markise_Vorne_up*/, '0');
 +    setState("Global.0.Markiese.MoveFrontOut"/*MoveFrontOut*/, false);
 +    setState("Global.0.Markiese.MoveFrontIn"/*MoveFrontIn*/, false);
 +    setState("Global.0.Markiese.MoveFrontStop"/*MoveFrontStop*/, false);
 +  }
 +});
 +
 +</code>
  
  
haussteuerung/automatiken.1761107847.txt.gz · Last modified: by dominik

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki