1.0.2 • Published 3 years ago

twtrbot v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

TwtrBot

Twtrbot is a simple Node module wrapper that allows developers to build a Twitter bot via the Twitter API in conjunction with the twit module. Using an object-oriented approach, TwtrBot makes calling functions more intuitive, resulting in cleaner and easier to understand code.

TwtrBot arose from a personal need to encapsulate popular actions such as posting a status, retweeting a status, and searching for statuses, into a set of methods for better efficiency and code maintainability.

Instillation

npm i twtrbot --save

Usage

Be sure to first create a new bot (aka application) over at https://developer.twitter.com/. This package can and should be used in conjunction to https://github.com/ttezel/twit.

Features

JSDoc highlighting with link to corresponding Twitter API reference: highlight

Example Snippet

const TwtrBot  = require('./TwtrBot');
const MyBot = new TwtrBot(CONSUMER_KEY CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_SECRET);

MyBot.postTweet("Hello world!");  // Post a Tweet

let params = {
  lat: 34.052235,
  long:  -​118.243683
};

MyBot.postTweet('Hello from Los Angeles!', params);

MyBot.searchTweets("oat milk latte").then(async (data) => {
  let tweets = data.statuses;
  for await (let tweet of tweets) {
    let tweet_id = tweet.id;
    MyBot.postRetweet(tweet_id);
  }
});

MyBot.twit.stream('statuses/filter', { track: 'oolong milk tea' });

Snippet Breakdown

Import the module:

const TwtrBot  = require('./TwtrBot');

Initialize your bot object:

const MyBot = new TwtrBot(CONSUMER_KEY CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_SECRET);

You can find find all your credentials over at https://developer.twitter.com/, under the Projects & Apps tab.

Posting your first Tweet (aka status):

MyBot.postTweet("Hello world!");  // Post a Tweet

Posting a Tweet passing optional parameters:

let params = {
  lat: 34.052235,
  long:  -​118.243683
};

MyBot.postTweet('Hello from Los Angeles!', params);

Searching tweets based on a query and retweeting those tweets:

MyBot.searchTweets("oat milk latte").then(async (data) => {
  let tweets = data.statuses;
  for await (let tweet of tweets) {
    let tweet_id = tweet.id;
    MyBot.postRetweet(tweet_id);
  }
});

Accessing the twit object to perform uncovered functions in the module:

MyBot.twit.stream('statuses/filter', { track: 'oolong milk tea' })

Bots Created with TwtrBot

Contributing

Feel free to make any changes and submit a pull request!

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago