The way I do this is to drop some code the App.xaml.cs, specifically in the OnActivated method.
protected async override void OnActivated(IActivatedEventArgs args)
{
base.OnActivated(args);
string section = string.Empty;
if (args.Kind == ActivationKind.VoiceCommand)
{
VoiceCommandActivatedEventArgs voiceArgs = args as VoiceCommandActivatedEventArgs;
SpeechRecognitionResult speechRecognitionResult = voiceArgs.Result;
System.Diagnostics.Debug.WriteLine(speechRecognitionResult.Text);
if (speechRecognitionResult.Text.Contains("status"))
{
string a = "";
string ActivToPub = "";
a = this.SemanticInterpretation("status", speechRecognitionResult);
if (a == "Appear Away")
{
ActivToPub = "Away";
}
if (a == "Off Work")
{
ActivToPub = "off-work";
}
//Here is where my code talks to our application tell it to change the status of your uri, sending the availability a (available, busy, do not disturb, appear away, be right back, off work), and the optional activity if it is one of the subsets of away.
}
}
The first thing to note is when to trigger, we look to see if the program was activated by a voice command. Next we pull the arguments specifically looking for the voice result. Once we have the result we check to see if it contains one of our commands. In my case here, we are looking for "change my status to ", so we look to see if the text contains "status" as our match condition. Once we have that we look in our xml file and make sure the following uttered status matches of those choices ;
<PhraseList Label="status">
<Item> Busy </Item>
<Item> Do No Disturb </Item>
<Item> Available </Item>
<Item> Be Right Back </Item>
<Item> Appear Away </Item>
<Item> Off Work </Item>
</PhraseList>
So in our software that talks to the Lync or Skype for Business client we the simply implement the function to change the status. I hope this series gave you some idea of how to the all of the building blocks together and was useful.
Doug Routledge, C# Lync, Skype for Business, SQL, Exchange, UC Developer BridgeOC Twitter - @droutledge @ndbridge
No comments:
Post a Comment
Any spam comments will be deleted and your user account will be disabled.