Skip to content

kritzware/node-twitchbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-twitchbot Build Status

NOTE: This package has been discontinued. It is highly recommend to use the new version at kritzware/twitch-bot

This package is not to be used for Twitch botting (inflating live viewer counts) and should only be used for chatbots. Attempting to 'bot' a Twitch channel can lead to your account being permanently banned.

Installation

Version 2.0.0^ (Recommended):

$ npm install node-twitchbot

Version 1 (Deprecated):

$ npm install node-twitchbot@1.2.2

V2 DOCS

Example

const TwitchBot = require('node-twitchbot') const Bot = new TwitchBot({ username : 'GLADOS', oauth : 'oauth:secret-oauth-pass', channel : 'Aperture' }) /* Connect bot to Twitch IRC */ Bot.connect() .then(() => { /* Listen for all messages in channel */ Bot.listen((err, chatter) => { if(err) { console.log(err) } else { console.log(chatter.msg) // 'Hello World!' } }) /* Listen for an exact messages match */ Bot.listenFor('KKona', (err, chatter) => { console.log(chatter) }) /* Send a message in the channel */ Bot.msg('this is the message text PogChamp') /* Listen for raw IRC events */ Bot.raw((err, event) => { console.log(event) }) }) .catch(err => { console.log('Connection error!') console.log(err) })

Chatter Object

Most callbacks return a chatter object which contains the following attributes:

{ user: 'kritzware', msg: 'Hello world! Kappa', channel: 'kritzware', twitch_id: '44667418', level: 'mod', sub: 0, turbo: 0 }

V1 DOCS

Example

const Bot = require('node-twitchbot') Bot.run({ username: 'bot_username', oauth: 'oauth:twitch_oauth_key', channel: 'channel' }) /* Exact message match */ Bot.listenFor('Kappa', (err, chatter) => { if(err) { console.log(err) } else { console.log(chatter) } }) /* Return all user message in channel */ Bot.listenFor('*', (err, chatter) { // Returns all viewer messages in channel }) /* String is included in message */ Bot.listen('PogChamp', (err, chatter) => { console.log(chatter) }) /* Sub/resub event in chat */ Bot.resub((err, chatter, sub) => { console.log(sub) }) /* Say messages in chat */ Bot.msg('Hello chat!') /* Private message user */ Bot.whisper('kritzware', 'This is a private message Kappa') /* Setting commands instead of checking via string match */ const commands = { help : 'For help using this bot, contact kritzware', twitter : 'Follow this channel at https://twitter.com/test123', /* You can also use functions to generate a command response */ random : (chatter) => { return Math.floor((Math.random() * -1) + 1) }, /* Command functions can make use of the chatter object of the user who executed the command */ goodnight : (chatter) => { return 'Goodnight ' + chatter.user + '! FeelsGoodMan' } } Bot.commands('!', commands, (err, chatter, command) => { if(err) { console.log(err) } else { console.log(command) console.log(chatter) } })

Output for example '!goodnight' command above

Example of a command

Bot.listenFor('!command', (err, chatter) => { Bot.msg('This is the command response') })

About

Package for easily creating Twitch Bots

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors