remekdc
Check out the OBS plugin Advanced Scene Switcher. I lets you define macros that are triggered by conditions, which include many OBS states and more. We use this plugin to automate the OpenLP display state and to send commands to our XR18 mixer, so that it mutes and unmutes inputs that are appropriate for the chosen scene.
In response to your question, we use A.S.S. to automatically start streaming a service at 9:59 if the operator has not already started the stream.
We record audio as well as stream because we upload audio only to an interactive voice response system that serves people who don't have computers or smart phones. We don't record the gathering music before the service. The trigger for starting the recording is [Streaming has started] AND [Scene has switched to the pulpit]. Our operators switch to the pulpit scene when someone welcomes everyone to the service.
If you define a scene called Sermon, that would be your trigger to start streaming.
With our approach, the operator typically only interacts with OpenLP through the cursor keys, cuing up a service item while the screen is dark and going to the next verse/slide when the screen is showing. Macros take care of when to show/hide the OpenLP screen. We even have a macro that will have OpenLP show the desktop, so that we can show a camera view on our screen. We can do this because OBS and OpenLP are running on the same computer. If they aren't, then you really need @STEPHANVS approach as well.