static void Main(string[] args)
        {
            var TWITTERAPPACCESSTOKEN = ConfigurationManager.AppSettings["TWITTERAPPACCESSTOKEN"];
            var TWITTERAPPACCESSTOKENSECRET = ConfigurationManager.AppSettings["TWITTERAPPACCESSTOKENSECRET"];
            var TWITTERAPPAPIKEY = ConfigurationManager.AppSettings["TWITTERAPPAPIKEY"];
            var TWITTERAPPAPISECRET = ConfigurationManager.AppSettings["TWITTERAPPAPISECRET"];
            var trackersKeywords = ConfigurationManager.AppSettings["TrackerKeywords"];
            var pusherAppId = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherAppKey = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherAppSecret = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherChannel = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherEvent = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherConfig = new PusherConfig
            {
                AppId = pusherAppId,
                AppKey = pusherAppKey,
                AppSecret = pusherAppSecret,
                Channel = pusherChannel,
                Event = pusherEvent
            };

            Auth.SetUserCredentials(TWITTERAPPAPIKEY, TWITTERAPPAPISECRET, TWITTERAPPACCESSTOKEN, TWITTERAPPACCESSTOKENSECRET);
            Auth.ApplicationCredentials = new TwitterCredentials(TWITTERAPPAPIKEY, TWITTERAPPAPISECRET, TWITTERAPPACCESSTOKEN, TWITTERAPPACCESSTOKENSECRET);
            Program p = new Program();
            p.Stream_FilteredStreamExample(trackersKeywords, pusherConfig);
        }
예제 #2
0
        static void Main(string[] args)
        {
            var TWITTERAPPACCESSTOKEN       = ConfigurationManager.AppSettings["TWITTERAPPACCESSTOKEN"];
            var TWITTERAPPACCESSTOKENSECRET = ConfigurationManager.AppSettings["TWITTERAPPACCESSTOKENSECRET"];
            var TWITTERAPPAPIKEY            = ConfigurationManager.AppSettings["TWITTERAPPAPIKEY"];
            var TWITTERAPPAPISECRET         = ConfigurationManager.AppSettings["TWITTERAPPAPISECRET"];
            var trackersKeywords            = ConfigurationManager.AppSettings["TrackerKeywords"];
            var pusherAppId     = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherAppKey    = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherAppSecret = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherChannel   = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherEvent     = ConfigurationManager.AppSettings["PusherAppId"];
            var pusherConfig    = new PusherConfig
            {
                AppId     = pusherAppId,
                AppKey    = pusherAppKey,
                AppSecret = pusherAppSecret,
                Channel   = pusherChannel,
                Event     = pusherEvent
            };

            Auth.SetUserCredentials(TWITTERAPPAPIKEY, TWITTERAPPAPISECRET, TWITTERAPPACCESSTOKEN, TWITTERAPPACCESSTOKENSECRET);
            Auth.ApplicationCredentials = new TwitterCredentials(TWITTERAPPAPIKEY, TWITTERAPPAPISECRET, TWITTERAPPACCESSTOKEN, TWITTERAPPACCESSTOKENSECRET);
            Program p = new Program();

            p.Stream_FilteredStreamExample(trackersKeywords, pusherConfig);
        }
예제 #3
0
        private void Stream_FilteredStreamExample(string trackersKeywords, PusherConfig pusherConfig)
        {
            var trackersKeywordsList = trackersKeywords.Split(COMMA, StringSplitOptions.RemoveEmptyEntries).ToList();

            for (; ;)
            {
                try
                {
                    var stream = Stream.CreateFilteredStream();
                    foreach (var trackersKeyword in trackersKeywordsList)
                    {
                        stream.AddTrack(trackersKeyword);
                    }
                    var tweetCount = 0;
                    var timer      = Stopwatch.StartNew();

                    // Generate credentials that we want to use
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.WriteLine("\tTweet to {0}", string.Join(",", trackersKeywordsList.ToArray()));

                    stream.MatchingTweetReceived += (sender, args) =>
                    {
                        tweetCount++;
                        var tweet = args.Tweet;

                        // Push to Dashboard.

                        if (timer.ElapsedMilliseconds > 1000)
                        {
                            Console.ForegroundColor = ConsoleColor.Green;
                            Console.WriteLine("\n{0}: {1} {2}", tweet.Id, tweet.Language.ToString(), tweet.Text);
                            Console.ForegroundColor = ConsoleColor.White;
                            if (tweet.Coordinates != null)
                            {
                                Console.WriteLine("\tLocation: {0}, {1}", tweet.Coordinates.Longitude, tweet.Coordinates.Latitude);
                            }
                            timer.Restart();
                            Console.WriteLine("\tTweets/sec: {0}", tweetCount);
                            tweetCount = 0;
                            Console.WriteLine("\tPushing to Dashboard...");
                            var pusher = new Pusher(pusherConfig.AppId, pusherConfig.AppKey, pusherConfig.AppSecret, new PusherOptions()
                            {
                                Encrypted = true
                            });
                            var result = pusher.Trigger(pusherConfig.Channel, pusherConfig.Event, tweet);
                        }
                    };

                    stream.StartStreamMatchingAllConditions();
                }
                catch (Exception ex)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Exception: {0}", ex.Message);
                }
            }
        }
        private void Stream_FilteredStreamExample(string trackersKeywords, PusherConfig pusherConfig)
        {
            var trackersKeywordsList = trackersKeywords.Split(COMMA, StringSplitOptions.RemoveEmptyEntries).ToList();
            for (; ; )
            {
                try
                {
                    var stream = Stream.CreateFilteredStream();
                    foreach (var trackersKeyword in trackersKeywordsList)
                        stream.AddTrack(trackersKeyword);
                    var tweetCount = 0;
                    var timer = Stopwatch.StartNew();

                    // Generate credentials that we want to use
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    Console.WriteLine("\tTweet to {0}", string.Join(",", trackersKeywordsList.ToArray()));

                    stream.MatchingTweetReceived += (sender, args) =>
                    {
                        tweetCount++;
                        var tweet = args.Tweet;

                        // Push to Dashboard.

                        if (timer.ElapsedMilliseconds > 1000)
                        {
                            Console.ForegroundColor = ConsoleColor.Green;
                            Console.WriteLine("\n{0}: {1} {2}", tweet.Id, tweet.Language.ToString(), tweet.Text);
                            Console.ForegroundColor = ConsoleColor.White;
                            if (tweet.Coordinates != null)
                                Console.WriteLine("\tLocation: {0}, {1}", tweet.Coordinates.Longitude, tweet.Coordinates.Latitude);
                            timer.Restart();
                            Console.WriteLine("\tTweets/sec: {0}", tweetCount);
                            tweetCount = 0;
                            Console.WriteLine("\tPushing to Dashboard...");
                            var pusher = new Pusher(pusherConfig.AppId, pusherConfig.AppKey, pusherConfig.AppSecret, new PusherOptions() { Encrypted = true });
                            var result = pusher.Trigger(pusherConfig.Channel, pusherConfig.Event, tweet);
                        }
                    };

                    stream.StartStreamMatchingAllConditions();
                }
                catch (Exception ex)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Exception: {0}", ex.Message);
                }
            }
        }