FHEM Forum

FHEM => Frontends => FHEMapp => Thema gestartet von: Wolle02 am 14 April 2022, 15:30:17

Titel: [Template] Müllabholung
Beitrag von: Wolle02 am 14 April 2022, 15:30:17
Ich habe hier noch ein Template gebastelt, das vielleicht für die interessant sein könnte, die ihre Müllkalender mit dem Modul CALVIEW auswerten.

{
  "name": "trash",
  "author": "Wolle02",
  "date": "2022-04-07",
  "status": {
    "bar": ["t_001_daysleft:3:0:success", "t_001_daysleft:2:100:success", "t_001_daysleft:1:100:warning", "t_001_daysleft:0:100:error"]
  },
  "main": [
    {
      "text": ["next::%s"],
      "text2": ["t_001_daysleft:2:in %n Tagen", "t_001_daysleft:1:morgen", "t_001_daysleft:0:heute"]
    }
  ],
  "info": {
    "left1": ["next:::mdi-trash-can"],
"mid1": ["nextafter::danach %s"],
"mid2": ["nextafter_days:2:in %n Tagen", "nextafter_days:1:morgen"]
  }
}



Wegen der Infozeile und vor allem weil bei mir manchmal mehrere Mülltonnen am gleichen Tag abgeholt werden, sind im Calview-Device folgende Userreadings erforderlich:

next {my $d1 = (ReadingsNum("$name","t_001_daysleft",0));
      my $d2 = (ReadingsNum("$name","t_002_daysleft",0));
      my $d3 = (ReadingsNum("$name","t_003_daysleft",0));
      my $t1 = (ReadingsVal("$name","t_001_summary",0));
      my $t2 = (ReadingsVal("$name","t_002_summary",0));
      my $t3 = (ReadingsVal("$name","t_003_summary",0));
      if ($d1 == $d3) {
         return $t1.", ".$t2." und ".$t3
      }
      elsif ($d1 == $d2) {
         return $t1." und ".$t2
      }
      else {
         return $t1
      }
},

nextafter {
      my $d1 = (ReadingsNum("$name","t_001_daysleft",0));
      my $d2 = (ReadingsNum("$name","t_002_daysleft",0));
      my $d3 = (ReadingsNum("$name","t_003_daysleft",0));
      my $t2 = (ReadingsVal("$name","t_002_summary",0));
      my $t3 = (ReadingsVal("$name","t_003_summary",0));
      my $t4 = (ReadingsVal("$name","t_004_summary",0));
      if ($d1 == $d3) {
         return $t4
      }
      elsif ($d1 == $d2) {
         return $t3
      }
      else {
         return $t2
      }
},

nextafter_days {
      my $d1 = (ReadingsNum("$name","t_001_daysleft",0));
      my $d2 = (ReadingsNum("$name","t_002_daysleft",0));
      my $d3 = (ReadingsNum("$name","t_003_daysleft",0));
      my $d4 = (ReadingsNum("$name","t_004_daysleft",0));
      if ($d1 == $d3) {
         return $d4
      }
      elsif ($d1 == $d2) {
         return $d3
      }
      else {
         return $d2
      }
}


Einfaches Copy & Paste sollte reichen.
Danach in appOptions mit
{"template": "trash"}
einbinden.
Titel: Antw:[Template] Müllabholung
Beitrag von: marboj am 06 Juli 2022, 21:23:31
Hi Wolle,

kann man das auch mit dem Modul "Abfall" nutzen?

Gruß
Marco
Titel: Antw:[Template] Müllabholung
Beitrag von: Wolle02 am 07 Juli 2022, 18:03:44
Ich verwende auch das Abfallmodul und wollte das auch für das Template verwenden. Dabei bin ich aber auf Probleme bei der Anzeige für den übernächsten Müll gestoßen. Ich hatte dann den Modulautor angeschrieben und gefragt, ob man eine kleine Änderung machen könnte. Allerdings war der Modulautor das letzte Mal vor Jahren im Forum aktiv und hat auch bis heute nicht geantwortet. Deshalb habe ich auf Calview umgeschwenkt und fahre jetzt in FhemApp und FhemWeb zweigleisig.

Lange Rede, kurzer Sinn: Nein, so unmittelbar geht das nicht. Du müsstest dir im Templete ein paar andere Readings anpassen und etwas finden wie die übernächste Müllabholung angezeigt werden kann.