1) start-of-input = service-originated
This is the recommended mode of operation as it would allow for more robust barge-in experience. There are a number of settings that you should consider.
To start off, there are two parameters that control sensitivity of internal speech activity detector such as speech-start-timeout and vad-mode. For short utterances, where the caller is supposed to say something like "yes/no", the speech start timeout has to be set to 50 msec or so in order to trigger (not to miss) an activity. Otherwise, a timeout in 200 or 300 msec should be sufficient for detection of start of speech and filter out some false positives. With latest releases of all SR plugin, this timeout can be adjusted per recognition request. The same applies to vad-mode which can also be adjusted per recognition request, even though the default mode should be sufficient for most of the cases.
Next, and probably more or evenly important settings are speech-complete-timeout and speech-incomplete-timeout. While the former is enforced when there is an interim speech transcription result becomes available, the latter is used originally when streaming to the service is started. The speech-complete timeout must be set to a smaller value such as 500 msec from 1000 msec, depending how long the utterance might be. If the caller might take a breath while pronouncing a long sequence of digits or address, then you may have a longer speech-complete timeout; otherwise, even 300 msec would be enough to reliably trigger end of input
for short utterances.
As for the speech-incomplete timeout, you should consider using a longer timeout in order to address the problem with recognition terminated prematurely due to InitialSilenceTimeout. If you set the speech-incpmplete timeout to, let's say, 15000 msec, and recognition (first turn) completes with InitialSilenceTimeout, then a new turn will implicitly be initiated, assuming all speech input timeouts allow for further processing. This mode of operation has been implemented for Bing/Azure SR plugin for a while.