NEWS
iobroker, MQTT und Shelly - Was geht wie?
-
-
@th-g Das wäre die Blockly Lösung auch nicht kompliziert:
Du triggerst auf den Temperaturpunkt und aktualisierst Deinen Datenpunkt mit dem Attribut tC aus dem Objekt.#
-
@mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:
@th-g Das wäre die Blockly Lösung auch nicht kompliziert:
Was ist denn aus deiner Sicht der ideale Weg? Ich finde das mit dem Alis eigentlich sehr gut, weil ich direkt mit dem Alias auch im Blockly arbeiten könnte.
Gäbe es eigentlich im Alias auch die Möglichkeit, den Punkt durch ein Komma zu ersetzen, denn derzeit kommen alle Werte mit einem Punkt also z.B. 23.5 °C
-
@th-g Ja - aber dann werden das Strings - da Javascript natürlich immer mit US Zahlen rechnet. Du kannst den Alias Datenpunkt als String umdeklarieren und in der Konvertierung gibst Du
JSON.parse(val).tC.toLocaleString('de-DE')
ein.
Dann kommt ein String raus - aber mit deutscher Schreibweise:
Ansonsten ist die Lösung mit Alias eine gute Lösung und in meinen Augen auch zu präferieren. Ich hab das mit dem Blockly nur begonnen, weil Du das am Anfang so wolltest.
-
Ich bin wieder begeistert von deiner Unterstützung und Erklärungen. Schade, dass ich von diesem Thema keine Ahnung habe.
Danke
-
@th-g Na freut mich - na manchmal muss ich auch bissi recherchieren - und vielleicht schaust Du Dir auch mal NodeRed anstelle von Blockly an, wenn Du Lust hast, vielleicht hilft Dir das ja auch.
-
Kurzes Update. Alles läuft und ich habe auch weitere Sensordaten auf Alias umgestellt.
Ein kleines Problem gibt es aber. Ich kann Alias nicht nutzen, um in Skripten Aktionen durchzuführen. Irgendwie werden die Werte nicht richtig "erkannt/gelesen"
-
@th-g Leider kann ich mir ohne konkrete Beispiele das nicht vorstellen. Also bitte ein Beispiel mit allen Informationen, das man es ggf. nachstellen kann.
-
Danke und ich bin noch am testen und werde das dann hier noch reinschreiben.
-
Ich bekomme es leider nicht hin. Eigentlich ist das was ich will ganz einfach. Einen Fehler sehe ich in der Logik derzeit nicht.
Die Aussentemperatur ist unter der Abluft-Temperatur aber die 0 wird nicht bei Passivkühlung gesetzt.
-
@th-g sagte in iobroker, MQTT und Shelly - Was geht wie?:
Ich bekomme es leider nicht hin. Eigentlich ist das was ich will ganz einfach. Einen Fehler sehe ich in der Logik derzeit nicht.
Die Aussentemperatur ist unter der Abluft-Temperatur aber die 0 wird nicht bei Passivkühlung gesetzt.
Na wenn Du das mit dem Komma gemacht hast, dann ist das das Problem. Nochmal Dezimalzahlen werden mit Punkt und als Zahl bearbeitet. Wenn Du aber mit Komma und Strings arbeitest dann geht das nicht. Dann musst halt einen neuen Datenpunkt für Deinen String machen. Javascipt und Blockly arbeiten mit Dezimalzahlen mit einem Punkt. Also nimm diese Konvertierung raus und definiere den Alias Zahl. - Musst Du wissen wieviel Aufwand du rein stecken willst nur um die deutsche Schreibweise bei Dezimalzahlen auszugeben.
Generell sind Dezimalzahlen beim Programmieren mit Dezimalpunkt und nicht mit Dezimalkomma. Wenn Dir das für die Darstellung nicht passt - dann erstelle nochmal einen eigenen Datenpunkt oder Alias.
Das habe ich Dir aber hier erklärt: https://forum.iobroker.net/post/1012640
Stringvergleiche arbeiten anders als Vergleiche mit Zahlen. Hat auch nichts mit Alias zu tun - das ist generell so, dass man sich an Dezimalpunkte gewöhnen sollte und nur bei der Visualisierung ggf. gesondert konvertiert. Nur VIS musst Du dir jemand anders suchen. Ich nutze NodeRed.
-
Alle Daten liegen Dezimal und mit Punkt vor und ich habe das mit dem Komma nicht gemacht.
-
@th-g Dann mach halt überall Debug Ausgaben dran und lass Dir Aussentemperatur und Abluft-Temperatur ausgeben und ob es im richtigen Ast passiert.
Was komisch ist, ist dass Dein Puzzleteil englisch ist.
-
@mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:
Was komisch ist, ist dass Dein Puzzleteil englisch ist.
Ja das wundert mich auch, dass die Sprachen total willkürlich vermischt sind.
-
-
@th-g sagte in iobroker, MQTT und Shelly - Was geht wie?:
@mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:
Was komisch ist, ist dass Dein Puzzleteil englisch ist.
Ja das wundert mich auch, dass die Sprachen total willkürlich vermischt sind.
liegt an deiner (??) verwendeten Version.
@th-g sagte in iobroker, MQTT und Shelly - Was geht wie?:
Einen Fehler sehe ich in der Logik derzeit nicht.
und was wäre die geplante Logik?
-
@mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:
@th-g Du musst wahrscheinlich auch den Wert von den Objekten miteinander vergleichen
@TH-G
natürlich!
die ID zu vergleichen ist sinnfrei. -
@mickym sagte in iobroker, MQTT und Shelly - Was geht wie?:
@th-g Du musst wahrscheinlich auch den Wert von den Objekten miteinander vergleichen
@homoran sagte in iobroker, MQTT und Shelly - Was geht wie?:
die ID zu vergleichen ist sinnfrei.
Natürlich stimmt. Da war doch etwas mit Wert und Variablen. Ich bin zu doof für das Thema und ist mir fast schon peinlich.
-
@homoran sagte in iobroker, MQTT und Shelly - Was geht wie?:
Ja das wundert mich auch, dass die Sprachen total willkürlich vermischt sind.
liegt an deiner (??) verwendeten Version.
wenn die Spracheinstellungen nicht angepasst werden, kann es in den Skripten immer wieder zu Fehlern kommen. Das Problem würde ich zuerst mal angehen.
-