1. I have a function that will save the state of each zone that I think would be called before the announcement.
Agree with this step
2. Is the announcement global - would it simply broadcast to every ZonePlayer, or did you have some idea that it would be a group based broadcast?
I was thinking of having a user selectable conif list of zones to be used in the broadcast. The selection would be made at the plugin menu level and would not change for each broadcast but could be changed for future ones.
If this is to complex then a broadcast to all zones would be a good fall back.
3. Do you envision an auto-grouping of all ZonePlayers - related to the comment #2, and then an auto-ungroup?
I agree with that subject to the possibly selected zones above.
Let me know, as I think I can create logic to step through all this if it is universal. I think the action would:
save all zone states
group all zone players
set a volume (as part of the action)
switch to a particular line in
Is there a separate action to restore states? If so, does it ungroup all zone and universally restore states of each ZonePlayer?
Ideally it would put all zone groupings, queues, and states back to what they were prior to broadcast.
Another option for the announcement is to have some other logic that creates a mp3 from speech - not sure if this is of interest nor am i sure how to create the thing. I have not thought that out.
I was planning to put a linin input from my Indigo computer and use the Indigo speak function. I guess the same thing could be done with prerecorded messages in mp3 format but you wouldn't have the computer generated voice.
Hope this helps. Whatever you come up with I am sure I will like.