This repo is no longer in development. You'll want to check out Geemusic instead.
Google Play Music Backend for Amazon Echo
This is only set up for development right now as I'm sure this skill won't be published ever. I just really didn't want to buy another music subscription.
(These were written from a linux install but I assume that it is similar for other platforms.)
Python 3 (the latest should work)
Ngrok (secure tunneling over localhost)
A Google Play Subscription (haven't tested free accounts with this yet)
Amazon Echo, Tap, or Dot
Screen (This isn't necessary but makes it easier to keep the program running when you log off of your ssh session on linux.)
- gmusicapi
pip install gmusicapi
- flask
pip install flask
- flask-ask
pip install flask-ask
- fuzzywuzzy
pip install fuzzywuzzy
- python-Levenshtein
pip install python-Levenshtein
- Clone the repo to your local machine.
- Create a screen instance.
- Put your email and password for your google account in the loginCredentials.py file.
- Run
generate_playlists.py
(you will need this later) - Start
GoogleEchoMusicService.py
. - Start Ngrok
./ngrok http 5000
.
- Create an AWS developer account at Amazons Developer Site
- Create an Alexa Skills Kit
- On the Skill Information page put
Google Music
in the Name field andgoogle music
for the Invocation Name. Checkyes
for "Does this skill use the audio player directives?" - On the "Interaction Model" page copy the Intent Schema and Sample Utterances to their respective fields.
- Create an "Custom Slot Types" and enter in "CUSTOMPLAYLISTS" for the type. Then copy and paste the text from
Playlist_names_to_copy.txt
. (which was generated bygenerate_playlists.py
) - On the "Configuration" page set "Service Endpoint Type:" to
HTTPS
and put your ngrok url in with/googlemusic
added to the end - On the "SSL Certificate" page select "My development endpoint is a sub-domain of a domain that has a wildcard certificate from a certificate authority" and click next
- Make sure on the "Test" page the skill is enabled for testing on your account and your ready to go!