private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <IMessageActivity> result) { var message = await result; var userName = string.Empty; var getName = false; context.UserData.TryGetValue("Name", out userName); context.UserData.TryGetValue <bool>("GetName", out getName); LUISData luisEntity = await GetEntityFromLUIS(message.Text); if (getName) { userName = message.Text; context.UserData.SetValue("Name", userName); context.UserData.SetValue <bool>("GetName", false); } if (string.IsNullOrWhiteSpace(userName)) { await context.PostAsync("What is your Name?"); context.UserData.SetValue <bool>("GetName", true); } else { await context.PostAsync(String.Format("Hi {0}, how can i help you?", userName)); } context.Wait(MessageReceivedAsync); }
private static async Task <LUISData> GetEntityFromLUIS(string Query) { Query = Uri.EscapeDataString(Query); LUISData Data = new LUISData(); using (HttpClient client = new HttpClient()) { string RequestUri = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/70e9d5b3-604b-4357-a195-b0cde71391f9?subscription-key=2f6fc2999da5443e9e2e7a38f396d80c&timezoneOffset=0.0&verbose=true&q=" + Query; HttpResponseMessage msg = await client.GetAsync(RequestUri); if (msg.IsSuccessStatusCode) { var JsonDataResponse = await msg.Content.ReadAsStringAsync(); Data = JsonConvert.DeserializeObject <LUISData>(JsonDataResponse); } } return(Data); }
public async Task <LUISData> Get(string id) { LUISData item = await DocumentDBRepository <LUISData> .GetItemAsync(id); return(item); }