spogo/docs/devices.md
Peter Steinberger 032a6ebed8
docs: rebuild docs site with proper navigation, dark mode, and full content
Replace the static one-page index.html with a Node-based docs site
generator. Sidebar nav, per-page TOC, dark mode toggle (system-pref
default, persisted), and a Spotify-green theme with animated equalizer
brand mark and ambient hero gradient.

Adds 11 hand-written doc pages (index, install, quickstart, auth,
playback, library, queue, devices, engines, output, agents,
troubleshooting, commands) alongside existing spec.md and RELEASING.md.

Pages workflow deploys dist/docs-site to GitHub Pages on push to main;
repo Pages source is now "GitHub Actions" instead of legacy /docs.
2026-05-05 09:41:06 +01:00

2.2 KiB

title description
Devices List Spotify Connect devices, switch active playback, target a specific device per command.

Devices

Every Spotify-capable thing you've signed in on — phone, desktop app, web player, smart speaker, console — is a Spotify Connect device. spogo can list them and route playback to whichever you want.

device list

spogo device list
spogo device list --plain
spogo device list --json

Prints every device Spotify Connect currently knows about, with the active one marked. Plain mode is one device per line: id, name, type, is_active, volume_percent.

device set

spogo device set "Kitchen"
spogo device set 0d1841b0976bae2a3a310dd74c0f3df354899bc8

Transfers playback to the named device (case-insensitive substring match) or device ID. If the current Connect state has no origin device, spogo falls back to the Web API transfer endpoint instead of failing.

--device flag (per-command)

Every playback / queue / status command accepts --device <name|id>:

spogo play spotify:track:... --device "Kitchen"
spogo volume 30 --device "MacBook Pro"
spogo status --device "Living Room"

This temporarily targets a specific device for one command without changing the active device.

Default device

Set a per-shell default with the env var:

export SPOGO_DEVICE="Kitchen"
spogo play spotify:track:...           # goes to Kitchen
spogo play spotify:track:... --device "Phone"   # overrides

Discovery tips

  • A device only shows up after it has been opened/played to recently. If your speaker isn't listed, open Spotify on it once.
  • The Spotify desktop app shows up as the device name from the OS (MacBook Pro, peter-laptop).
  • Web players appear as Web Player (Chrome) and similar; they don't persist after the tab closes.
  • Sonos / Google Cast / AirPlay endpoints appear when they're being used by a Spotify session — not always at idle.

Errors

  • device not found — open the device's Spotify session once, then re-run.
  • PREMIUM_REQUIRED — Connect transfer needs Premium.
  • Connect state has no origin device — happens when no device is currently active; spogo retries via the Web API transfer.