-
-
Save skynet/53e5eff013db631ff484425873e33772 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const Twit = require('twit') | |
exports.main = (args) => { | |
let twitter_consumer_key = args.twitter_consumer_key | |
let twitter_consumer_secret = args.twitter_consumer_secret | |
let twitter_access_token = args.twitter_access_token | |
let twitter_access_token_secret = args.twitter_access_token_secret | |
// If the required tokens aren't received end all operations | |
if (!twitter_consumer_key || !twitter_consumer_secret || | |
!twitter_access_token || !twitter_access_token_secret) { | |
return Promise.reject('All parameters required') | |
} | |
let T = new Twit({ | |
consumer_key: twitter_consumer_key, | |
consumer_secret: twitter_consumer_secret, | |
access_token: twitter_access_token, | |
access_token_secret: twitter_access_token_secret, | |
timeout_ms: 60 * 1000 | |
}) | |
// Using promises we can string togetehr operations to search and then return the payload. | |
// Since the free teir of Watson Natural Language Understanding is 1,000/day requests, | |
// we limit the number of tweets to process to 40 an hour (40*25=960/day). | |
return T.get('search/tweets', { q: '$BTC', lang: 'en', result_type: 'recent', count: 40 }) | |
.then(res => ({ tweets: res.data.statuses })) | |
.catch(err => ({ error: `There was an error getting tweets: ${err}` })) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment