Squeezebox integration for Amazon Alexa
Python Shell
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

squeeze-alexa

Build Status Coverage Status Join the chat at https://gitter.im/squeeze-alexa/Lobby 🇬🇧 🇺🇸 🇩🇪 🇫🇷

squeeze-alexa is a codebase for creating your own Amazon Alexa Skill to communicate with Logitech Media Server ("squeezebox") using a NAS or home server. See the original announcement blog post, and the follow-up with videos.

Aims & Features

  • Intuitive voice control over common music scenarios
  • Low latency (given that it's a cloud service), i.e. fast at reacting to your commands.
  • Decent security, remaining under your own control
  • Extensive support for choosing songs by (multiple) genres, and playlists
  • Up-to-date with (some) changes and new features from Alexa and Amazon.
  • Helpful, conversational responses / interaction in several languages.
  • 🆕 Support a variety of networks including restrictive firewalls (or 3G / 4G broadband with CGNAT)

Things it is not

  • Full coverage of all LMS features, plugins or use cases - but it aims to be good at what it does.
  • A public / multi-user skill. This means you will need Alexa and AWS developer accounts.
  • A native LMS (Squeezeserver) plugin. So whilst this would be cool, at least there's no need to touch your LMS.
  • Easy to set up 😱 (it's getting easier though with more setup automation)
  • Funded or officially supported by anyone - it's an open-source project, so please help out if think you can.

Supported Languages

  • British English 🇬🇧
  • American English 🇺🇸
  • German 🇩🇪
  • 🆕 French 🇫🇷

Commands

In English

These should all work (usually) in the current version. Most commands can take a player name, or will remember the default / last player if not specified.

Playback

  • Alexa, tell Squeezebox to play / pause (or just Alexa, play / pause!)
  • Alexa, tell Squeezebox next / previous (or just Alexa, next / previous!)
  • Alexa, tell Squeezebox to skip (or just Alexa, skip!)
  • Alexa, tell Squeezebox to turn shuffle on / off (or just Alexa, Shuffle On/Off)

Control

  • Alexa, tell Squeezebox to select the Bedroom player
  • Alexa, tell Squeezebox to turn it down in the Living Room
  • Alexa, ask Squeezebox to pump it up!
  • Alexa, tell Squeezebox to turn everything off

Selecting Music

  • Alexa, tell Squeezebox to play some Blues and some Jazz
  • Alexa, tell Squeezebox to play a mix of Jungle, Dubstep and Hip-Hop
  • Alexa, ask Squeezebox to play my Sunday Morning playlist
  • Alexa, tell Squeezebox to play the Bad-Ass Metal playlist!

Feedback

  • Alexa, ask Squeezebox what's playing [in the Kitchen]

Auf Deutsch

  • Alexa, frage Squeezebox was ist das für ein Lied?
  • Alexa, frage Squeezebox alles ausschalten
  • etc...

En français

  • Alexa, demande à Squeezebox de baisser le volume!
  • Alexa, demande à Squeezebox qu'est ce qu'on écoute dans le salon

I want!

See the HOWTO for the full details of installing and configuring your own squeeze-alexa instance, or TROUBLESHOOTING if you're getting stuck.

Contributing

squeeze-alexa is an open source project licensed under GPLv3 (or later). If you'd like to help test, translate, or develop it, see the Github issues and read CONTRIBUTING.