public override async Task <SpeechEnroller.Result> TrainAsync() { if (IsSessionOpen && !IsSessionClosing) { IsSessionClosing = true; EnrollResults.Clear(); Content.Clear(); Uri uri = Configuration.Server.BuildEndpoint(URI_PATH_TRAIN); Logger?.LogDebug("SpeechEnroller_HttpClient_Version1.TrainAsync(): URI: " + uri.ToString()); using (var request = BuildRequest(CallMode.Train, uri)) { try { await HandleResponse(CallMode.Train, request, await mHttpClient.SendAsync(request)); } catch (HttpRequestException ex) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(ex); } return(EnrollResult); } } return(EnrollResult = SpeechEnroller.Result.Invalid); }
public override SpeechEnroller.Result Post() { if (IsSessionOpen && !IsSessionClosing) { EnrollResults.Clear(); Uri uri = Configuration.Server.BuildEndpoint(URI_PATH_PROCESS); Logger?.LogDebug("SpeechEnroller_HttpClient_Version1.Post(): URI: " + uri.ToString()); using (var request = BuildRequest(CallMode.Process, uri)) { try { var responseTask = mHttpClient.SendAsync(request); responseTask.RunSynchronously(); var resultTask = HandleResponse(CallMode.Process, request, responseTask.Result); resultTask.RunSynchronously(); } catch (HttpRequestException ex) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(ex); } return(EnrollResult); } } return(EnrollResult = SpeechEnroller.Result.Invalid); }
public override void Cancel(string reason, SpeechEnroller.CancelCallback callback) { if (IsSessionOpen && !IsSessionClosing) { IsSessionClosing = true; EnrollResults.Clear(); Content.Clear(); if (string.IsNullOrEmpty(reason)) { reason = "Unknown"; } else { reason = reason.Replace(' ', '-').Substring(0, System.Math.Min(reason.Length, 64)); } Uri uri = Configuration.Server.BuildEndpoint(URI_PATH_CANCEL, reason); Logger?.LogDebug("SpeechEnroller_HttpClient_Version1.Cancel(callback): URI: " + uri.ToString()); using (var request = BuildRequest(CallMode.Cancel, uri)) { var task = mHttpClient.SendAsync(request).ContinueWith((requestTask) => { if (requestTask.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(requestTask.Exception); callback?.Invoke(); return; } HandleResponse(CallMode.Cancel, request, requestTask.Result).ContinueWith((responseTask) => { if (responseTask.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(responseTask.Exception); callback?.Invoke(); return; } callback?.Invoke(); }); }); if (task.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(task.Exception); callback?.Invoke(); } return; } } EnrollResult = SpeechEnroller.Result.Invalid; callback?.Invoke(); }
public override void Train(SpeechEnroller.TrainCallback callback) { if (IsSessionOpen && !IsSessionClosing) { IsSessionClosing = true; EnrollResults.Clear(); Content.Clear(); Uri uri = Configuration.Server.BuildEndpoint(URI_PATH_TRAIN); Logger?.LogDebug("SpeechEnroller_HttpClient_Version1.Train(callback): URI: " + uri.ToString()); using (var request = BuildRequest(CallMode.Train, uri)) { var task = mHttpClient.SendAsync(request).ContinueWith((requestTask) => { if (requestTask.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(requestTask.Exception); callback?.Invoke(EnrollResult); return; } HandleResponse(CallMode.Train, request, requestTask.Result).ContinueWith((responseTask) => { if (responseTask.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(responseTask.Exception); callback?.Invoke(EnrollResult); return; } callback?.Invoke(EnrollResult); }); }); if (task.IsFaulted) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(task.Exception); callback?.Invoke(EnrollResult); } return; } } callback?.Invoke(EnrollResult = SpeechEnroller.Result.Invalid); }
public override bool Cancel(string reason) { if (IsSessionOpen && !IsSessionClosing) { IsSessionClosing = true; EnrollResults.Clear(); Content.Clear(); if (string.IsNullOrEmpty(reason)) { reason = "Unknown"; } else { reason = reason.Replace(' ', '-').Substring(0, System.Math.Min(reason.Length, 64)); } Uri uri = Configuration.Server.BuildEndpoint(URI_PATH_CANCEL, reason); Logger?.LogDebug("SpeechEnroller_HttpClient_Version1.Cancel(): URI: " + uri.ToString()); using (var request = BuildRequest(CallMode.Cancel, uri)) { try { var responseTask = mHttpClient.SendAsync(request); responseTask.RunSynchronously(); var resultTask = HandleResponse(CallMode.Cancel, request, responseTask.Result); resultTask.RunSynchronously(); return(resultTask.Result); } catch (HttpRequestException ex) { EnrollResult = SpeechEnroller.Result.Timeout; Logger?.LogError(ex); } } } return(false); }
protected void ResetEnroller() { SessionId = ""; Codec = WaveFormatEncoding.Unknown; Profiles.Clear(); EnrollResults.Clear(); EnrollResult = SpeechEnroller.Result.NeedMore; MetaData.Clear(); ExtraData.Clear(); Content.Clear(); CookieContainer = new CookieContainer(); TotalSnippetsSent = 0; TotalAudioBytesSent = 0; TotalProcessCalls = 0; SpeechRequired = 0; SpeechExtracted = 0; IsSessionOpen = false; IsSessionClosing = false; IsTooSoft = false; IsTooLoud = false; }