| var TwitterPackage = require('twitter'); | |
| // twitter's secret keys are hidden with .gitignore | |
| var apikeys = require('./apikeys.js'); | |
| // getTwitterSecret() returns apikeys array | |
| var Twitter = new TwitterPackage(apikeys.getTwitterSecret()); | |
| console.log("SUCCESS: Jennifer initiated and ready to make query with Twitter API.") | |
| console.log("INFO: Tracking tweets with @sntshk, and greeting them with custom message.") | |
| // self explanatory code below | |
| Twitter.stream('statuses/filter', {track: '@sntshk'}, function(stream) { | |
| stream.on('data', function(tweet) { | |
| // tweet object created above have many methods, | |
| // see: https://dev.twitter.com/overview/api/tweets | |
| // even we can go up to user: https://dev.twitter.com/overview/api/users | |
| var txt = tweet.text; | |
| var username = tweet.user.screen_name; | |
| var real_name = tweet.user.name; | |
| var tweet_id = tweet.id_str; | |
| console.log('===========STREAM STARTS==========='); | |
| // everytime someone mentions @sntshk, log to console | |
| console.log('-----------------------------------\n@' + username + " says: " + txt); | |
| console.log("TID: " + tweet_id + ". TSTAMP: " + tweet.created_at + '\n-----------------------------------'); | |
| // And also reply to them. | |
| // TODO: Can't write @sntshk in tweet. It goes in loop. | |
| var reply = "Hi @" + username +", you've mentioned Santosh. I'm his personal assistant Jennifer. I am not very useful at the moment."; | |
| // parameters that twitter accepts, along with text | |
| var params = { | |
| status : reply, | |
| in_reply_to_status_id_str : tweet_id, | |
| in_reply_to_screen_name : username, | |
| lat: 28.6289143, | |
| long: 77.2065322, | |
| }; | |
| // post the composed tweet.. | |
| Twitter.post('statuses/update', params, function(err, data, response) { | |
| if (err) { | |
| console.log("Error is: " + err); | |
| } else { | |
| console.log('Tweeted: ' + params.status); | |
| } | |
| }) | |
| }); | |
| stream.on('error', function(error) { | |
| console.log(error); | |
| }); | |
| }); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment