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"); } }
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); } }
public async Task PostMoodInformation(moodtrackereasytable moodTrackerTable) { await this.moodTrackerTable.InsertAsync(moodTrackerTable); }