Esempio n. 1
0
        public async Task <PhraseResult> MakeRequest(string query)
        {
            var responseContent = await MakeRequestToLuis(query);

            var result = _jsonConvert.DeserializeObject <RootObject>(responseContent);

            string location = null;
            var    date     = DateTime.Now;

            foreach (var item in result.Entities)
            {
                if (item.Type == WeatherLocationEntityName && item.Score > MinItemScore)
                {
                    location = item.EntityType;
                }

                if (item.Type == DateTimeEntityName)
                {
                    date = DateTime.Parse(item.Resolution.Values[0].Value);
                }
            }
            var phraseResult = new PhraseResult
            {
                Location  = location,
                Date      = date,
                TopIntent = result.TopScoringIntent.Intent,
                Score     = result.TopScoringIntent.Score
            };

            return(await Task.FromResult(phraseResult));
        }
Esempio n. 2
0
        private string BuildResponse(ForecastModel model, PhraseResult phraseResult, string userName)
        {
            var result = $"Hey, {userName}  {Environment.NewLine}" +
                         $"Weather in  {model.Location}  {Environment.NewLine}" +
                         $"Date: {phraseResult.Date:dd.MM.yyyy} {Environment.NewLine}" +
                         $"Temperature:  {model.Temperature} °C{Environment.NewLine}" +
                         $"Wind speed:  {model.WindSpeed} mph{Environment.NewLine} Summary: {model.Summary}";

            return(result);
        }