public List <Rule> GetRules() { try { ErrorState = false; string content; var resultCode = Restful.GetRestResponse("Get", Url, Username, Password, out content); if (resultCode == HttpStatusCode.OK) { var ruleList = JsonConvert.DeserializeObject <Rules>(content).rules; return(ruleList); } else { ErrorMessage = "Invalid HTTP Response code." + resultCode; ErrorState = true; return(null); } } catch (Exception ex) { ErrorState = true; ErrorMessage = ex.Message; return(null); } }
public Counts GetCounts(string Query, string bucket = "day", DateTime?fromDateTime = null, DateTime?toDateTime = null) { var endPoint = GetEndPoint(Search_Endpoint.Counts); try { ErrorState = false; string content = ""; var searchData = new SearchPost(); searchData.query = Query; searchData.maxResults = 0; searchData.bucket = bucket; if (fromDateTime != null) { searchData.fromDate = fromDateTime.GetValueOrDefault(); } if (toDateTime != null) { searchData.toDate = toDateTime.GetValueOrDefault(); } if (hasMore) { searchData.next = nextToken; } var postSearch = BuildQueryJson(searchData); QueryJson = postSearch; var resultCode = Restful.GetRestResponse("Post", endPoint, Username, Password, out content, postSearch); if (resultCode == HttpStatusCode.OK) { var searchResult = JsonConvert.DeserializeObject <Counts>(content.ToString()); nextToken = searchResult.next; if (searchResult.results != null) { return(searchResult); } return(null); } else { ErrorMessage = "Invalid HTTP Response code." + resultCode + " " + content; ErrorState = true; return(null); } } catch (Exception ex) { ErrorState = true; ErrorMessage = ex.Message; return(null); } }
public bool DeleteRules(List <Rule> rules, bool isPowerTrack20 = false) { try { var deleteJson = rules.ToJson(); string responseString; HttpStatusCode responseCode; if (isPowerTrack20) { responseCode = Restful.GetRestResponse( "POST", Url + @"?_method=delete", Username, Password, out responseString, deleteJson); } else { responseCode = Restful.GetRestResponse( "DELETE", Url, Username, Password, out responseString, deleteJson); } if (responseCode == HttpStatusCode.OK) { return(true); } else { ErrorMessage = "Delete, returned an HTTP Status Code " + responseCode.ToString(); return(false); } } catch (WebException we) { Debug.WriteLine("Web Exception:" + we.Message); ErrorMessage = we.Message; ErrorState = true; return(false); } catch (Exception ex) { ErrorState = true; ErrorMessage = ex.Message; return(false); } }
public static UsageResults GetUsage(string AccountName, string Username, string Password, string Bucket = "month") { if (AccountName == null || Bucket == null) { throw new ArgumentNullException(null, "Required parameter missing"); } // https://account-api.gnip.com/accounts/[your_account_name]/usage.json var endPoint = @"https://account-api.gnip.com/accounts/" + AccountName + "/usage.json"; try { string content = ""; var fullEndPoint = endPoint + "?bucket=" + Bucket; Debug.WriteLine("fullEndPoint = |" + fullEndPoint + "|"); var resultCode = Restful.GetRestResponse("Get", fullEndPoint, Username, Password, out content); if (resultCode == HttpStatusCode.OK) { var searchResult = JsonConvert.DeserializeObject <UsageResults>(content.ToString()); if (searchResult.account != null) { return(searchResult); } // else (no data to return, but not an error) return(null); } else { var result = new UsageResults() { ErrorMessage = "Invalid HTTP Response code." + resultCode + " " + content, hasError = true }; return(result); } } catch (Exception ex) { var result = new UsageResults() { ErrorMessage = ex.Message, hasError = true }; return(result); } }
public List <Activity> GetResults(string Query, DateTime?fromDateTime = null, DateTime?toDateTime = null, int maxResults = 500) { var endPoint = @"https://search.gnip.com/accounts/" + AccountName + "/search/" + StreamName + ".json"; try { ErrorState = false; string content = ""; var searchData = new SearchPost(); searchData.query = Query; searchData.maxResults = maxResults; searchData.publisher = "twitter"; searchData.fromDate = fromDateTime.GetValueOrDefault(); searchData.toDate = toDateTime.GetValueOrDefault(); if (hasMore) { searchData.next = nextToken; } searchData.bucket = null; var postSearch = BuildQueryJson(searchData); QueryJson = postSearch; var resultCode = Restful.GetRestResponse("Post", endPoint, Username, Password, out content, postSearch); if (resultCode == HttpStatusCode.OK) { var searchResult = JsonConvert.DeserializeObject <Results>(content.ToString()); nextToken = searchResult.next; return(searchResult.results != null?searchResult.results.ToList() : null); } else { ErrorMessage = "Invalid HTTP Response code." + resultCode + " " + content; ErrorState = true; return(null); } } catch (Exception ex) { ErrorState = true; ErrorMessage = ex.Message; return(null); } }
public bool AddRules(List <Rule> rules) { try { // custom serializer to prevent the escaping of quotes on propertynames var sb = new StringBuilder(); var sw = new StringWriter(sb); using (JsonWriter jw = new JsonTextWriter(sw)) { jw.WriteStartObject(); jw.WritePropertyName("rules", false); jw.WriteStartArray(); foreach (var rule in rules) { jw.WriteStartObject(); jw.WritePropertyName("value", false); jw.WriteValue(rule.value); jw.WritePropertyName("tag", false); jw.WriteValue(rule.tag); jw.WriteEndObject(); } jw.WriteEndArray(); jw.WriteEndObject(); } var addJson = sb.ToString(); string responseString; var responseCode = Restful.GetRestResponse( "POST", Url, Username, Password, out responseString, addJson); if (responseCode == HttpStatusCode.Created) { return(true); } else { ErrorMessage = "AddRules, returned an HTTP Status Code " + responseCode.ToString(); return(false); } } catch (WebException we) { Debug.WriteLine("Web Exception:" + we.Message); ErrorMessage = we.Message; ErrorState = true; return(false); } catch (Exception ex) { ErrorState = true; ErrorMessage = ex.Message; return(false); } }