I want to spice up my daily tts message announcing the drinking hour, but lack one piece of the puzzle. I’m trying to select a random message and language code from a json array as it just seems a bit more elegant than lots of if statements and input_select stuff, plus I’d like to learn more about json. Just a pointer to some pertinent docs would be great.
Edit: OK, I found how to create the array with
{% set value_json= … %}
and how to select with
’{{ value_json[states.sensor.message.state][‘code’] }}'
now if I just knew where to set the array…
- id: beer_oclock
alias: Timely message
trigger:
platform: time
at: '17:00:00'
action:
service: tts.google_say
entity_id: media_player.kitchen_display
data:
message: Sore wa doko ka ni 5-jidesu
language: ja
- platform: random
name: "5pm Message"
minimum: 1
maximum: 18
{
"1": { "language":"Chinese", "code":"zh", "message":"Xiànzài shì 5 diǎn zhōng" },
"2": { "language":"Danish", "code":"da", "message":"Det er klokken fem et eller ndet sted" },
"3": { "language":"Dutch", "code":"nl", "message":"Het is ergens rond vijf uur" },
"4": { "language":"English", "code":"en", "message":"It's 5 o'clock somewhere" },
"5": { "language":"French", "code":"fr", "message":"Il est cinq heures quelque part" },
"6": { "language":"German", "code":"de", "message":"Es ist fünf Uhr irgendwo" },
"7": { "language":"Hindi", "code":"hi", "message":"abhee paanch baje hain" },
"8": { "language":"Indonesian", "code":"id", "message":"Sekarang jam 5 suatu tempat" },
"9": { "language":"Italian", "code":"it", "message":"Sono le cinque in punto" },
"10": { "language":"Japanese", "code":"ja", "message":"Goji doko ka ni" },
"11": { "language":"Korean", "code":"ko", "message":"eodinga 5 siya" },
"12": { "language":"Norwegian", "code":"nb", "message":"Det er fem på et sted" },
"13": { "language":"Polish", "code":"pl", "message":"Jest gdzieś 5-ta" },
"14": { "language":"Portugese", "code":"pt", "message":"São cinco horas em algum lugar" },
"15": { "language":"Spanish", "code":"es", "message":"Son las cinco en algún lugar" },
"16": { "language":"Swedish", "code":"sv", "message":"Det är fem på någonstans" },
"17": { "language":"Thai", "code":"th", "message":"5 Mong chêā xyū̀ thī̀h̄ịn s̄ạk h̄æ̀ng" },
"18": { "language":"Turkish", "code":"tr", "message":"Saat 5 yönünde bir yerlerde" }
}