예제 #1
0
        public async Task StopAsync()
        {
            if (State != CodewordSpeechRecognizerState.Listening)
            {
                throw new InvalidOperationException();
            }

            Logger.LogInfo("Stopping speech recognizer.");
            State = CodewordSpeechRecognizerState.Idle;
            await SpeechRecognizer.ContinuousRecognitionSession.StopAsync();
        }
예제 #2
0
        private async void ContinuousRecognitionSession_Completed(SpeechContinuousRecognitionSession sender, SpeechContinuousRecognitionCompletedEventArgs args)
        {
            bool shouldRestart = State == CodewordSpeechRecognizerState.Listening;

            State = CodewordSpeechRecognizerState.Idle;

            if (shouldRestart)
            {
                Logger.LogInfo("Timed out...");
                await StartAsync();
            }
        }