We've developed a method to start a RTSP stream (from a camera to the wowza server) ahead of the cupertino stream request such that a ipad user can watch an RTSP stream on demand. It works well if we put enough of a delay in to ensure that the initial (primary) stream is up, and the secondary streams (cupertina, san jose and smooth) are ready for clients.
The reason for this as you will know is that like transcoding streams, the cupertino stream is what I like to call a "side effect" stream. You must start the primary before you can request the side effect stream
We have found that the 5 second delay works quite well except in the case that the source RTSP to wowza stream connection is bad (ip camera over cellular link is variable in quality :P).
What we are are wondering is if there is a programmatic way to inspect the current status of the cupertino stream so we can ditch the timer. We have tried using the connection count (http://wowzaserver:8086/connectioncounts), however we have noticed that it lists the cupertino stream immediately even though its not actually "healthy" enough for an iPad to connect to.
Any insight would be appreciated. And if I haven't been clear on any part please let me know and I will try my best to clarify.
I don't think there is a way to do what you are wanting to do.
A better way may be to use the LoopUntilLive module, where your players connect to the server generated stream and then when the live stream starts, it will automatically switch over to it. Also, if the live stream stops or resets, it will switch back to the filler when the live is not available.
You could still use your current workflow to start & stop the camera but instead of looking at connections on the camera stream, you would be looking at connections on the server created stream.
Source code is also available for that module in the AddOn Collection so you can modify to suit if needed.