Language syntax, tag, and Substitution help

Hi all,

I’ve just started with Rhasspy installed on HA, and using the mobile app as the satellite. All the basic functions are working fine, but I’m stuck with some “complicated” tag/substitution things.

using the changelightstate sentence as follows :

[ChangeLightState]
light_name = ($rooms) {name} | <ChangeLightColor.light_name>
light_state = (on | off) {state}

turn <light_state> [the] <light_name> light
turn [the] <light_name> light <light_state>

the rooms slot contains the line “(dining room):dining_room” because the tag “name” needs to have no spaces when passed to the intent like this :

ChangeLightState: # Intent type
speech:
text: ok I will turn {{state}} the {{name}} light
action:
- service: light.turn_{{state}}
data: {}
target:
area_id: “{{name}}”

but now the text to speech contains the _ text not the spoken words. How can I get the name to be sent to the intent with the underscore, but the tts to have the spoken words?

thanks so much.