node package manager

spotify-node-applescript

Control Spotify on Mac OSX with NodeJS and AppleScript.

spotify-node-applescript

Control Spotify on Mac OSX with NodeJS and AppleScript.

$ npm install spotify-node-applescript
$ npm test

Play a track with Spotify URI uri.

var spotify = require('spotify-node-applescript');
 
spotify.playTrack('spotify:track:3AhXZa8sUQht0UEdBJgpGc', function(){
    // track is playing 
});

Play a track in context of for example an album.

var spotify = require('spotify-node-applescript');
 
spotify.playTrackInContext('spotify:track:0R8P9KfGJCDULmlEoBagcO', 'spotify:album:6ZG5lRT77aJ3btmArcykra', function(){
    // Track is playing in context of an album 
});

Get the current track. callback is called with the current track as second argument.

var spotify = require('spotify-node-applescript');
 
spotify.getTrack(function(err, track){
 
    /*
    track = {
        artist: 'Bob Dylan',
        album: 'Highway 61 Revisited',
        disc_number: 1,
        duration: 370,
        played count: 0,
        track_number: 1,
        starred: false,
        popularity: 71,
        id: 'spotify:track:3AhXZa8sUQht0UEdBJgpGc',
        name: 'Like A Rolling Stone',
        album_artist: 'Bob Dylan',
        spotify_url: 'spotify:track:3AhXZa8sUQht0UEdBJgpGc' }
    }
    */
 
});

Get player state.

var spotify = require('spotify-node-applescript');
 
spotify.getState(function(err, state){
    /*
    state = {
        volume: 99,
        position: 232,
        state: 'playing'
    }
    */
});

Jump to a specific second of the current song.

var spotify = require('spotify-node-applescript');
 
spotify.jumpTo(15, function() {
    console.log('Jumped 15th second of the song');
});

Resume playing current track.

Pause playing track.

Toggle play.

Play next track.

Play previous track.

Turn volume up.

Turn volume down.

Sets the volume.

var spotify = require('spotify-node-applescript');
 
spotify.setVolume(42, function() {
    spotify.getState(function(err, state) {
        console.log(state.volume);
    });
});

Reduces audio to 0, saving the previous volume.

Returns audio to original volume.

Check if Spotify is running.

var spotify = require('spotify-node-applescript');
 
spotify.isRunning(function(err, isRunning){
    console.log(isRunning); // true 
});

Is repeating on or off?

var spotify = require('spotify-node-applescript');
 
spotify.isRepeating(function(err, shuffling){
    console.log(shuffling); // true || false 
});

Is shuffling on or off?

var spotify = require('spotify-node-applescript');
 
spotify.isShuffling(function(err, shuffling){
    console.log(shuffling); // true || false 
});

Sets repeating on or off

Sets shuffling on or off

Toggles repeating

Toggles shuffling

MIT