Skip to content

Allows the ability to add/remove/findTracks to a Spotify Playlist.

Notifications You must be signed in to change notification settings

LarsPede/hubot-spotify-playlist

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hubot-spotify-playlist

Allows the ability to add/remove/find tracks to a single collaborative Spotify Playlist.

See src/spotify-playlist.coffee for full documentation.

Installation

In hubot project repo, run:

npm install hubot-spotify-playlist --save

Then add hubot-spotify-playlist to your external-scripts.json:

[
  "hubot-spotify-playlist"
]

Pre-Setup

To get started, you need to create an app to use for the Spotify API. https://developer.spotify.com/my-applications Create an App, and enter in the details. Next you will want to make note of the client id and secret, which you will enter in the Hubot Setup step, then add a redirect url, which will also be entered in the Hubot Setup step. The redirect URL should be ideally something that works, so you can extract the code after the redirect.

Next you want to Authorize your app with a user. You'll want to generate an authorize link to navigate to. Replace client_id and redirect_uri which you should've gotten previously.

https://accounts.spotify.com/authorize/?client_id=<client_id>&response_type=code&redirect_uri=<redirect_uri>&scope=playlist-modify-public%20playlist-modify-private

Navigate to this link, login with your Spotify account, and when the redirect is complete, there should be a code parameter on the URL. Make note of this value which you will enter in the next step.

Hubot Setup

There are environment variables that need to be set. SPOTIFY_APP_CLIENT_ID and SPOTIFY_APP_CLIENT_SECRET are required in order for the findTrack function to work. This needs a spotify app setup. The SPOTIFY_USER_ID and SPOTIFY_PLAYLIST_ID are needed to hard code the playlist we are modifying. You should've gotten SPOTIFY_OAUTH_CODE and SPOTIFY_REDIRECT_URI from the pre-setup step. This will allow you to actually add/modify your playlists.

SPOTIFY_APP_CLIENT_ID
SPOTIFY_APP_CLIENT_SECRET
SPOTIFY_USER_ID
SPOTIFY_PLAYLIST_ID
SPOTIFY_OAUTH_CODE
SPOTIFY_REDIRECT_URI

User Usage

Displaying Playlist Link

hubot playlist link

The link to the playlist will be displayed in chat.

Finding tracks

hubot playlist find <query>

Make note of the track ID you want to add so you can add/remove it in the next step.

Adding/Removing Tracks

Using the track id gotten from the last steps, or just putting a query in add you can either add or remove tracks.

hubot playlist add <query>
hubot playlist addid <track_id>
hubot playlist remove <track_id>

Automatically Listening for Spotify Track Links

Control whether spotify links shared in chat are automatically added to the playlist

hubot playlist listen status
hubot playlist listen on
hubot playlist listen off

About

Allows the ability to add/remove/findTracks to a Spotify Playlist.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CoffeeScript 86.4%
  • JavaScript 8.6%
  • Shell 5.0%