How to troubleshoot voice outside of the debug page?

The Troubleshoot Assist page shows good detail on how to see results of Assist runs.

My question is, how do I remotely access these? I would like to be able to monitor flows, either through an automation or using Node Red, but I have not been able to figure out how to access these debug pipelines.

My end goal is I would like to log the results of the STT, TTS, and commands issued so I can fine tune things.

I figured out a semi workaround, to see what the STT and TTS are; it doesn’t expose what device/s are changed.

Per the esphome documentation, a variable called “x” has the STT and TTS values at a specific point in the flow. I created variables for these and automations to store the values. Note that the variable X exists in the source code, but the compiler doesn’t know about it; I had to create a variable called X just to make it compile.

voice_assistant:
  on_tts_start:
   - text_sensor.template.publish:
      id: tts_response
      state: !lambda 'return id(x);'
  on_stt_end:
   - text_sensor.template.publish:
       id: stt_result
       state: !lambda 'return id(x);'
text_sensor:
  - platform: template
    name: STT result
    id: stt_result
  - platform: template
    name: TTS response
    id: tts_response
  - platform: template
    name: x
    id: x
2 Likes

Had to delete me .esphome folder for this to work, but i can now get the STT into nodered to try and search for music to play,