예제 #1
0
        public async Task None(IDialogContext context, LuisResultWithComposite result)
        {
            string message = $"None Intent";
            await context.PostAsync(message);

            context.Wait(this.MessageReceivedAsync);
        }
예제 #2
0
        private async Task <LuisResultWithComposite> GetLuisResult(string query)
        {
            var luisApiPath = "https://api.projectoxford.ai/luis/v1/application?id={0}&subscription-key={1}&q={2}";

            LuisResultWithComposite result = null;
            var path   = string.Format(luisApiPath, this.applicationId, this.subscriptionKey, query);
            var client = new HttpClient();

            HttpResponseMessage response = await client.GetAsync(path);

            if (response.IsSuccessStatusCode)
            {
                result = JsonConvert.DeserializeObject <LuisResultWithComposite>(await response.Content.ReadAsStringAsync());
            }

            return(result);
        }
예제 #3
0
        public async Task LogMeal(IDialogContext context, LuisResultWithComposite result)
        {
            var    count   = result.CompositeEntities?.Count ?? 0;
            string message = $"I found {count} composite entities.";
            await context.PostAsync(message);

            foreach (var entity in result.CompositeEntities)
            {
                string compositeEntity = "";
                foreach (var child in entity.Children)
                {
                    compositeEntity += $"{child.Type} - {child.Value}";
                }

                await context.PostAsync(compositeEntity);
            }

            context.Wait(this.MessageReceivedAsync);
        }