private void Connect(string consumerKey, string consumerSecret, string accessToken, string accessTokenSecret) { // In v1.1, all API calls require authentication var service = new TwitterService(consumerKey, consumerSecret); service.AuthenticateWith(accessToken, accessTokenSecret); Log("Connected"); TwitterRateLimitStatusSummary rate = service.GetRateLimitStatus(new GetRateLimitStatusOptions()); Log("Limimte rate: " + rate.RawSource); var tweets = service.ListTweetsOnHomeTimeline(new ListTweetsOnHomeTimelineOptions()); foreach (var tweet in tweets) { Console.WriteLine("{0} says '{1}'", tweet.User.ScreenName, tweet.Text); } TwitterCursorList <TwitterUser> friends = service.ListFollowers(new ListFollowersOptions()); Log("Friends: " + friends.Count); foreach (var friend in friends) { Log(String.Format("Friend: {0}", friend.Name)); } }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, Newtonsoft.Json.JsonSerializer serializer) { var result = new TwitterRateLimitStatusSummary(); reader.Read(); reader.Read(); reader.Read(); result.AccessToken = reader.ReadAsString(); // access_token return result; }
private List <long> GetTwitterFollowers() { var service = new TwitterService(_consumerKey, _consumerSecret); service.AuthenticateWith(_accessToken, _accessTokenSecret); //Set Rate Options GetRateLimitStatusOptions rateOptions = new GetRateLimitStatusOptions(); List <string> checkResources = new List <string>(); checkResources.Add("followers/ids"); rateOptions.Resources = checkResources; //GetRateLimitStatus TwitterRateLimitStatusSummary summary = service.GetRateLimitStatus(rateOptions); List <long> followers = new List <long>(); long cursor = -1; bool loop = true; do { //Base.CheckApiLimit() ListFollowerIdsOfOptions followersOptions = new ListFollowerIdsOfOptions(); followersOptions.ScreenName = _username; followersOptions.Cursor = cursor; followersOptions.Count = 5000; TwitterCursorList <long> batchFollowers = service.ListFollowerIdsOf(followersOptions); Debug.WriteLine("Reset in " + "" + " seconds."); if (batchFollowers.Count == 0) { return(null); } foreach (long l in batchFollowers) { followers.Add(l); } cursor = batchFollowers.NextCursor ?? 0; if (cursor == 0) { loop = false; } } while (loop); return(followers); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, Newtonsoft.Json.JsonSerializer serializer) { var result = new TwitterRateLimitStatusSummary(); var rootObject = JObject.Load(reader); result.RawSource = rootObject.ToString(); result.AccessToken = GetAccessToken(rootObject); result.Resources = GetResources(rootObject); return result; }