Sorry for the spam guys, but this one is driving me nuts (and I'm driving the wife nuts testing it ).
I turned on the "Stop after TTS is complete" setting in the preferences section of the GH Mini device. It looks like it forces a disconnect after every announcement, which I believe lack of disconnect was leading to the errors. I've disabled my refresh() for now and will continue for the next several hours/days testing in this mode.
Two drawbacks I've noticed:
Logging seems to be clipped when I do this. I don't get consistent logging of "speaker is playing", "speaker is idle", and "media source is Hubitat" events. But 100% consistency on "media source is None" within a couple seconds of the event.
You get the new device connecting sound with EVERY event, regardless of how close together they are. Not a drawback for me, but I know others have said this drive them crazy. Guess it's good that I'm already crazy.
Ok, while the GH mini hasn't gone offline since I turned on the "Stop after TTS complete" setting, it appears to truncate long messages (like notifications from @aaron's NOAA Weather Alerts). Hmmm.....
Does anyone know if there is a character limit for TTS? If there is I can do something similar to my PushOver character limitation. I have not personally run into any issues with TTS announcements with my NOAA application.
I've just run some tests and can confirm that "Stop after TTS complete" is absolutely what is cutting off long messages.
@mike.maxwell, the only reason I'm using that setting is because the GH mini gets forgotten by Hubitat sometime during the course of a 24 hour day unless you refresh the device. While I appreciate the extended timeout, I'd rather have the integration fixed.
The library were using is not that great which is why this integration is in beta.
At some point in the future we will likely revisit this it's not a huge priority right now.
Understood and I appreciate the prioritization efforts. Hubitat was good when I bought it and only getting better. There are work around in place, I can live with that for now.
Great catch. Thanks for pointing that out. My mistake they should all be status for the triggers. You probably just save me a bunch of time trying to figure out what went wrong with that speaker
Also the two second delay seems to stop the end of the message being cut off. Not sure why it happens with no delay as the status shouldn’t change to idle until after it’s finished playing.
I just gave this a try and did some speech through one of the speakers and the mediaSource never changed to None from Hubitat. Does yours return to None?