Seite 17 von 17

Re: OpenHab 3 Umstieg

Verfasst: 1. Mär 2021 21:29
von AndreM77
Hi,

ich meinte dies in OH2.
2021-03-01 21_27_33-Paper UI.png
Grüße
André

Re: OpenHab 3 Umstieg

Verfasst: 1. Mär 2021 22:58
von udo1toni
Ja, das ist mir schon klar. Paper UI Control ist aber eine Thing-Ansicht. Du siehst pro Thing einen Block, innerhalb des Blocks die Channel des Thing. Aber eben nur solche Channel, die auch mit mindestens einem Item verlinkt sind.

Mit korrekt gesetzten Tags wird das in OH3 auf den Pages automatisch generiert, sieht halt anders aus, von der Funktion her aber ähnlich.

Re: OpenHab 3 Umstieg

Verfasst: 22. Mär 2021 11:29
von DavGre
Cyrelian hat geschrieben: 30. Dez 2020 17:36 Ferien und Feiertage via ICAL von Seppy
Hab ich noch ans laufen bekommen. Nutze jetzt erstmal Ephemeris.
Hi,

könntest du dein Ephemeris Setting vielleicht mal posten? Ich kriege es nicht ans Laufen. In OH2 hatte ich die folgende Regel dazu erstellt:

Code: Alles auswählen

rule "Ephemeris - Ferien und Feiertag" 
when
   Time cron "0 0 * * * ?" 
then

        
   val String currentHoliday  = Ephemeris.getNextBankHoliday()
   val String nextHoliday  = Ephemeris.getNextBankHoliday()
   val long untilHoliday    = Ephemeris.getDaysUntil(nextHoliday)
   val String nextHolidayName = Ephemeris.getHolidayDescription(nextHoliday)
   val String untilWeekend = Ephemeris.isInDayset("beforeWeekend")
   val String currentHolidayName = Ephemeris.getHolidayDescription(currentHoliday)

   postUpdate(NextFeiertagName, nextHolidayName)
   postUpdate(Tage_bis_Feiertag, untilHoliday)

   logInfo("FILE","Nächster Feiertag ({}) ist in ({}) Tagen",nextHolidayName, untilHoliday)
   
   if (Ephemeris.isBankHoliday == true) {
      logInfo("FILE", "Heute ist ein Feiertag")
      Feiertag.sendCommand(ON) // Schalter Feiertag setzen
      //FeiertagName.postUpdate(currentHolidayName)  
      } 
   if (Ephemeris.isWeekend == true) {
      logInfo("FILE", "Wochenende") 
      Wochenende.sendCommand(ON) 
      } 
   if (Ephemeris.isWeekend == false) { 
      logInfo("FILE", "Arbeitswoche")
      Wochenende.sendCommand(OFF)
      } 
   if (Ephemeris.isBankHoliday == false) {
      logInfo("FILE", "Heute ist kein Feiertag")
      Feiertag.sendCommand(OFF) 
      //FeiertagName.postUpdate(currentHolidayName) 
      } 

end
Die Regel habe ich 1:1 in OH3 kopiert und bekomme ständig die folgende Fehlermeldung:

Code: Alles auswählen

Script execution of rule with UID 'ephemeris-1' failed: 'getNextBankHoliday' is not a member of 'org.openhab.core.items.GroupItem'; line 10, column 33, length 30 in ephemeris

Re: OpenHab 3 Umstieg

Verfasst: 25. Mär 2021 08:57
von Cyrelian
Hi,

klar. Here you go ;)

Code: Alles auswählen

//-------------  Ferien und Feiertage --------------------

/**
 * Feiertage prüfen (neuer Weg seit 2.5 mit Ephemeris)
 */
 
rule "Ephemeris - Ferien und Feiertag" 
when
	System started or 
    Time cron "5 45 3,19 * * ?" or
	Item UpdateHoliday received update ON 
