The TTS is done in Tasker. You’ll create Tasks that will use the Macronos plugin (“Android Audio” setting).
By way of background, Tasker is a general purpose automation app on Android. It can automate tons of things, including connecting Sonos to SmartThings, via plugins. Tasker basically all “IF X happens, then do Y,” but it uses odd language to describe that. (The “if” contexts are called “Profiles” and the “then” events are called “Tasks.”)
BTW, @joshua_lyon has some helpful explainers here on using SharpTools with Tasker here: http://sharptools.boshdirect.com/examples-list
Tasker can use any Text-to-Speech engine installed on the Android device to generate speech from text. The Google TTS is pre-installed, or you pay for better voice rendering from folks like Acapela or IVONA.
So, ultimately, your flowchart looks sort of like this:
SmartThings --> Sharp Tools —> Tasker --> Macronos --> (via “Android Audio” setting) --> Sonos
One bug with Android Audio on the Macronos is that I can’t get it to reliably go to multiple speakers at once. This is a problem with SmartThings, too, by the way. ST won’t even offer that option.