Пример #1
0
        /// <summary>
        /// Данныый метод посылает запросы на бота QnA Maker и получает ответы на эти запросы
        /// </summary>
        /// <param name="platform"></param>
        /// <param name="role"></param>
        /// <param name="qnaResponse"></param>
        /// <returns></returns>
        public async Task <string> QnABotResponse(string platform, string role, string qnaResponse)
        {
            QnAMakerKey(platform, role);

            string qnaResult = await QnARequest.QnAResponse(urlAddress, knowledgebaseId, endpointKey, qnaResponse);

            // Добавлена очистка от ненужных символов
            //Regex regex = new Regex(@"&#\d{3};");
            //qnaResult = regex.Replace(qnaResult, " ");

            return(HttpUtility.HtmlDecode(qnaResult));
        }
Пример #2
0
        public static async Task <QnAResponse> GetQnAResponse(string Question)
        {
            QnARequest request = new QnARequest();

            request.question = Question;

            QnAResponse data = new QnAResponse();

            using (WebClient client = new WebClient())
            {
                client.Headers.Add("Content-Type", "application/json");
                client.Headers.Add("Ocp-Apim-Subscription-Key", ConfigurationManager.AppSettings["QnAKey"]);
                client.Encoding = System.Text.Encoding.UTF8;

                string requestUri = ConfigurationManager.AppSettings["QnAEndpoint"];

                string responseString = client.UploadString(requestUri, JsonConvert.SerializeObject(request));
                string decodedString  = System.Net.WebUtility.HtmlDecode(responseString).Replace("\"", "'").Replace("„", "'");
                data = JsonConvert.DeserializeObject <QnAResponse>(decodedString);
            }

            return(data);
        }
Пример #3
0
        public static async Task <QnAResponse> GetQnAResponse(string Question)
        {
            QnARequest request = new QnARequest();

            request.question = Question;

            QnAResponse data = new QnAResponse();

            using (WebClient client = new WebClient())
            {
                client.Headers.Add("Content-Type", "application/json");
                client.Headers.Add("Ocp-Apim-Subscription-Key", "6a50acd8314e456191ecf4cbf40164c9");
                client.Encoding = System.Text.Encoding.UTF8;

                string requestUri = "https://westus.api.cognitive.microsoft.com/qnamaker/v2.0/knowledgebases/efe61b54-60d9-4630-a773-2c9ae7288fed/generateAnswer";

                string responseString = client.UploadString(requestUri, JsonConvert.SerializeObject(request));
                string decodedString  = System.Net.WebUtility.HtmlDecode(responseString).Replace("\"", "'").Replace("„", "'");
                data = JsonConvert.DeserializeObject <QnAResponse>(decodedString);
            }

            return(data);
        }