[Release] - Speaker Central

So I setup a virtual speaker device with 4 of my sonos speakers. I have just setup a simple Test Rule to see if it was working and it isn't. My test rule is just to speak a message to the Virtual Speaker when a button is turned on. Any ideas why this isn't working?
image

The easiest way to test is to put something into the ‘proxy’
Enter some text under the ‘speak’ button and click it.
If the speakers work then you know it’s not speaker central, if it doesn’t then the problem is there.
I don’t know about your rule without installing and recreating it as I don’t use Rule Machine

Andy

No it doesn't work. I put something in Play Text and in Speak and then pressed Play. Nothing happens. This was in the logs:

dev:6142019-03-02 08:09:03.472 am errorgroovy.lang.MissingMethodException: No signature of method: dev15513732854601969659676.play() is applicable for argument types: () values: [] Possible solutions: any(), speak(java.lang.Object), split(groovy.lang.Closure), any(groovy.lang.Closure), putAt(java.lang.String, java.lang.Object), wait() (play)

dev:6142019-03-02 08:08:51.507 am errorgroovy.lang.MissingMethodException: No signature of method: dev15513732854601969659676.play() is applicable for argument types: () values: [] Possible solutions: any(), speak(java.lang.Object), split(groovy.lang.Closure), any(groovy.lang.Closure), putAt(java.lang.String, java.lang.Object), wait()

Pressing ‘play’ does not work as your speakers don’t accept that command.
If you click the ‘speak’ button when some text is in the box below it should speak.

Andy

That doesn't seem to work either.

Ok.
Can you please turn all the logging on in the child app and the proxy device and try again?
Then screenshot the logs for me so I can see what is happening.

Do you have any ‘restrictions’ turned on in the child app?

Yes, I did have a time restriction on which I changed to fit the time right now. It did work. However, when used in Rule Machine, it seems to only work if i select the virtual speaker as a speech device not a Music device.

Will it recognize a play and resume? For instance, if I am listening to music on my sonos speakers and then it announces someone is home using this virtual speaker, will it resume the music?

As I said, I don’t use RM.
I’m sorry, I should have tested that.
I use Message Central for all my TTS.

If speech synth works of you then that’s great!

Andy

OK, I will keep testing. I have a Arrival/Departure piston in webCore that I use to announce arrivals and departures. Since going to HE I haven't been able to get it to work on multiple speakers and I thought this might solve the problem.

With speech synth, probably not.
With music player yes.

The ‘speak’ command in speech synth does not allow the ‘resume’ part.
With music player the command is ‘playTextAndRestore’ which should do what you want.
Unfortunately, unless someone can correct me, I believe RM will just use the ‘speak’ command.

You may want to try Message Central if you need the ‘resume’ feature.

Andy

Presence Central will do presence announcements and can use the music player feature too

Is webcore capable of sending the ‘playTextAndRestore’ command?
(I have never used webcore either)

So, I have the virtual speaker setup with the sonos speakers selected under the Music Device. But when using RM it will only work if I select Speech device.

The virtual proxy driver is both.

Yes, webCore will do a speak and restore command but it hasn't been working with the virtual speaker. I will keep testing.

Did a test using Webcore and it did speak but it repeated itself before finishing. So I wanted it to say "This is a test" and it said "This is a this is a test". Very weird!

Sorry, I figured out why it did that. It ran both Tests. One from webcore and one from RM because I switched on the Test button.:blush:

Spoke too soon. Not working in WebCore now.

Just updated to latest version and I notice that I can't select multiple speakers when selecting Speech Synth.