https://github.com/mikeal/tweetstream
node.js stream API for the twitter streaming HTTP API
https://github.com/mikeal/tweetstream
Last synced: 2 months ago
JSON representation
node.js stream API for the twitter streaming HTTP API
- Host: GitHub
- URL: https://github.com/mikeal/tweetstream
- Owner: mikeal
- Created: 2010-05-22T00:03:17.000Z (about 15 years ago)
- Default Branch: master
- Last Pushed: 2017-07-11T22:05:31.000Z (almost 8 years ago)
- Last Synced: 2024-10-18T09:13:46.429Z (8 months ago)
- Language: JavaScript
- Homepage:
- Size: 8.79 KB
- Stars: 47
- Watchers: 4
- Forks: 5
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# TweetStream -- Stream API for twitter data.
## Install
npm install tweetstream## Tweet Stream
A **tweet stream** has the following methods, members, events, and usage.
var tweetstream = require('tweetstream'),
sys = require('sys');var stream = tweetstream.createTweetStream({ username:"twitterusername"
, password:"mypassword"
});
stream.addListener("tweet", function (tweet) {sys.puts(sys.inspect(tweet))});### tweetstream.createTweetStream(options)
The first argument is an options object. The username and password options are required.
* `'username'` - A twitter username.
* `'password'` - The password for the provided twitter username.Stream type options. The default stream type is the `'chirp` stream unless filter options are passed.
* `'chirp'` - boolean. default is true.
* `'firehose'` - boolean. Full twitter firehose, requires an account with escalated privileges.
* `'links'` - boolean. All tweets that contain a URI in the text, requires an account with escalated privileges.
* `'retweet'` - boolean. All tweets that are retweets, requires an account with escalated privileges.Filter options. Using any of the following options will default to the filter stream.
* `'track'` - An array of keywords to track.
* `'follow'` - An array of userids to follow.
* `'locations'` - An array of locations to follow.### Event: 'tweet'
`function (tweet) { }`
The `'tweet'` event emits a decoded JSON object from the '`status`' event.
### Event: 'chirp'
`function (info) { }`
When using the chirp stream the first line sent to the stream contains info about the user which is decoded and sent as `'info'` to this event.
### Event: 'line'
`function (line) { }`
The `'line'` event emits a utf8 string which is a *usually* a single twitter status message. This message *should* be in JSON format but is not decoded, if you intend to decode it you should use the '`tweet`' event.
### Event: 'data'
`function (data) { }`
The `'data'` event emits a `Buffer` directly from the HTTP stream. It includes the newlines sent as heartbeats.