Skip to content

A library for crafting node-based twitter bots by setting various configuration values in a centralized file.

License

Notifications You must be signed in to change notification settings

BooDoo/botomatic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bot-o-matic (for the People)

node application to maintain menagerie of twitter bots.
Includes basic status/management dashboard at (host)/status/

Currently used for Twitter bots:
@GCatPix
@CWDogPix
@ct_Races
@xyisx_bot
@LatourAndOrder
@iLikeLikeiLike

INSTALLATION

git clone https://github.com/BooDoo/botomatic.git npm install

SETUP

At the very least, you'll need Twitter OAuth keys.
If you're working with words, you'll also want an API key for Wordnik.
Any searching for photos will require Flickr credentials.

See config.js for sample credential/bot configurations.

Current existing bot 'types' are:

  • lyrpictweet (@GCatPix, @CWDogPix)
    Fetch random lyrics (rap, country, or @lyricryptic) and a random photo (filtered by tag(s)), then tweet the result.

  • tweetmash (based on @LatourSwag)
    Search twitter using two separate criteria, combine one tweet from each around a "pivot" word, tweet the result.

  • latourandorder (@LatourAndOrder, variant of tweetmash) SPECIALIZED
    Take a sentence from a TV series' IMDB episode summaries, pair it with a short tweet, tweet the result.

  • syllablecount (@ct_races)
    Find a tweet with the specified number of syllables, tweet its content with optional prefix/suffix content around it.

  • reminder (based on @AvoidComments)
    Given a pool of messages, periodically tweet them (in sequence or at random).

  • youtube (based on @MLGPR0GAMERxx)
    Search YouTube videos for a phrase, tweet the video's title with a link to the video.

  • snowclone (@xyisx_bot, based on @metaphorminute, like a madlib)
    Retrieve random words meeting certain criteria and use them to populate a template, tweet the result.

  • howilikeit (@iLikeLikeiLike, variant of snowclone) SPECIALIZED
    Get a random noun that has 3 or more plausible descriptors, fill out a template, tweet the result.

TODO:

A lot, including:

  • Better error/exception handling
  • Generalizing from "bot types" to Source(s)->Filter(s)->Composition model
  • Simplifying bot config creation
  • More robust access/rights management for web dashboard
  • (De)activating bots individually via dashboard
  • Modification/injection of functions via dashboard?
  • Tests
  • Documentation

DATA SOURCES:

DEPENDENCIES / LIBRARIES:

Back-end:

  • twit for interfacing with Twitter
  • lodash for general utility functions
  • when for Defer/Promise functionality
  • request for HTTP requests/REST calls

Web dashboard:

NOTE ON NODE-CMUDICT:

Currently does not install to Win32/64 platforms via npm.
Resolved on github repo, awaiting push to npm package.

About

A library for crafting node-based twitter bots by setting various configuration values in a centralized file.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published