Ejemplo n.º 1
0
        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));
            }
        }
Ejemplo n.º 2
0
 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;
 }
Ejemplo n.º 3
0
        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;
        }