then
   UpdateHoliday.postUpdate(OFF)
   val String currentHoliday  = Ephemeris.getBankHolidayName()
   val String nextHoliday  = Ephemeris.getNextBankHoliday()
   val long untilHoliday    = Ephemeris.getDaysUntil(nextHoliday)
   val String nextHolidayName = Ephemeris.getHolidayDescription(nextHoliday)
   val Boolean untilWeekend = Ephemeris.isInDayset("beforeWeekend")
   
   NextHolidayName.postUpdate(nextHolidayName + " in " + untilHoliday + " Tagen") 
   
   val String currentHolidayName = Ephemeris.getHolidayDescription(currentHoliday)
   logInfo("rules", logPrefix + "Nächster Feiertag ({}) ist in ({}) Tagen",nextHolidayName, untilHoliday)
   
   if (Ephemeris.isBankHoliday == true) {
      logInfo("rules", logPrefix + "Heute ist ein Feiertag")
      Holiday.sendCommand(ON) // Schalter Feiertag setzen
      Urlaub.sendCommand(ON) // Schalter Urlaub setzen
      HolidayName.postUpdate(currentHolidayName)  
      } 
   if (Ephemeris.isWeekend == true) {
      logInfo("rules", logPrefix + "Wochenende") 
      Weekend.sendCommand(ON) 
      } 
   if (Ephemeris.isWeekend == false) { 
      logInfo("rules", logPrefix + "Arbeitswoche")
      Urlaub.sendCommand(OFF)
      Weekend.sendCommand(OFF)
      } 
   if (Ephemeris.isBankHoliday == false) {
      logInfo("rules", logPrefix + "Heute ist kein Feiertag")
      Holiday.sendCommand(OFF) 
      Urlaub.sendCommand(OFF)
      HolidayName.postUpdate(currentHolidayName) 
      } 
   if (untilHoliday == 1) {
      logInfo("rules", logPrefix + "Nur noch ein Tag bis Feiertag")
      }   
   if (untilWeekend == true) {
      logInfo("rules", logPrefix + "Nur noch ein Tag bis Wochenende") 
      }
 end 
 

rule "Ephemeris started rule"
when
	Item UpdateHoliday received update ON
then
   UpdateHoliday.postUpdate(OFF)
   if (!isWeekend()) {
   	logInfo("rules", logPrefix + "Heute ist ein Wochentag") 
   }
   if (isWeekend()) {
   	logInfo("rules", logPrefix + "es ist Wochenende")
   }
   if (isWeekend(1)) {
	logInfo("rules", logPrefix + "Morgen ist auch noch Wochenende")
   }
   if (isInDayset("beforeWeekend")) {
	logInfo("rules", logPrefix + "heute ist Freitag, morgen ist Wochenende")
   //Lange_schlafen.sendCommand(ON) // Lange schlafen ein
   }
   if (!isInDayset("beforeWeekend")) {
	logInfo("rules", logPrefix + "Heute ist nicht Freitag")
   }
end
Läuft unter OH3.
CU
Cyrelian

Re: OpenHab 3 Umstieg

Verfasst: 27. Mär 2021 08:56
von DavGre
Danke dir. Aber ich bekomme wieder eine Fehlermeldung im Log:

Code: Alles auswählen

2021-03-27 08:55:16.661 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'ephemeris-1' failed: 'getBankHolidayName' is not a member of 'org.openhab.core.items.GroupItem'; line 14, column 33, length 30 in ephemeris
Ephemeris habe ich über die UI wie folgt konfiguriert:
Bild

Re: OpenHab 3 Umstieg

Verfasst: 27. Mär 2021 18:32
von udo1toni
Hast Du eventuell ein Group Item mit Namen Ephemeris angelegt?

Re: OpenHab 3 Umstieg

Verfasst: 30. Mär 2021 18:59
von DavGre
udo1toni hat geschrieben: 27. Mär 2021 18:32 Hast Du eventuell ein Group Item mit Namen Ephemeris angelegt?
Wahnsinn, da lag der Hund begraben. Danke dir!