NEWS
Jarvis Rollo-Steuerung activity anpassen
-
Guten Morgen zusammen,
ich hab gestern mir mal die Mühe gemacht (ohne Gedanken über mögliche Fallstricke) und meine Geräte in den "Devices"-Adapter eingepflegt.
Dadurch muss ich natürlich auch die Geräte in Jarvis anpassen. Vorher wurden sie direkt über den hm-rpc (HmIP-Broll) importiert und die Anzeige (roter Stop-Button) funktioniert sofort.
Der Datenpunkt "activity" erwartet ein boolean, allerdings liefern die Aktoren "states" 1 (UP), 2 (DOWN) und 3 (STABLE) zurück.
Ich habe schon versucht, die Datenpunkteigenschaften von activity mit
{
"1": true,
"2": true,
"3": false
}
anzupassen, aber das funktioniert leider nicht.Kann mir hier mal bitte jemand den richtigen Hinweis geben?
-
Die Trigger gehen über STOP und LEVEL. "activity" dient bei jarvis nur zu Anzeige.

-
Sowas meinst du?

-
Ja, korrekt. Und wenn die Rollos fahren, wurde der "Stop"-Button rot und hat die Aktivität angezeigt.
Das funktioniert über den Alias nicht, weil Jarvis halt boolean erwartet, aber HmIp einen anderen Zustand ausgibt.
Ich möcht daher gerne, wissen, wie ich in Jarvis "eigene" Werte auf true oder false setzen kann
-
Die Farben der Buttons von BlindLevelAction kann man m.W. nur mit eigenem CSS (Pro Version) beeinflussen. Ich verstehe aber immer noch nicht, was das mit dem Device-Adapter und Aliases zu tun hat. Wenn das vorher ohne Alias funktioniert hat, brauchst du doch nur die Datenpunkte umhängen.
-
Ich glaube, wir reden aneinander vorbei.
Vorher waren die Aktoren über den Hm-rpc-Adapter in Jarvis eingebunden. Da hat der Entwickler schon die Zustände auf true und false gesetzt.
Durch den Alias-Adapter werden die Geräte ja nicht mehr über den Hm-rpc sonder über Alias in Jarvis importiert und dort fehlt dann diese "Zuordnung" Open" gleich true, damit die Aktivität erkannt wird.
-
Du meinst du hast vorher die Geräte von Jarvis importieren lassen. ("eingebunden" ist hier irreführend) Nach dem Import spielt es keine Rolle mehr woher das Gerät mal gekommen ist. Schau dir doch einfach an wie es früher konfiguriert war und mache die Anpassungen dann selber.
Ich lege meine Geräte immer manuell an und kann die haher nicht sagen, was genau mit dem Import konfiguriert wird. -
Hast recht, irgendwas macht Jarvis da mit dem Original-State, was mit dem Alies scheinbar nicht geht. Bei mit geht es, wenn ich den Alias von activity von number auf boolean ändere und eine Convert-Funktion erstelle:

-
Du meinst das?
(val == 3) ? false : truedas überprüft, ob der Wert von activity (steht in val) gleich 3 ist. Wenn ja, gibt es false zurück, sonst true.
-
Bin nicht sicher, ob ich die Frage richtig verstehe. Du meinst mit "opening", usw den Datentyp String? Dann muss man halt Strings vergleichen: val === 'opening'
Das kommt aber so wahrscheinkich so nicht vor, weil keiner intern einen Zustand als String ablegen würde. -
Ok, meine Einschätzung über Vernunft trifft dann offensichtlich nicht auf Shelly zu :). Ein Vergleich von Zeichenketten ist viel aufwändiger als von Zahlen.
(val === 'stopped') ? false : trueWird der Zustand auch geschrieben, oder warum ist "write" auf true. Falls ja, benötigst zu auch noch eine Konvertierungsfunktion für "write".
-
Die Schreibrechte scheinen bei dem Datenpunkt vom Shelly-Adapter gesetzt zu werden. Ich möchte den nicht schreiben.
Kann ich auch zwei Zeichenkette in die Konvertierung packen. Z. B. Wenn opening oder Closing, das true sonst false?
@BF0911 sagte in Jarvis Rollo-Steuerung activity anpassen:
Kann ich auch zwei Zeichenkette in die Konvertierung packen. Z. B. Wenn opening oder Closing, das true sonst false?
Ja, aber das würde die Operation noch aufwändiger machen. Warum willst du das?
(val === 'opening' || val === 'closing') ? true : falseIn den meisten Fällen wird sich das Rollo nicht bewegen und in dem Fall machst du dann zwei Vergleiche.

