ckollars / maestro

:headphones: BREAK OUT THE JAMS

Home Page:http://maestromakesyou.dance

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Maestro

Build Status Code Climate

A Slack-Powered music bot for Spotify.

Install

πŸ™ˆ You Must Use Node 0.10.x πŸ™ˆ
πŸ™ˆ Only Works on OSX πŸ™ˆ

Configuring Spotify

  1. Create a Spotify Premium Account.
  2. brew install libspotify install libspotify
  3. Download a Spotify App Developers Key.

Configuring the Slack integration

  1. Create a Slack Outgoing Webhook.
  2. In URL(s) put <address_to_your_bot>/handle we use ngrok for this
  3. In Trigger Word(s) put play, pause, stop, skip, shuffle, vol, list, status, help, mute, unmute, banned, voteban, queue

Starting the Bot

  1. Download the latest release.
  2. Unzip and cd into the maestro directory
  3. cp config.example.json config.json
  4. npm install
  5. Put your Spotify login username and password into the config.json file.
  6. Put your spotify_appkey.key file in Maestro's root directory.
  7. Copy the token from the webhook into the config.json file.
  8. npm start.
  9. Plug your OSX machine into some speakers.
  10. Jam 🎧

Running Test

πŸ™ˆ You Must Use Node 0.10.x πŸ™ˆ

  1. git clone https://github.com/smashingboxes/maestro.git.
  2. cd maestro
  3. Follow the install steps to create a Spotify token and configure the app.
  4. npm install
  5. npm test

Commands

Commands

play [Spotify URI] - Starts/resumes playback
play [Spotify URI] - Immediately switches to the linked track.
pause - Pauses playback at the current time.
stop - Stops playback and resets to the beginning of the current track.
skip - Skips (or shuffles) to the next track in the playlist.
shuffle - Toggles shuffle on or off.
vol [up|down] Turns the volume either up/down one notch.
vol [0..10] Adjust volume directory to a step between 0 and 10.
mute - Same as vol 0.
unmute - Same as vol 0.
status - Shows the currently playing song, playlist and whether you're shuffling or not.
voteban - Cast a vote to have the current track banned
banned - See tracks that are currently banned
help - Shows a list of commands with a short explanation.

Queue

queue [Spotify URI] - Add a song to the queue
queue - See the tracks currently in the queue

Playlists

list add <name> <Spotify URI> - Adds a list that can later be accessed under .
list remove <name> - Removes the specified list.
list rename <old name> <new name> - Renames the specified list.
list <name> - Selects the specified list and starts playback.

(inspired by Crispify)

About

:headphones: BREAK OUT THE JAMS

http://maestromakesyou.dance


Languages

Language:CoffeeScript 59.0%Language:Ruby 18.7%Language:HTML 10.1%Language:CSS 6.7%Language:JavaScript 5.5%