Esempio n. 1
0
        public async Task <IntentionResult> GetUserIntent(string message)
        {
            string apiUri = $"{uri}?subscription-key={apiKey}&verbose=true&timezoneOffset=0&q={HttpUtility.UrlEncode(message)}";

            client.DefaultRequestHeaders.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage response = await client.GetAsync(apiUri);

            if (!response.IsSuccessStatusCode)
            {
                throw new ApplicationException("LUIS API didn't answered successfully");
            }

            var json   = response.Content.ReadAsStringAsync().Result;
            var result = JsonConvert.DeserializeObject <LuisResponse>(json);

            var intention       = IntentionFactory.GetInstance(result.TopScoringIntent.Name);
            var intentionResult = new IntentionResult {
                Intention = intention
            };

            if (result.Entities.Any())
            {
                intentionResult.Telefono = result.Entities.First().Value;
            }

            return(intentionResult);
        }
Esempio n. 2
0
 public ActionResult IntentionAdd(string description)
 {
     if (!string.IsNullOrEmpty(description))
     {
         Intention intention = IntentionFactory.Create(description, CurrentManager.Id, CurrentManager.ParentId != 0 ? CurrentManager.ParentId : CurrentManager.Id);
         BaseService.SaveIntention(intention);
     }
     return(RedirectToAction("IntentionList"));
 }