-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtwit.js
43 lines (37 loc) · 1.08 KB
/
twit.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
var Twit = require('twit')
var T = new Twit({
consumer_key: 'Insert key for Twitter API here'
, consumer_secret: 'Insert secret here'
, access_token: 'Insert access token'
, access_token_secret: 'Insert access token secret'
})
var stream = T.stream('statuses/filter', { track: 'GameOfThrones' })
var say = require('say'),
sys = require('sys');
var speak = require("node-speak");
var tweetArray=[];
var googleIsReading = false;
//Stream tweets using Twit
var twitterStream= stream.on('tweet', function (tweet) {
var tweet = tweet.text;
console.log(tweet)
//Put tweets in an array as they come in
tweetArray.push(tweet);
if (!googleIsReading) {
sayTweet();
}
});
function sayTweet() {
googleIsReading = true;
//Take out the first tweet of the array
var tweetToRead = tweetArray.shift();
//Use a callback so that it doesn't read multiple tweets at the same time
say.speak('Ralph', tweetToRead, function () {
if (tweetArray.length > 0) {
sayTweet();
}
else {
googleIsReading = false;
}
});
}