1.0.1 • Published 9 years ago
snoostream v1.0.1
SnooStream
An event based wrapper for getting new comments and submissions from Snoowrap.
Features
- Can filter new posts via regex.
- Remove post duplicates returned from Reddit.
- Accounts for drift between system time and Reddit server time.
Installation
npm install snoostreamUsage
How to initialize
const SnooStream = require('snoostream');
let snooStream = SnooStream({
... // This is all Snoowrap configuration
});OR
const SnooStream = require('snoostream');
const Snoowrap = require('snoowrap');
let snooWrap = new Snoowrap({
... // This is all Snoowrap configuration
});
let snooStream = SnooStream(snooWrap);SnooStream(options[, drift])
SnooStream(Snoowrap[, drift])
optionsSnoowrap configurationSnoowrapA Snoowrap objectdriftthe number of seconds system time is ahead of Reddit server time. Usually not needed.
Create a Comment Stream
let commentStream = snooStream.commentStream('all');
// Or if you want to match with a specific regex
let commentStream = snooStream.commentStream('all', { regex: /abc/ });
commentStream.on('post', (post, match) => {
... // post is returned directly from Snoowrap
... // match contains the groups matched by regex
});snooStream.commentStream(subreddit[, options])
subredditthe subreddit to poll for new comments. Default is 'all'.options.regexWill only emit posts that match the provided regexoptions.rateRate at which to poll Reddit. Default is 1000 ms.options.*Any additional options that would apply toSnoowrap.getNewComments()such aslimitwhich limits the amount of comments fetched every call.
Create a Submission Stream
let submissionStream = snooStream.submissionStream('all');
// Or if you want to match with a specific regex
let submissionStream = snooStream.submissionStream('all', { regex: /abc/ });
submissionStream.on('post', (post, match) => {
... // post is returned directly from Snoowrap
... // match contains the groups matched by regex
});snooStream.submissionStream(subreddit[, options])
subredditthe subreddit to poll for new submissions. Default is 'all'.options.regexWill only emit posts that match the provided regexoptions.rateRate at which to poll Reddit. Default is 1000 ms.options.*Any additional options that would apply toSnoowrap.getNew()such aslimitwhich limits the amount of comments fetched every call.