Ich bemühe mich gerade etwas "mehr" in OH3 zu machen.
Einer der Echo Dots soll morgens eine Begrüßung sprechen. Der Weg dahin klappt mit dem "Amazon Echo Controll Binding" schon recht gut.
Nun geht es um das was gesprochen werden soll. Dafür klicke ich mir was mit Blockly zusammen, mehr beherrsche ich zZ nicht, und beherschein ist schon übertrieben
Es sind Sätze, die sich aus fixen Texten und Itemwerten zusammensetzen sollen.
Es hapert gerade an der Datums und Zeitansage.
Ich habe das ntp-Binding installiert. Datum und Zeit laufen in ein String-Item (weil das Echo Binding Strings erwartet).
Das sieht dann so aus"2021-10-11 18:13:32 MESZ " Die Sekunden und MESZ sollen aber nicht genutzt/gesprochen werden.
So sieht der Blocklycode zZ aus:
Code: Alles auswählen
var datum, anrede;
datum = itemRegistry.getItem('LokaleZeit_DatumundZeit').getState();
anrede = 'Hallo Resi, ';
events.sendCommand('AmazonEchoWohnzimmer_Sprich', (['',anrede,'Draußen sind ',itemRegistry.getItem('XiaomiThermo3_Temp3').getState(),'. Heute ist der ',datum,'. Ich wünsche Dir einen schönen Tag!'].join('')));
Offensichtlich wird von Alexa der Teilstring "2021-10-11 18:13:32 MESZ "als Zeitangabe erkannt und entsprechend ausgesprochen (und nicht etwa buchstabiert). Jedoch sollen Sekunden und MESZ nicht gesprochen werden.
Wie kann ich den String also entsprechend bearbeiten. Habe State Description aufgeschnappt um das Item zu formatieren. Komme da aber auch nicht weiter, weil ich eigentlich nicht weiß was ich da genau tue.
Nutze ich in Blockly zB...
Code: Alles auswählen
datum.slice(0, 10)
Kann mich mal jemand an die Hand nehmen?
Gruß
Thomas