NEWS
Dynamische Status-Meldungen direkt im Widget übersetzen
-
Wenn man dynamische Statusmeldungen z.B. von einer Hardware in einem Feld anzeigen will, sind diese entweder englisch, Abkürzungen oder kryptisch. Gibt es in VIS eine einfache Möglichkeit diese durch etwas lesbares zu ersetzen ohne über extra Datenpunkte mit Skript zu gehen? Wie assoziatives Array. Wenn string1 dann zeige string2 usw.
-
Wenn man dynamische Statusmeldungen z.B. von einer Hardware in einem Feld anzeigen will, sind diese entweder englisch, Abkürzungen oder kryptisch. Gibt es in VIS eine einfache Möglichkeit diese durch etwas lesbares zu ersetzen ohne über extra Datenpunkte mit Skript zu gehen? Wie assoziatives Array. Wenn string1 dann zeige string2 usw.
Das geht über "Binding", Anleitung/Doku hierzu gibt es wohl nicht

Hier ein Beispiel:
Im Widget "Basic - String" lasse ich einen Wert ausgeben.
Dazu nehme ich folgenden Code in "Voranstellen HTML" des Basic-String-Widgets:{currAlbum:sonos.0.root.10_10_10_10.current_album;favSet:sonos.0.root.10_10_10_20.favorites_set; (currAlbum!='') ? currAlbum : favSet}Da ist dann eine simplifzierte Darstellung.
currAlbumist eine Variablenbezeichnung (quasi wielet currAlbum;), dieser Variable wird hier im Beispiel der Inhalt ("value") vom Datenpunktsonos.0.root.10_10_10_10.current_albumzugeteilt.
Danach folgt noch eine weitere VariablefavSet, der ein anderer Datenpunkt-Wert gegeben wird.
Zum Schluss ein if/else zur Ausgabe. -
Das geht über "Binding", Anleitung/Doku hierzu gibt es wohl nicht

Hier ein Beispiel:
Im Widget "Basic - String" lasse ich einen Wert ausgeben.
Dazu nehme ich folgenden Code in "Voranstellen HTML" des Basic-String-Widgets:{currAlbum:sonos.0.root.10_10_10_10.current_album;favSet:sonos.0.root.10_10_10_20.favorites_set; (currAlbum!='') ? currAlbum : favSet}Da ist dann eine simplifzierte Darstellung.
currAlbumist eine Variablenbezeichnung (quasi wielet currAlbum;), dieser Variable wird hier im Beispiel der Inhalt ("value") vom Datenpunktsonos.0.root.10_10_10_10.current_albumzugeteilt.
Danach folgt noch eine weitere VariablefavSet, der ein anderer Datenpunkt-Wert gegeben wird.
Zum Schluss ein if/else zur Ausgabe.@Mic Erstmal Danke. Leider suche ich auch immer noch eine Doku, was mit den {} alles möglich wäre. Jetzt weiß ich wenigstens wie es heißt. Da gibt es ja ein video von arteck. Verstanden habe ich es noch nicht ganz. Ist favorites_set ein Array bzw. Objekt? Ich habe kein sonos. Muss ich die Übersetzungen erstmal als Datenpunkte anlegen, so als "name":"value" oder kann man das auch in den Klammern machen?
"status":{ "ok_cutting":"mähen", "ok_charging":"laden", "error":"Fehler" } -
@Mic Erstmal Danke. Leider suche ich auch immer noch eine Doku, was mit den {} alles möglich wäre. Jetzt weiß ich wenigstens wie es heißt. Da gibt es ja ein video von arteck. Verstanden habe ich es noch nicht ganz. Ist favorites_set ein Array bzw. Objekt? Ich habe kein sonos. Muss ich die Übersetzungen erstmal als Datenpunkte anlegen, so als "name":"value" oder kann man das auch in den Klammern machen?
"status":{ "ok_cutting":"mähen", "ok_charging":"laden", "error":"Fehler" }@klausiob sagte in Dynamische Status-Meldungen direkt im Widget übersetzen:
Ist favorites_set ein Array bzw. Objekt?
Nein, das ist ein Variablenname, der alle erlaubten Datentypen (String, Number, Array, etc. akzeptiert), siehe: https://javascript.info/variables
In JavaScript wäre das etwalet favorites_set = 'Hier ein String'.
favorites_setkannst du (fast) beliebig ersetzen, z.B.xxx,iloveioBrokero.ä.Ich habe kein sonos.
Du brauchst kein Sonos, das war auch nur ein Beispiel zum anpassen.
Simplifiziert ist das "Binding" in VIS einfach ein stark gekürztes JavaScript, zur Anpassung solltest du dich etwas mit JS auskennen. Gute Anlaufstelle: https://javascript.info/
Den Rest habe ich oben eigentlich schon erklärt.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden