@iR0fl
Hallo. Du kannst auf https://materialdesignicons.com/ dir das passende Icon auswählen.
Dann trägst du den "Namen" des Icons zB speedometer oder power-socket-eu im Gerät ein, oder beim Tab.
@iR0fl
Hallo. Du kannst auf https://materialdesignicons.com/ dir das passende Icon auswählen.
Dann trägst du den "Namen" des Icons zB speedometer oder power-socket-eu im Gerät ein, oder beim Tab.
@homoran Die Lampe1 und Lampe2 im Flur geht zu früh an.
Wie gesagt, ich habe die Skripts nur so bekommen und es funktionierte sonst immer. Ich steige da sowieso nicht durch. Dachte ihr seht das und wisst sofort "Aaah, ja. Das fehlt was..." - Fertig
@homoran Also ich weiß nur. Er checkt mit dem BWM im Flur, ob Bewegung da ist. Wenn Bewegung erkannt, checkt das Skript ob im Wohnzimmer das Licht an ist. Wenn das Licht an ist, dann bleibt der Flur aus. Wenn aber im Wohnzimmer das Licht aus ist, dann checkt er die Astrozeit und macht die Lampe an. Ab 20:30 Uhr dann halt nur mit 30%...
Von Range Sonnenuntergang Bis Range Sonnenaufgang
@homoran sagte in Astrozeit spinnt - Lampen sind zu früh an:
i h finde da auch kein licht an
setState(lampe1 + '.on', true)
setState(lampe2 + '.on', true)
@homoran Nee ab 20:30 Uhr soll es "dunkler" beleuchtet sein... Denn das Licht im Flur sieht man im Kinderzimmer. Vor 20:30 Uhr kann das Flurlicht ruhig auf 100% sein. So war es eigentlich geplant.
Das Skript checkt: Licht im Wohnzimmer an, ja nein? Wenn ja, dann kein Licht an. Wenn nein, dann geht das Flurlicht an (Wenn nach 20:30 Uhr dann nur 30% oder so)
@thomas-braun Den Root hatte ich eben nur in der Konsole auf Proxmox angemeldet, um nach der Uhrzeit zu schauen.
@homoran Oh Dann weiß ich nicht. Wann exakt die Lampen angehen weiß ich nicht. Glaube aber, dass es schon bereits vor 18 Uhr angeht, obwohl es deutlich zu hell für Licht im Flur ist. "Früher" funktionierte das.
@homoran Hast du eine andere Möglichkeit für mich? Dann nehme ich die gern, damit die Lampe endlich nur im Dunkeln angeht
Das Skript hatte ich oben ja gepostet. Es ist unter Skripte > common > Astrozeit
Dort zieht er sich ja anscheinend die Tageszeit und trägt sie dort in den Ordner ein. Vermute ich.
/* System Tageszeoten
Skript meldet Tageszeiten
Nacht;Frühmorgens;Morgengrauen;Vormittag;Mittag;Nachmittag;Dämmerung;Abend;
Basis: http://www.homematic-inside.de/tecbase/homematic/scriptlibrary/item/tageszeit-in-abschnitte-unterteilen
oder hier: https://github.com/ioBroker/ioBroker.javascript#astro--funktion
https://github.com/iobroker/ioBroker.javascript/blob/master/README.md#getastrodate
erstellt: 01.06.2015 von Pix
18.02.2018 Sonnenaufgang und Sonnenuntergang wird nur noch neu geschrieben
wenn die bereits gesetzte Zeit sich von der neuen Unterscheidet
11.12.2015 getAstroDate ermittelt nun auch Sonnenaufgang und Untergang
Astrotag (isAstroDay) eingebaut
*/
/*Variablen erstellen*/
createState('0_userdata.0.Allgemein.Astro.Tageszeit', {
name: 'Tageszeit'
});
createState('0_userdata.0.Allgemein.Astro.Tageszeit.Sonnenaufgang', {
name: 'nächster Sonnenaufgang Uhrzeit',
desc: 'sunrise (top edge of the sun appears on the horizon)'
});
createState('0_userdata.0.Allgemein.Astro.Tageszeit.Sonnenuntergang', {
name: 'nächster Sonnenuntergang Uhrzeit',
desc: 'sunset (sun disappears below the horizon, evening civil twilight starts)'
});
createState('0_userdata.0.Allgemein.Astro.Tageszeit.Astrotag', false, {
read: true,
write: true,
type: 'boolean',
name: 'Astologischer Tag',
desc: 'Zeit zwischen Sonnenauf- und untergang'
});
let idTageszeit = "0_userdata.0.Allgemein.Astro.Tageszeit",
tageszeiten = ['Nacht',
'Morgendämmerung',
'Morgen',
'Vormittag',
'Mittag',
'Nachmittag',
'Abenddämmerung',
'Abend'],
idAstrotag = "0_userdata.0.Allgemein.Astro.Tageszeit.Astrotag",
idSonnenaufgang = "0_userdata.0.Allgemein.Astro.Tageszeit.Sonnenaufgang",
idSonnenuntergang = "0_userdata.0.Allgemein.Astro.Tageszeit.Sonnenuntergang";
function zeiten_speichern () {
let astrotag = getState(idAstrotag).val,
sonnenaufgang,
sonnenuntergang;
let today = new Date();
let tomorrow = today.setDate(today.getDate()+1);
if (astrotag) { // Wenn Tag (Aufgang vorbei (erst wieder morgen, Untergang kommt noch heute)
sonnenuntergang = getAstroDate('sunset', today),
sonnenaufgang = getAstroDate('sunrise', tomorrow);
} else { // nach Nacht (Untergang vorbei (erst wieder morgen, Aufgang kommt heute oder morgen)
sonnenuntergang = getAstroDate('sunset', tomorrow);
sonnenaufgang = (today.getHours() > 12 && today.getHours() <= 23) ? getAstroDate('sunrise', tomorrow) : getAstroDate('sunrise', today); // es ist vor Mitternacht (bzw. vor 23:XXUhr), dann morgen, sonst heute
}
if(getState(idSonnenaufgang).val != sonnenaufgang){
setState(idSonnenaufgang, sonnenaufgang.toLocaleTimeString('de-DE', { hour12: false }));
}
if(getState(idSonnenuntergang).val != sonnenuntergang){
setState(idSonnenuntergang, sonnenuntergang.toLocaleTimeString('de-DE', { hour12: false }));
}
}
function neue_tageszeit(abschnitt) {
setState(idTageszeit, tageszeiten[parseInt(abschnitt, 10)]);
log('neue Tagezeit: ' + tageszeiten[parseInt(abschnitt, 10)], 'info');
zeiten_speichern();
}
// Nacht
schedule({astro: "night", shift: 120}, function () { neue_tageszeit(0) });
// Morgengdämmerung
schedule({astro: "nightEnd"}, function () { neue_tageszeit(1) });
// Morgen
schedule({astro: "sunrise"}, function () { neue_tageszeit(2) });
// Vormittag (beginnt 120min vor Sonnenhöchststand)
schedule({astro: "solarNoon", shift: -120}, function () { neue_tageszeit(3) });
// Mittag
schedule({astro: "solarNoon"}, function () { neue_tageszeit(4) });
// Nachmittag
schedule({astro: "solarNoon", shift: 60}, function () { neue_tageszeit(5) });
// Abenddämmerung (nach Sonnenuntergang)
schedule({astro: "dusk"}, function () { neue_tageszeit(6) });
// Abend
schedule({astro: "night"}, function () { neue_tageszeit(7) });
// Astrotag checken
schedule("*/1 * * * *", function () {
if (isAstroDay) setState(idAstrotag, true);
if (!isAstroDay) setState(idAstrotag, false);
zeiten_speichern();
});
@homoran Sry, aber ich bin da nicht so firms. Mir hatte man mal die beiden Skripte vor x Jahren mal gegeben und bis vor einigen Wochen funktionierte auch alles.
Laut kleinem Info Fenster wurde heute um 14:25 Uhr der Wert zuletzt aktualisiert.
Local time: Mon 2023-06-05 20:53:02 CEST
Universal time: Mon 2023-06-05 18:53:02 UTC
RTC time: n/a
Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
NTP service: inactive
RTC in local TZ: no