Mal wieder Ephemeris

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
guinnes
Beiträge: 146
Registriert: 21. Apr 2020 19:46
Answers: 0

Mal wieder Ephemeris

Beitrag von guinnes »

Moin
Der Titel sagt es : ich versuche mit Ephemeris was zu machen und stehe vor Rätseln.
Ich habe versucht, ob meine Einstellungen richtig sind bzw. ob denn Einstellugen was bewirken :
1. Wenn ich als Region Bayern einstelle, sollte der 06.01 ein Feiertag sein, ist aber nicht, ebenso sollte der 08.06 kein Feiertag sein ist es aber
2. Wenn ich versuche, die Feiertage nach deutsch zu übersetzen bekomme ich :
Can't find bundle for base name descriptions.holiday_descriptions, locale de_DE
Die Konfiguration habe ich sowohl in der /services/ephemeris.cfg gemacht :

Code: Alles auswählen

country=de
region=nw
dayset-workday=[MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY]
dayset-weekend=[SATURDAY,SUNDAY]
als auch in der runtime.cfg.
Die Dateien "country_descriptions_de.properties" und "holiday_descriptions_de.properties" liegen im selben Verzeichniss ( Sollten gar nicht nötig sein, da die Daten in den Resourcen der Java-Files sind )

Kann mir jemand helfen ?
Glückauf
guinnes

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Mal wieder Ephemeris

Beitrag von int5749 »

Moin,

also Ephemeris ist eine Zicke ;) kämpfe auch noch mit privaten Spezial Tagen
guinnes hat geschrieben: 3. Okt 2023 21:00 1. Wenn ich als Region Bayern einstelle, sollte der 06.01 ein Feiertag sein, ist aber nicht, ebenso sollte der 08.06 kein Feiertag sein ist es aber
Ich habe gerade noch einmal im Ferienkalender geschaut: Der 08.06. ist auch in Bayern ein Feiertag
guinnes hat geschrieben: 3. Okt 2023 21:00

Code: Alles auswählen

country=de
region=nw
dayset-workday=[MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY]
dayset-weekend=[SATURDAY,SUNDAY]
region=nw ist doch Nordrhein-Westfalen, da ist der 06.01. kein Feiertag.

Möchtest Du denn NRW oder Bayern?

Mit welchem Befehle übersetzt Du denn den "Feiertag"??
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Benutzeravatar
guinnes
Beiträge: 146
Registriert: 21. Apr 2020 19:46
Answers: 0

Re: Mal wieder Ephemeris

Beitrag von guinnes »

int5749 hat geschrieben: 3. Okt 2023 21:25 also Ephemeris ist eine Zicke ;) kämpfe auch noch mit privaten Spezial Tagen
guinnes hat geschrieben: 3. Okt 2023 21:00 1. Wenn ich als Region Bayern einstelle, sollte der 06.01 ein Feiertag sein, ist aber nicht, ebenso sollte der 08.06 kein Feiertag sein ist es aber
Ich habe gerade noch einmal im Ferienkalender geschaut: Der 08.06. ist auch in Bayern ein Feiertag
Stimmt, hab ich mich wohl verlesen :oops:
guinnes hat geschrieben: 3. Okt 2023 21:00

Code: Alles auswählen

country=de
region=nw
dayset-workday=[MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY]
dayset-weekend=[SATURDAY,SUNDAY]
region=nw ist doch Nordrhein-Westfalen, da ist der 06.01. kein Feiertag.
Das ist der Stand der Datei, nachdem ich alles wieder richtig für meinen Standort eingestellt hatte
Mit welchem Befehle übersetzt Du denn den "Feiertag"??
Ich machs mit Blockly, der Code, der dabei rauskommt ist :

Code: Alles auswählen

var Ephemeris = Java.type('org.openhab.core.model.script.actions.Ephemeris');


console.info((Ephemeris.getHolidayDescription(Ephemeris.getBankHolidayName(time.toZDT('2023-06-08')))));
Wenn ich die Übersetzung "Ephemeris.getHolidayDescription" rauslasse, kommt ein plausibler Feiertagname dabei raus, aber eben leider in Englisch
Glückauf
guinnes

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Mal wieder Ephemeris

Beitrag von int5749 »

Bei Blockly kann ich Dir nicht helfen, aber mit dem Inhalt meiner DSL Rule. Evtl. kannst Du das umbauen?

Bei mir läuft um 5Min nach Mitternacht eine Regel und setzt mir ein Text-Item zur Anzeige in der iPhone App

Code: Alles auswählen

    val String strHoliday = '/etc/openhab/services/holidays_de.xml'        <<== Pfad zur lokalen Datei der deutschen Übersetzung
    val String strSpecialday = '/etc/openhab/services/specialdays.xml'    <<== Pfad für meine persönlichen Tage
    val dtDate = new DateTimeType().zonedDateTime.plusDays(0)	          <<== HEJUTE

    var String strToday = "regular"                                                         <<== Default

Ab hier passiert Ephemeris Magie

    if  (Ephemeris.isBankHoliday(dtDate, strHoliday)) {
        strToday = Ephemeris.getHolidayDescription(Ephemeris.getBankHolidayName(dtDate, strHoliday))
        Holiday.postUpdate(ON)
    } else {
        Holiday.postUpdate(OFF)
        if (Ephemeris.isBankHoliday(dtDate, strSpecialday))
            strToday = Ephemeris.getBankHolidayName(dtDate, strSpecialday)
    }
    TodayIs.postUpdate(strToday)
