node-twitchbot
Note: 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'
})
Bot.connect()
.then(() => {
Bot.listen((err, chatter) => {
if(err) {
console.log(err)
} else {
console.log(chatter.msg)
}
})
Bot.listenFor('KKona', (err, chatter) => {
console.log(chatter)
})
Bot.msg('this is the message text PogChamp')
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'
})
Bot.listenFor('Kappa', (err, chatter) => {
if(err) {
console.log(err)
} else {
console.log(chatter)
}
})
Bot.listenFor('*', (err, chatter) {
})
Bot.listen('PogChamp', (err, chatter) => {
console.log(chatter)
})
Bot.resub((err, chatter, sub) => {
console.log(sub)
})
Bot.msg('Hello chat!')
Bot.whisper('kritzware', 'This is a private message Kappa')
const commands = {
help : 'For help using this bot, contact kritzware',
twitter : 'Follow this channel at https://twitter.com/test123',
random : (chatter) => {
return Math.floor((Math.random() * -1) + 1)
},
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')
})