NEWS
Test Adapter Energiefluss-erweitert v0.7.x GitHub/Latest
-
@mickemup Prima, wir arbeiten hier ja lösungsorientiert
-
@skb wie man alternative Texte in Abhängigkeit des Wertes eines Datenpunktes schreibt ist mir klar:
{
"0": {
"fill": "rgb(216,216,216)",
"value": "1 phasig"
},
"1": {
"fill": "rgb(216,216,216)",
"value": "3 phasig"
}
}Jetzt würde ich aber weder “1 phasig” noch “3 phasig” in Abhängig eines zweiten Punktes schreiben. Letztlich möchte ich in meiner Version der Interpretation des ENERGIEFLUSS-Adapters den Schriftzug (1 phasig oder 3 phasig) nur zeigen, wenn mein Fahrzeug auch angeschlossen ist.
Ich möchte diesen 2. Datenpunkt - PLUG heist er - auch noch dafür verwenden, meinen iD3 nur zu zeigen, wenn PLUG einen Wert > 1 hat.
-
@leonundjulie Na, dann mach das doch!
-
@skb
Houston, ich habe da ein Problem.
Version 0.7.7 stableIch wollte einer bestehenden Datenquelle einen anderen DP zuordnen. Hat früher immer geklappt.
Dazu gehe ich auf Datenquellen und bei der gewünschten, klicke ich auf den Bleistift
Hier gehe ich in den Objektbrowser
und wähle den neuen DP aus
bestätige mit "wählen"
Dieser wird aber nicht übernommen
statt dessen wird mir die Erstellung einer neuen Datenquelle angeboten.Führe ich dies aus, wird sie auch angelegt.
Das anschließende Löschen geht jedoch nicht wirklich.
Die Datenquelle wird durchgestrichen, und als zum Löschen vorbereitet markiert.Jetzt existiert nur noch der "Wiederherstellen Button"
Was mache ich falsch?
-
@homoran Damit hast Du Recht. Behebe ich. Wenn die Datenquelle durchgestrichen ist, wird sie beim Speichern gelöscht. Vorher besteht immer noch die Chance, sie wiederherzustellen.
-
@skb “… dann mach es doch “ scheint schwieriger als gedacht, zumal diese Sprache fürs ÜBERSCHREIBEN noch sehr fremd ist.
Das Bild meines iD3, im EnergieflussAdapter eingebunden als “ID 256”, bleibt hartnäckig im Bild.
Ich habe bislang folgenden Code versucht (auch mal in der Variation “ID 256” statt “)inline-block”. Den Datenpunkt Plug_Test habe ich natürlich unter Dsatenquelle eingebunden. Wenn ich meinen Datenpunkt zwischen 0 und 1 wechsle, passiert nichts. Daher muss ich nochmals um Hilfe bitten.
{ "default": { "display": "() => {0_userdata.0.Plug_Test} == 0 ? 'inline-block' : 'none'" } }
-
@leonundjulie Die Abfrage des zusätzlichen Datenpunktes erfolgt natürlich nur, wenn der zugewiesenen Datenpunkt sich ändert (zusätzliche Bedingung).
Heißt, wenn du ein Bild für das Fahrzeug hast, ob es angeschlossen ist, oder nicht, reicht das Zuweisen des DP der Wallbox und Prüfung, ob dieser true oder false ist.
Dies unterscheidet sich eben von deiner ersten Anfrage, "wie man etwas darstellt, was in Abhängigkeit von etwas Anderen ist".
-
@skb letztlich hatte ich zwei Themen:
-
darstellen, ob 1-phasig oder 3-phasig geladen wird (der eingebundene Daten Punkt ist =0 oder =1)
-
Bildchen des Autos einblenden, wenn es angeschlossen ist (mein Wert respektive der eingebundene Datenpunkt ist dann ungleich 0) …. oder Bildchen des Autos ausblenden, wenn der Datenpunkt=0 ist
Die erste Aufgabe ist gelöst, aber bei der zweiten mit ID3 Bildchen tue ich mich schwer
-
-
@leonundjulie Bild mit Datenpunkt versehen (ob Auto angeschlossen), Default Überschreibung rein, mit
{ "default": { "display": "val => val == true ? 'inline-block' : 'none'" } }
fertig!
-
@skb hab es jetzt so gemacht wie Du es vorgeschlagen hast und schon geht es mit meinem Testdatenpunkt. Weil der Datenpunkt meiner Wallbox aber folgende Werte ausgibt
"states": { "0": "no cable plugged", "1": "cable plugged in charging station, unlocked", "3": "cable plugged in charging station and locked", "5": "cable plugged in charging station and vehicle, unlocked", "7": "cable plugged in charging station and vehicle and locked" }
habe ich es letztlich so gemacht und mein ID3 Foto kommt jetzt endlich nur noch, wenn der Flitzer angesteckt ist ... egal, ob verriegelt oder nicht.
{ "default": { "display": "val => val > 3 ? 'inline-block' : 'none'" } }
Danke für den Support!!!
Jetzt möchte ich es noch perfekt machen und den Schriftzug "1 phasig respektive 3 phasig ebenfalls ausblenden, wenn der ID3 nicht da ist.
{ "0": { "fill": "rgb(216,216,216)", "value": "1 phasig" }, "1": { "fill": "rgb(216,216,216)", "value": "3 phasig" } }
Ergo müsste ich den folgenden Code ebenfalls in die Abhängigkeit zum DP kecontact.0.plug bringen. Also if kecontact.0.plug > 3, dann 1 phasig oder 3 phasig, ansonsten nichts. Was hältst Du von diesem Ansatz:
{ "0" and “{kecontact.0.plug} > 3}” : { "fill": "rgb(216,216,216)", "value": "1 phasig" }, "0" and “{kecontact.0.plug} < 5}” : { "fill": "rgb(216,216,216)", "value": "1 phasig" }, "1" and “{kecontact.0.plug} > 3}” : { "fill": "rgb(216,216,216)", "value": "3 phasig" }, "1" and “{kecontact.0.plug} < 5}” : { "fill": "rgb(216,216,216)", "value": "" }
-
@leonundjulie Hier benötigst du auch das
display
Attribut und die Abfrage, ob das Auto abgesteckt ist.1 und 3 phasig kann sich ja ruhig ändern - die Anzeige dann über
display
"0": { "display": "() => {DP.Fahzeug} == 1 ? 'inline-block' : 'none'" }, "1": { "display": "() => {DP.Fahzeug} == 1 ? 'inline-block' : 'none'" } }
So sollte es funktionieren.
Hier muss man allerdings schauen, ob sich der Datenpunkt für die Phase ändert oder es besser ist, diesen auch an den Wallbox zu koppeln, damit die Änderung ausgelöst wird - dann abfragen, mit wie vielen Phasen geladen wird.