From where do I have to accept the speech recognition policy?
Here is the code
public async void display()
{
SpeechRecognizer rec = new SpeechRecognizer();
await rec.CompileConstraintsAsync();
rec.Timeouts.InitialSilenceTimeout = TimeSpan.FromSeconds(5);
rec.Timeouts.EndSilenceTimeout = TimeSpan.FromSeconds(20);
rec.UIOptions.AudiblePrompt = "I am listening";
rec.UIOptions.ShowConfirmation = true;
rec.UIOptions.IsReadBackEnabled = true;
rec.Timeouts.BabbleTimeout = TimeSpan.FromSeconds(5);
SpeechRecognitionResult result = await rec.RecognizeAsync(); // Error here
if (result!=null)
{
textBlock.Text= result.Text;
}
}
It is a setting under Speech, Inking and Typing. First, go to Settings and click "Time & Language". Next, select "Speech" from the menu on the left. After that, press "Speech, inking & typing privacy settings". Just press the button called "Get to know me". Then, click the popup to turn the setting on. After that, any software that uses the Speech Recognition API will work.
A helpful way to tell users to turn on would be...
catch (System.Runtime.InteropServices.COMException e) when (e.HResult == unchecked((int)0x80045509))
//privacyPolicyHResult
//The speech privacy policy was not accepted prior to attempting a speech recognition.
{
ContentDialog Dialog = new ContentDialog()
{
Title = "The speech privacy policy was not accepted",
Content = "You need to turn on a button called 'Get to know me'...",
PrimaryButtonText = "Shut up",
SecondaryButtonText = "Shut up and show me the setting"
};
if (await Dialog.ShowAsync() == ContentDialogResult.Secondary)
{
const string uriToLaunch = "ms-settings:privacy-speechtyping";
//"http://stackoverflow.com/questions/42391526/exception-the-speech-privacy-policy-" +
//"was-not-accepted-prior-to-attempting-a-spee/43083877#43083877";
var uri = new Uri(uriToLaunch);
var success = await Windows.System.Launcher.LaunchUriAsync(uri);
if (!success) await new ContentDialog
{
Title = "Oops! Something went wrong...",
Content = "The settings app could not be opened.",
PrimaryButtonText = "Shut your mouth up!"
}.ShowAsync();
}
}
More ways to launch the Settings app
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With