Hallo,
ich bin gerade dabei meine PV Anlage einzubinden und scheitere an dem Punkt, wo es darum geht einen entsprechenden Text anzuzeigen.
Wenn ich Daten meiner Sonnenbatterie auslese, dann gibt es da das Reading GridFeedIn_W. Dahinter eine negative oder positive Zahl.
Wenn der Wert negativ ist z.B. -1326 bedeutet das, dass ich von den Stadtwerken den entsprechenden Strom bekomme, ist der Wert positiv speise ich ins Netz ein.
Jetzt würde ich gerne mit dem Label Widget bei positivem Wert anzeigen lassen: Aktuell eingespeist wird: <WERT> Watt
Und bei negativem Wert: Aktueller Netzbezug: <WERT> Watt
Also dachte ich, das kann man mit dem Label Widget und data-substitution='["-","Netzbezug","+","Einspeisung"]' lösen.
Aber ich weiss nicht wie.
Kann mir da jemand helfen?
Danke
Gruss
Dennis
Moin,
Hast du es schon mal mit "data-hide-on" versucht?
Mit freundlichen Grüßen
Moin,
nein, noch nicht, da ich nicht weiss, wie ich auf einen negativen oder positiven Wert prüfe.
Gruss
Dennis
P.S. Ich vermute mal mit Regex auf negative Zahlen so: ^-[1-9]+$
und auf positive Zahlen so: ^[1-9]+$
Aber das klappt nicht
Ich glaube ich habe es hinbekommen.
Habe jetzt zwei Labels:
<div class="top-narrow-3x" data-type="label" data-device="sonnenbatterie" data-get="GridFeedIn_W" data-pre-text="Netzbezug: " data-post-text=" Watt" data-hide="GridFeedIn_W" data-hide-on="(^[1-9]+$)" ></div>
<div class="top-narrow-3x" data-type="label" data-device="sonnenbatterie" data-get="GridFeedIn_W" data-pre-text="Einspeisung: " data-post-text=" Watt" data-hide="GridFeedIn_W" data-hide-on="(^-[1-9]+$)" ></div>
Passt das so?
Gruss
Dennis
P.S. Nee, geht auch nicht. Manchmal bekomme ich beide Labels angezeigt :-\
@dennis_n
So funktioniert es bei mir (mit einem Label):
<div data-type="label"
data-device="sonnenbatterie"
data-get="GridFeedIn_W"
data-substitution='["^\\+.*","Einspeisung","^-.*","Netzbezug"]'
></div>
@OdfFhem
Das war auch mein erster Ansatz. Aber es wird nur der aktuelle Wert angezeigt. Die Wörter Einspeisung und Netzbezug nicht.
Gruss
Dennis
Bei mir wird bei +10 Einspeisung, bei -10 Netzbezug angezeigt.
Was ist bei Dir anders ?
Im Zweifel musst Du mal Deine Beispielwerte hier einstellen, dann kann man es genau damit mal probieren ...
P.S.: kann selbst erst wieder heute Abend testen ...
Vielleicht habe ich mich auch nur falsch ausgedrückt.
Ich will ja nicht dass da nur Netzbezug oder Einspeisung steht, ich will ja auch den entsprechenden Wert dahinter stehen haben.
Also im Falle einer negativen Zahl soll da stehen: Netzbezug: 1500 Watt
Im Falle einer positiven Zahle soll da stehen: Einspeisung: 2500 Watt
Gruss
Dennis
@dennis_n
In einem solchen Fall muss man die .* weglassen. Falls positive Zahlen kein explizites Vorzeichen haben, sieht hier zusätzlich der RegExp anders aus; interessant ist dann noch, ob der passende Teil wiederverwendet werden kann ...
Entweder selbst probieren oder einen positiven sowie negativen Readingwert hier einstellen.
Also ein positiver Readingwert wäre: 2589
Ein negativer Readingwert wäre: -1568
Gruss
Dennis
Hi,
bevor man sich damit quält, würde ich das im Backend lösen. Einfach ein userReading machen, das genau das, was man sehen will, enthält. Da kann man dann gemütlich mit "< 0" und > 0" arbeiten.
Gruß,
Thorsten
@dennis_n
Und wieder Zeit zum Testen ...
<div data-type="label"
data-device="sonnenbatterie"
data-get="GridFeedIn_W"
data-substitution='["^-(\\d+)","Netzbezug: $1 Watt","^(\\d+)","Einspeisung: $1 Watt"]'></div>
liefert
- bei positivem 2589 Wert "Einspeisung: 2589 Watt"
- bei negativem 1568 Wert "Netzbezug: 1568 Watt"