Guten Abend zusammen...
ich komme leider auf keinen Grünen zweig. Ich habe das Abfall modul installiert und möchte jetzt für meine 4 Tonnen eine art Graphische Darstellung haben. Das ganze soll so sein, das am Vortag ein Icon das aussehen ändert (erstmal egal wie)
Gedacht habe ich mir das so. das reading heißt "BlaueTonne_days" das Gerät Heist Mueltonnen.
Jetzt soll das Gerät BlaueTonne beim wert BlaueTonne_days 1 bzw kleiner 1 auf On schalten und danach, wenn der abholtag verüber ist wieder auf off.
Wie realisiert man sowas. Meine Ansätze waren über ein notify aber ich weiß nicht wie man dieses auf bestimmte werte setzt. Ich habe auch etwas von triggern gelesen, aber ich werde da nich schlau drauß.
Hat jemand einen Tip?
Gruß Abraxsas
Zitat von: Abraxsas am 30 Januar 2018, 21:07:58
Wie realisiert man sowas. Meine Ansätze waren über ein notify aber ich weiß nicht wie man dieses auf bestimmte werte setzt. Ich habe auch etwas von triggern gelesen, aber ich werde da nich schlau drauß.
Hi,
ich denke ein Ansatzpunkt wäre das Einsteiger-PDF (im Anfängerforum ganz oben im angepinnten Beitrag verlinkt). Die Forumssuche sollte dir auch einiges zur Visualisierung des Abfallkalenders liefern. Wenn du dann ein paar Versuche unternommen hast und nicht weiter kommt, bitte ein "list" der betroffenen Devices und dann sehen wir weiter.
(Die Frage sollte vielleicht ins Anfängerforum - Button zum verschieben findest du ganz unten links).
vielleicht findest du auch im wiki den ein oder anderen hinweis:
https://wiki.fhem.de/wiki/ABFALL
Morgen,
ich hab die Sachen schon gelesen, aber ich muss ganz ehrlich sachen ich werde da nicht so Schlau draus, da in allen beschreibungen nur vom Zustand eines Gerätes ausgangen wird, also z.b. Schalter an oder oder, aber ich leider nichts darüber finde wie man auf ein spezielles Reading reagiert. Mein: Gedanke: Im Modul Abfall befindet sich ein Reading welches BlaueTonne_Days heißt, fallt dieser wert unter 2 (also 1 oder 0) Soll das Gerät BlaueTonne auf on gehen und somit ein Symbol wechseln. Meine frage ist wie realsiert man das. Erstellt man ein Notify welches das Reading Ausliest und dann das Gerät schaltet? Oder bin ich da auf dem Holzweg?
Gruß Abraxsas
den wiki-artikel hast du also auch gelesen?
nochmal genauer:
https://wiki.fhem.de/wiki/ABFALL#Einbindung_ins_Tablet_UI.2C_erweitert
Zitat von: Abraxsas am 01 Februar 2018, 08:51:11
Morgen,
ich hab die Sachen schon gelesen, aber ich muss ganz ehrlich sachen ich werde da nicht so Schlau draus, da in allen beschreibungen nur vom Zustand eines Gerätes ausgangen wird, also z.b. Schalter an oder oder, aber ich leider nichts darüber finde wie man auf ein spezielles Reading reagiert. Mein: Gedanke: Im Modul Abfall befindet sich ein Reading welches BlaueTonne_Days heißt, fallt dieser wert unter 2 (also 1 oder 0) Soll das Gerät BlaueTonne auf on gehen und somit ein Symbol wechseln. Meine frage ist wie realsiert man das. Erstellt man ein Notify welches das Reading Ausliest und dann das Gerät schaltet? Oder bin ich da auf dem Holzweg?
Gruß Abraxsas
Mal ganz grundsätzlich: In FHEM reagiert man überwiegend auf events. Events werden z.B. erzeiugt, wenn ein reading aktualisiert wird. Mit anderen Worten, du kannst ein notify bauen, das auf das Event reagiert, das bei Änderung von BlaueTonne_Days erzeugt wird. Was für ein Event das ist, kannst du im Eventmonitor herausfinden. Im Ausführungsteil des Notify kannst du dann den Wert abfragen (wenn er nicht schon als $EVTPART mitkommt) und entsprechend reagieren.
AHHH das hilft mir schonweiter... aber leider nur bedingt...
DEF Muelltonnen:GraueTonne_days:.* set Graue_Tonne on
Funktioniet, aber eben leider immer wenn ein Update es Wertes Passiert, gut das sagt auch das .*
DEF Muelltonnen:GraueTonne_days:1 set Graue_Tonne on
Das geht leider nicht, ich denke mal das man die Bedingung anders scheiben muss?!
könntet ihr mir verraten wie ich das von der Syntax her anpassen muss?
Gruß
Abraxsas
Wie das Event aussieht, siehst du im Event-Monitor, wie es dir schon geraten wurde.
Bitte beschäftige dich mal mit den Grundlagen.
Also das mit dem Event hab ich ja gemacht dieses Schreibt
2018-02-01 13:04:24 ABFALL Muelltonnen GraueTonne_days: 1
aber ich verstehe nicht wie ich das in das Notify einsetzen soll.
DEF Muelltonnen:GraueTonne_days:.1 set Graue_Tonne on
RexExp
Und damit es nicht reagiert wenn bei der nächsten Aktualisierung wieder ein Muelltonnen:GraueTonne_days: 1 kommt musst Du Dir event-on-change-reading beim Abfalldevice an schauen.
Ahhh der Punk wars.... Vielen Dank... und es wieder Off zu setzen braucht es ein Seperates Notify richtig? Dann glaube ich ich hab das verstanden.
Vielen Dank :-)
Zitat von: Abraxsas am 01 Februar 2018, 14:24:13
Ahhh der Punk wars.... Vielen Dank... und es wieder Off zu setzen braucht es ein Seperates Notify richtig? Dann glaube ich ich hab das verstanden.
Vielen Dank :-)
Nein braucht es nicht. Nur ein klitzekleines bisschen Perl
Muelltonnen:GraueTonne_days:.[0-1] fhem("set Graue_Tonne " . $EVTPART1 == 1 ? 'on' : 'off');
Ich hab deinen Code mal eingesetzt, der funktioniert leider nicht. Wärest so nett den mal zu übersetzen, dann versuche ich den "Fehler" zu finden?
:-)
der regex GraueTonne_days:.[0-1]
von CoolTux triggert auf GraueTonne_days:.0
und GraueTonne_days:.1
ich denke da fehlen die restlichen tage :)
ich bevorzuge da doch wieder '.*' und dann entscheiden, ob 'on' oder 'off' gesetzt wird ;)
was beduetet für dich denn "Abholtag ist vorbei" ??
days = 0 ?
days wieder > 1 ??
nochmal zurück zu CoolTux Regex:
das würde funktionieren, wenn du "days = 0" als "Abholtag ist vorbei" nutzt!
weil: bei days = 1, setzt er 'on', und wenn '0' wieder off, bis zum nächsten mal '=1'.
Ok das wäre dann eine möglichkeit... Ich habe es dann über eine If FUnktion gelöst, tuts auch
Hier ein Beispiel:
Muelltonnen:BlaueTonne_days:.* {if("$EVTPART1" < 2){fhem ("set Blaue_Tonne on")} else {fhem ("set Blaue_Tonne off")}}
Sorry ich hatte den Thread aus den Augen verloren. Schön das Du eine Lösung für Dich gefunden hast.
Grüße