/GooglePlayEchoMusicService

Google Play Music Backend for Amazon Echo

Primary LanguagePython

This repo is no longer in development. You'll want to check out Geemusic instead.

GooglePlayEchoMusicService

Google Play Music Backend for Amazon Echo

NOTE

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.

Setup Instructions:

(These were written from a linux install but I assume that it is similar for other platforms.)

Things you'll need to install / have before setup:

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.)

Install these pip modules:

  • gmusicapi pip install gmusicapi
  • flask pip install flask
  • flask-ask pip install flask-ask
  • fuzzywuzzy pip install fuzzywuzzy
  • python-Levenshtein pip install python-Levenshtein

Setup Instructions on local machine:

  1. Clone the repo to your local machine.
  2. Create a screen instance.
  3. Put your email and password for your google account in the loginCredentials.py file.
  4. Run generate_playlists.py (you will need this later)
  5. Start GoogleEchoMusicService.py.
  6. Start Ngrok ./ngrok http 5000.

Setting up your Alexa Skill:

  1. Create an AWS developer account at Amazons Developer Site
  2. Create an Alexa Skills Kit
  3. On the Skill Information page put Google Music in the Name field and google music for the Invocation Name. Check yes for "Does this skill use the audio player directives?"
  4. On the "Interaction Model" page copy the Intent Schema and Sample Utterances to their respective fields.
  5. 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 by generate_playlists.py)
  6. On the "Configuration" page set "Service Endpoint Type:" to HTTPS and put your ngrok url in with /googlemusic added to the end
  7. 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
  8. Make sure on the "Test" page the skill is enabled for testing on your account and your ready to go!