Für heute steht dann in "TodayIs" => "Tag der deutschen Einheit"
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Benutzeravatar
guinnes
Beiträge: 146
Registriert: 21. Apr 2020 19:46
Answers: 0

Re: Mal wieder Ephemeris

Beitrag von guinnes »

Danke für die Antwort.
Ich habs versucht :

Code: Alles auswählen

    val String strHoliday = '/etc/openhab/services/Holidays_de.xml'      //  <<== Pfad zur lokalen Datei der deutschen Übersetzung
    val String strSpecialday = '/etc/openhab/services/specialdays.xml'   // <<== Pfad für meine persönlichen Tage
    val dtDate = new DateTimeType().zonedDateTime.minusDays(1)	         // <<== HEJUTE

    var String strToday = "regular"                                      //                   <<== Default

//Ab hier passiert Ephemeris Magie

    if  (Ephemeris.isBankHoliday(dtDate, strHoliday)) {
        strToday = Ephemeris.getHolidayDescription(Ephemeris.getBankHolidayName(dtDate, strHoliday))
        //Holiday.postUpdate(ON)
    } else {
        //Holiday.postUpdate(OFF)
        //if (Ephemeris.isBankHoliday(dtDate, strSpecialday))
        //    strToday = Ephemeris.getBankHolidayName(dtDate, strSpecialday)
    }
    //TodayIs.postUpdate(strToday)
    logInfo("Ephebla", "Übersetzung {}",strToday)
Ergebniss :
Script execution of rule with UID 'Test5' failed: Can't find bundle for base name descriptions.holiday_descriptions, locale de_DE
Mittlerweile gehe ich davon aus, daß es einfach nicht tut
Ach ja, meine Version :
openHAB 4.0.2
Release Build
Interessant ist vielleicht noch, daß der Fehler nur kommt, wenn es einen Feiertag gibt
Glückauf
guinnes

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Mal wieder Ephemeris

Beitrag von int5749 »

Hmm, ja weil ohne Feiertag keine Abfrage.

Dumme Frage: Du hast aber die Datei an der besagten Stelle im Dateisystem liegen?

Code: Alles auswählen

/etc/openhab/services/Holidays_de.xml
Die andere hast Du ja aus-kommentiert
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Benutzeravatar
guinnes
Beiträge: 146
Registriert: 21. Apr 2020 19:46
Answers: 0

Re: Mal wieder Ephemeris

Beitrag von guinnes »

int5749 hat geschrieben: 4. Okt 2023 17:52 Hmm, ja weil ohne Feiertag keine Abfrage.
Ich habe natürlich auch ohne die Feiertagsabfrage versucht, dann kommt einfach null, wenn kein Feiertag ist
Dumme Frage: Du hast aber die Datei an der besagten Stelle im Dateisystem liegen?

Code: Alles auswählen

/etc/openhab/services/Holidays_de.xml
Selbstverständlich, obwohl die nicht benötigt wird, weil alle landesspezifischen Dateien mit im Java-Paket enthalten sind
Die andere hast Du ja aus-kommentiert
Ich habe alles auskommentiert, was ich nicht brauche.
Jetzt habe ich allerdings eine Lösung gefunden : Map-Transformation ! Ist zwar ne Krücke, aber geht ( Dabei muß allerdings die Abfrage rein, da es sonst zu einer Fehlermeldung kommt, wenn der angegebene Tag kein Feiertag ist )
Die Übersetzung geht übrigens bei der 3.4.1 auch schon nicht, ich frage mich, warum es bei dir funktioniert ??
Glückauf
guinnes

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Mal wieder Ephemeris

Beitrag von int5749 »

guinnes hat geschrieben: 4. Okt 2023 18:51 Die Übersetzung geht übrigens bei der 3.4.1 auch schon nicht, ich frage mich, warum es bei dir funktioniert ??
Bei mir läuft das so seit einer frühen 3.x und auch jetzt noch unter 4.0.2 bzw. mittlerweile 4.0.3
Der von mit gepostete Code ist 1:1 und nur in einer Rule, welche bei Systemstart oder Nachts um 5-nach-Mitternacht ausgeführt wird.

Seltsam!

Ich habe gerade noch einmal meine emphemeris.cfg überprüft, ich habe 1 Eintrag mehr als Du.
Evtl. liegt es an dem language Parameter?

Code: Alles auswählen

country=de
region=nw
language=de
dayset-workday=[MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY]
dayset-weekend=[SATURDAY,SUNDAY]
Viele Grüße
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Benutzeravatar
guinnes
Beiträge: 146
Registriert: 21. Apr 2020 19:46
Answers: 0

Re: Mal wieder Ephemeris

Beitrag von guinnes »

int5749 hat geschrieben: 4. Okt 2023 20:46 Ich habe gerade noch einmal meine emphemeris.cfg überprüft, ich habe 1 Eintrag mehr als Du.
Evtl. liegt es an dem language Parameter?

Code: Alles auswählen

country=de
region=nw
language=de
dayset-workday=[MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY]
dayset-weekend=[SATURDAY,SUNDAY]
Viele Grüße
Danke nochmal.
Leider hat das auch nichts gebracht.
Glückauf
guinnes

Antworten