예제 #1
0
        static async Task AnalyseMood(string moodContent)
        {
            // Prepare the request headers
            var client = new HttpClient();

            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "d4692b0042094e9fa9b56f7114ad714e");

            HttpResponseMessage response;
            string url = "https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment";

            var postData = @"{""documents"":[{""id"":""1"", ""language"":""en"", ""text"":""@Text""}]}".Replace("@Text", moodContent);

            byte[] byteData = Encoding.UTF8.GetBytes(postData);

            using (var content = new ByteArrayContent(byteData))
            {
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                response = await client.PostAsync(url, content);

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

                var sentimentStr = new Regex(@"""score"":([\d.]+)").Match(responseString).Groups[1].Value;

                var score = Convert.ToDouble(sentimentStr);

                moodtrackereasytable model = new moodtrackereasytable()
                {
                    Content   = moodContent,
                    Sentiment = sentimentStr,
                    Date      = new DateTime(2017, 7, 31),
                    Desc      = (score > 0.5) ? "positive" : "negative"
                };

                await AzureManager.AzureManagerInstance.PostMoodInformation(model);

                await Application.Current.MainPage.DisplayAlert("Done!", "New mood recorded.", "OK");
            }
        }
예제 #2
0
        static async Task AnalyseMood(string moodContent)
        {
            // Prepare the request headers
            var client = new HttpClient();

            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "aa411a4666ff4bbfbb4267db4b4ca8b8");

            HttpResponseMessage response;
            string url = "https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment";

            var postData = @"{""documents"":[{""id"":""1"", ""language"":""en"", ""text"":""@Text""}]}".Replace("@Text", moodContent);

            byte[] byteData = Encoding.UTF8.GetBytes(postData);

            using (var content = new ByteArrayContent(byteData))
            {
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                response = await client.PostAsync(url, content);

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

                var sentimentStr = new Regex(@"""score"":([\d.]+)").Match(responseString).Groups[1].Value;

                //SentimentModel responseModel = JsonConvert.DeserializeObject<SentimentModel>(responseString);

                moodtrackereasytable model = new moodtrackereasytable()
                {
                    Content   = moodContent,
                    Sentiment = sentimentStr
                };

                await AzureManager.AzureManagerInstance.PostMoodInformation(model);

                //string moodFinal = moodContent + " : " + sentimentStr;
                //App.PastMoods.Add(moodFinal);
            }
        }
예제 #3
0
 public async Task PostMoodInformation(moodtrackereasytable moodTrackerTable)
 {
     await this.moodTrackerTable.InsertAsync(moodTrackerTable);
 }