Пример #1
0
        static async void RequestMoreToLuis(string query, Queryparts breakTitle)
        {
            var client = new HttpClient();

            // The request header contains your subscription key
            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", messages.subscriptionKey);


            for (int i = 0; i < breakTitle.part.Length; i++)
            {
                var uri      = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/" + messages.luisAppId + "?q=" + HttpUtility.UrlEncode(breakTitle.part[i]);
                var response = await client.GetAsync(uri);

                var strResponseContent = await response.Content.ReadAsStringAsync();

                // Display the JSON result from LUIS
                //Console.WriteLine(strResponseContent.ToString());
                string body = strResponseContent.Replace("'", "\"");

                Rootobject title = JsonConvert.DeserializeObject <Rootobject>(body);

                string[] features = title.getFeatures();
                if (features[1] == "None" && i < breakTitle.part.Length - 1)
                {
                    breakTitle.part[i + 1] = breakTitle.part[i] + "," + breakTitle.part[i + 1];
                }
                else
                {
                    SaveToFile(title, features);
                }
            }
        }
Пример #2
0
        public static void MakeRequest(string q)
        {
            q = q.Replace("'", "");
            //q = q.Replace("£", "$");
            Queryparts BreakTitles = new Queryparts();

            BreakTitles = BreakTitles.BreakQuery(q);

            if (BreakTitles.isBroken == true && BreakTitles.seperator != messages.Comma)
            {
                if (BreakTitles.part[1].ToLower().Trim().Equals(messages.FreeShipping))
                {
                    RequestOneToLuis(q, BreakTitles.part[0], messages.OfferTypePlusFreeship);
                }
                else if (BreakTitles.part[1].ToLower().Trim().Contains(messages.FreeShipping))
                {
                    RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionsIndep);
                }
                else if (BreakTitles.part[1].ToLower().Contains(messages.Cashback))
                {
                    RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionOfp2Top1);
                }
                else
                {
                    RequestTwoToLuis(q, BreakTitles.part[0], BreakTitles.part[1], messages.RestrictionsIndep);
                }
            }
            else if (BreakTitles.isBroken == true)
            {
                RequestMoreToLuis(q, BreakTitles);
            }
            else
            {
                RequestOneToLuis(q, q, messages.RestrictionsIndep);
            }
        }