# hs.spotify

Controls for Spotify music player


# API Overview

Constants - Useful values which cannot be changed

  • state_paused
  • state_playing
  • state_stopped

Functions - API calls offered directly by the extension

  • displayCurrentTrack
  • ff
  • getCurrentAlbum
  • getCurrentArtist
  • getCurrentTrack
  • getCurrentTrackId
  • getDuration
  • getPlaybackState
  • getPosition
  • getVolume
  • isPlaying
  • isRunning
  • next
  • pause
  • play
  • playpause
  • playTrack
  • previous
  • rw
  • setPosition
  • setVolume
  • volumeDown
  • volumeUp

# API Documentation

# Constants

# state_paused

Signature hs.spotify.state_paused
Type Constant
Description Returned by hs.spotify.getPlaybackState() to indicates Spotify is paused
Notes None
Source extensions/spotify/spotify.lua line 11

# state_playing

Signature hs.spotify.state_playing
Type Constant
Description Returned by hs.spotify.getPlaybackState() to indicates Spotify is playing
Notes None
Source extensions/spotify/spotify.lua line 16

# state_stopped

Signature hs.spotify.state_stopped
Type Constant
Description Returned by hs.spotify.getPlaybackState() to indicates Spotify is stopped
Notes None
Source extensions/spotify/spotify.lua line 21

# Functions

# displayCurrentTrack

Signature hs.spotify.displayCurrentTrack()
Type Function
Description Displays information for current track on screen
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 115

# ff

Signature hs.spotify.ff()
Type Function
Description Skips the playback position forwards by 5 seconds
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 323

# getCurrentAlbum

Signature hs.spotify.getCurrentAlbum()
Type Function
Description Gets the name of the album of the current track
Parameters
  • None
Returns
  • A string containing the Album of the current track, or nil if an error occurred
Notes None
Examples None
Source extensions/spotify/spotify.lua line 144

# getCurrentArtist

Signature hs.spotify.getCurrentArtist()
Type Function
Description Gets the name of the artist of the current track
Parameters
  • None
Returns
  • A string containing the Artist of the current track, or nil if an error occurred
Notes None
Examples None
Source extensions/spotify/spotify.lua line 131

# getCurrentTrack

Signature hs.spotify.getCurrentTrack()
Type Function
Description Gets the name of the current track
Parameters
  • None
Returns
  • A string containing the name of the current track, or nil if an error occurred
Notes None
Examples None
Source extensions/spotify/spotify.lua line 157

# getCurrentTrackId

Signature hs.spotify.getCurrentTrackId()
Type Function
Description Gets the id of the current track
Parameters
  • None
Returns
  • A string containing the id of the current track, or nil if an error occurred
Notes None
Examples None
Source extensions/spotify/spotify.lua line 169

# getDuration

Signature hs.spotify.getDuration()
Type Function
Description Gets the duration (in seconds) of the current song
Parameters
  • None
Returns
  • The number of seconds long the current song is, 0 if no song is playing
Notes None
Examples None
Source extensions/spotify/spotify.lua line 309

# getPlaybackState

Signature hs.spotify.getPlaybackState()
Type Function
Description Gets the current playback state of Spotify
Parameters
  • None
Returns
  • A string containing one of the following constants:
  • - hs.spotify.state_stopped
  • - hs.spotify.state_paused
  • - hs.spotify.state_playing
Notes None
Examples None
Source extensions/spotify/spotify.lua line 182

# getPosition

Signature hs.spotify.getPosition()
Type Function
Description Gets the playback position (in seconds) in the current song
Parameters
  • None
Returns
  • A number indicating the current position in the song
Notes None
Examples None
Source extensions/spotify/spotify.lua line 283

# getVolume

Signature hs.spotify.getVolume()
Type Function
Description Gets the Spotify volume setting
Parameters
  • None
Returns
  • A number containing the volume Spotify is set to between 1 and 100
Notes None
Examples None
Source extensions/spotify/spotify.lua line 235

# isPlaying

Signature hs.spotify.isPlaying()
Type Function
Description Returns whether Spotify is currently playing
Parameters
  • None
Returns
  • A boolean value indicating whether Spotify is currently playing a track, or nil if an error occurred (unknown player state). Also returns false if the application is not running
Notes None
Examples None
Source extensions/spotify/spotify.lua line 211

# isRunning

Signature hs.spotify.isRunning()
Type Function
Description Returns whether Spotify is currently open. Most other functions in hs.spotify will automatically start the application, so this function can be used to guard against that.
Parameters
  • None
Returns
  • A boolean value indicating whether the Spotify application is running.
Notes None
Examples None
Source extensions/spotify/spotify.lua line 198

# next

Signature hs.spotify.next()
Type Function
Description Skips to the next Spotify track
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 76

# pause

Signature hs.spotify.pause()
Type Function
Description Pauses the current Spotify track
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 63

# play

Signature hs.spotify.play()
Type Function
Description Plays the current Spotify track
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 50

# playpause

Signature hs.spotify.playpause()
Type Function
Description Toggles play/pause of current Spotify track
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 37

# playTrack

Signature hs.spotify.playTrack(id)
Type Function
Description Plays the Spotify track with the given id
Parameters
  • id - The Spotify id of the track to be played
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 102

# previous

Signature hs.spotify.previous()
Type Function
Description Skips to previous Spotify track
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 89

# rw

Signature hs.spotify.rw()
Type Function
Description Skips the playback position backwards by 5 seconds
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 334

# setPosition

Signature hs.spotify.setPosition(pos)
Type Function
Description Sets the playback position in the current song
Parameters
  • pos - A number containing the position (in seconds) to jump to in the current song
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 294

# setVolume

Signature hs.spotify.setVolume(vol)
Type Function
Description Sets the Spotify volume setting
Parameters
  • vol - A number between 1 and 100
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 246

# volumeDown

Signature hs.spotify.volumeDown()
Type Function
Description Reduces the volume by 5
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 272

# volumeUp

Signature hs.spotify.volumeUp()
Type Function
Description Increases the volume by 5
Parameters
  • None
Returns
  • None
Notes None
Examples None
Source extensions/spotify/spotify.lua line 261