FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: Tobias am 23 April 2019, 19:51:57

Titel: X_Initialize: AttrList Möglichkeiten
Beitrag von: Tobias am 23 April 2019, 19:51:57
Hi,
ist es möglich bei den Attributen eine 3 Stufige Kaskade einzubauen?
1. Wenn ich den Wert "Custom" wähle, mächte ich ein Freitextfeld  angezeigt haben. Ansonsten die vorbelegten Fehler

$hash->{AttrList}  = "TTS_Language:Custom:<text>,Deutsch,Englisch"

2. Ist eigentwie eine echte Kaskade möglich? Wenn ich eine Sprache wähle, möchte ich dazu passenden Stimmen auswählen
Beispiel:
$hash->{AttrList}  = "TTS_Language:Deutsch[Hans|Marta|Vivien],Englisch[John,Maja,Donald]"

Ich wähle "Deutsch" aus, und eine abhängige Liste wird mit den verfügbaren deutschen Stimmen wird eingeblendet

Geht das irgendwie? Habe ich Alternativen?
Titel: Antw:X_Initialize: AttrList Möglichkeiten
Beitrag von: CoolTux am 23 April 2019, 19:59:11
Aktuell gibt es nur eine zwei Stufen.

Deine Möglichkeit wäre mit Trennern zu arbeiten

$hash->{AttrList}  = 'TTS_Language:Deutsch|Hans,Deutsch|Marta,Deutsch|Vivien,...';

Du bekommst dann also Deutsch|Marta als Beispiel und spittest dann bei | und sicherst Dir die Entscheidung in ein Hash oder so weg.
Titel: Antw:X_Initialize: AttrList Möglichkeiten
Beitrag von: justme1968 am 23 April 2019, 20:03:03
nein. geht beides aktuell leider nicht. die diskussion gab es schon mehrfach. vor allem für 2.

bisher scheitert es vor allem daran das niemand eine idee hatte wie man das rückwärts kompatibel in die set ? antwort packen kann.

du kannst so etwas aktuell nur selber über eine FW_detailFn umsetzen. pah hat glaube ich irgendwo schon mal gemacht.

oder eben über einen workaround wie von CoolTux vorgeschlagen.
Titel: Antw:X_Initialize: AttrList Möglichkeiten
Beitrag von: rudolfkoenig am 23 April 2019, 20:22:18
Zur Klarstellung: mit der Anzeige auf der FHEMWEB Detailseite, in der attr Zeile (bzw. set/get) geht es nur 2-stufig: erst Attributnamen aus der Liste aller Attribute auswaehlen, und dann (falls spezifiziert) Parameter fuer das ausgewaehlte Attribut aus einer Liste auswaehlen.

Wer mehr als diese beiden Stufen benoetigt, muss (wie justme1968 erwaehnte) das Problem in einer FW_detailFn selbst realisieren.

Man kann natuerlich das Problem auf diverse Weise vereinfachen:
- TTS_Language_Deutsch:Hans,Marta,Vivien TTS_Language_English:John,Maja,Donald
- TTS_Language:Deutsch_Hans,Deutsch_Marta,Deutsch_Vivien,English_John,English_Maja,English_Donald
Titel: Antw:X_Initialize: AttrList Möglichkeiten
Beitrag von: Tobias am 24 April 2019, 07:55:59
Alles klar :(
Danke


Gesendet von iPhone mit Tapatalk
Titel: Antw:X_Initialize: AttrList Möglichkeiten
Beitrag von: CoolTux am 24 April 2019, 08:05:13
Zitat von: rudolfkoenig am 23 April 2019, 20:22:18
- TTS_Language_Deutsch:Hans,Marta,Vivien TTS_Language_English:John,Maja,Donald

Die Lösung finde ich am besten