-
Notifications
You must be signed in to change notification settings - Fork 64
Features
This is the feature list of Sparkle Turntable Bot as of Version 1.0.4.
##Overview
The bot can:
- Respond to a set of commands in chat and through turntable's PM system
- Awesome songs based on various systems
- Log vote, chat, song, and room events in the console
- Report song stats in chat after each song
- Welcome users to the room via chat and PM
- Manage a list of banned users
- Enforce room rules regarding song limits and timeouts before a person can DJ again
- Log song statistics and chat entries in a MySQL database
- Receive and respond to commands via a HTTP RESTful API
- Manage a waitlist/queue for a room
###Song Awesoming The bot can awesome songs based on one of five modes. These modes can be set in the config.js file prior to running the bot.
- NONE: The bot will never awesome
- VOTE: The bot awesomes when a vote threshold is met (# of awesomes)
- CHAT: The bot awesomes when enough people say a bonus phrase
- DICE: The bot awesomes if the current DJ rolls a 4 or higher using /roll
- AUTO: The bot auto-awesomes (NOTE: Turntable.fm does not allow this and will likely ban your bot if they discover you using this mode)
###Room Enforcement The bot can enforce a variety of room rules, including:
- How many songs a DJ can play before they must step down
- How long a DJ must wait (songs or time) before stepping up again
- Whether those DJs can step up again if multiple DJ spots are open
- Whether those DJs can step up again if a spot is open for a certain amount of time
- A waitlist/queue, allowing only the first person on the waitlist to grab an open spot
###Database The bot uses a MySQL database to log and retrieve room statistics. The bot can log song data, user information, and the room chat. The database also stores the list of banned users. This repository also includes several SQL files to allow the bot to respond with quotes (cat facts, Scott Pilgrim quotes) and inform users of holidays.
###Commands
The bot can respond to a variety of Bot Commands. Developers can add their own commands by creating new Chat Command Handlers in the commands/ folder.
###HTTP Commands
The bot has a growing API that can be accessed using HTTP GET queries. Documentation of this API can be found at HTTP Commands. Developers can add their own commands by creating new HTTP API Command Handlers in the api/ folder.