Jarvis-Teamspeak-Bot

Jarvis is an extensible Teamspeak 3 bot written in Javascript, which can be extended by building your own plugins or simply forking and hacking it to your own liking. The bot has been written using standard ES6 Javascript.

Jarvis-Teamspeak-Bot
Version: 0.9.1
Author: Jeremy Paton jeremy@jeremypaton.com
Static Members
messageHandler

Jarvis

This is a thin wrapper around ts3-nodejs-library and slackbots, which handles conencting, closing and dispatching appropriately. Represents a Jarvis Bot Instance

new Jarvis(config: object, cid: number)

Type: class

Version: 1.1
Parameters
config (object) Config object passed from a configuration file
cid (number) The Bot's Default Channel passed as a ChannelID number
Properties
whoami (object) : Contains usefull information about the Bot's connection
enabled (boolean) : If the bot is enabled (not in use currently)
teamspeakReady (boolean) : If Teamspeak-intergration is ready to be used
slackReady (boolean) : If slack-intergration is ready to be used
cid (number) : The Bot's Default Channel
name (String) : The Bot's Name
config (object) : Config object
onMessage (function) : Callback function
Static Members
messageHandler(callback)
closeTS()
closeSlack()
connectToTS()
connectToSlack()
logToSlack(channelID, message)

slackBot

This is a thin wrapper around slackbots, which extends the functionality with updated Slack API end-points

new slackBot(params: any)

Extends Bot

Version: 1.1
Parameters
params (any)
Properties
params (object) : Contains config settings for your slack bot API
Instance Members
getConversations(params)

fs

A collection of utility functions which load all .js files exported functions, as well as managing initialisation (init) and active-plugin-worker scripts (run), finally provides a route to core plugin functions such as (onMessage).

fs

Plugin-cid

Plugin used to return a message containing the 'cid' of the channel the invoker is in

Plugin-cid
Example
!cid
Static Members
onMessage(msg, jarvis)

Plugin-createClan

Plugin used to create a group of channels for a clan and sets the permissions and properties of each channel

Plugin-createClan
Example
!createClan
Static Members
config
config
creatingUser(client)
onMessage(msg, jarvis)
constructChannels(jarvis)
setChannelPermissions(jarvis)
constructGroup(jarvis, client, tag)
getGroupSortID(tag)
sanitation(message)
terminateSession(client, jarvis)
terminateSession(client, jarvis)
run(helpers)
run(helpers)
targetUser(invoker, target)

Plugin-help

Plugin used to return a message containing the 'cid' of the channel the invoker is in

Plugin-help
Example
!help
Static Members
onMessage(msg, jarvis)

Plugin-joinMe

Plugin used to ask a target user if they want to join the invoker user's channel

Plugin-joinMe
Example
!joinMe
Static Members
onMessage(msg, jarvis)
getTargetsArray(targets, jarvis, invoker)
selfMoveCheck(targets, invoker_name)

Plugin-purgeVerified

Plugin used to remove any user in a Server Group which is not also in a Verified Database File

Plugin-purgeVerified
Example
!purgeVerified
Static Members
config
onMessage(msg, jarvis)
purgeVerified(invoker, jarvis)