ReferenceError: "Ephemeris" is not defined

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
krause
Beiträge: 20
Registriert: 4. Aug 2022 17:42
Answers: 0

ReferenceError: "Ephemeris" is not defined

Beitrag von krause »

Ich versuche mich gerade an Ephemeris. Wenn ich mein Mini-Testscript

Code: Alles auswählen

var logger = Java.type('org.slf4j.LoggerFactory').getLogger('org.openhab.rule.' + ctx.ruleUID);
if (Ephemeris.isWeekend())
{
  logger.info("Wochenende");  
}
else
{
  logger.info("Wochentag");      
}
ausführe, erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

ReferenceError: "Ephemeris" is not defined
Was läuft hier falsch? In welchem Verzeichnis muss die Konfigurationsdatei liegen? Bei meiner Suche habe ich 2 Dateien ephemeris.config mit identischem Inhalt gefunden: in /srv/openhab-userdata/config/org/openhab und in /var/lib/openhab/config/org/openhab.

Ich benutze OH3.

Vielen Dank im Voraus.
K.
von Harka » 30. Okt 2022 17:14
Mit Blockly erzeugt

Code: Alles auswählen

var ephemeris = Java.type("org.openhab.core.model.script.actions.Ephemeris");
var logger = Java.type('org.slf4j.LoggerFactory').getLogger('org.openhab.rule.' + ctx.ruleUID);

if (ephemeris.isWeekend(0)) {
  logger.info('Wochenende');
} else {
  logger.info('No');
}
Gehe zur vollständigen Antwort

Benutzeravatar
udo1toni
Beiträge: 15249
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: ReferenceError: "Ephemeris" is not defined

Beitrag von udo1toni »

Du musst zunächst die Ephemeris Actions importieren. also vermutlich sowas: from core.actions import Ephemeris
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Harka
Beiträge: 489
Registriert: 30. Apr 2021 13:13
Answers: 19

Re: ReferenceError: "Ephemeris" is not defined

Beitrag von Harka »

Mit Blockly erzeugt

Code: Alles auswählen

var ephemeris = Java.type("org.openhab.core.model.script.actions.Ephemeris");
var logger = Java.type('org.slf4j.LoggerFactory').getLogger('org.openhab.rule.' + ctx.ruleUID);

if (ephemeris.isWeekend(0)) {
  logger.info('Wochenende');
} else {
  logger.info('No');
}

krause
Beiträge: 20
Registriert: 4. Aug 2022 17:42
Answers: 0

Re: ReferenceError: "Ephemeris" is not defined

Beitrag von krause »

Jetzt funktioniert es. Danke Euch!

Antworten