GithubHelp home page GithubHelp logo

nick7634 / squeezebox-googlemusic Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hechtus/squeezebox-googlemusic

4.0 2.0 3.0 2.96 MB

Squeezebox (Logitech Media Server) Plugin for Google Play Music

Perl 95.75% HTML 3.37% Python 0.88%

squeezebox-googlemusic's Introduction

squeezebox-googlemusic

Travis CI build status Donate

This is a Squeezebox (Logitech Media Server) Plug-in for playing music from your Google Play Music library and All Access. It is based on the Python Unofficial Google Play Music API and the ability of inlining Python in Perl programs.

Installation

This installation procedure will only work on Linux based systems. At the moment I do not know if this will ever work on Windows. If you want to install this plugin on OSX have a look at the How-To below. Please let me know if you found a way to get this plugin running on non-Linux systems to extend this How-to.

  1. You will need a Google account and some music and/or playlists in your library. If you want to use Google Music All Access features you will need a subscription to this service.

  2. Install Python and Python pip.

  3. Install the Unofficial Google Play Music API by running:

      sudo pip install gmusicapi
    

    Important Note: At the moment you will need the developer version of gmusicapi. Install this version by doing:

      pip install git+https://github.com/simon-weber/Unofficial-Google-Music-API.git@develop
    
  4. To be able to build the Perl package Inline::Python (see below) you will need the Python developer package. The name of the package and the way how to install it depends on your Linux distribution. On Debian based systems you will have to do:

      sudo apt-get install python-dev
    

    On redhat systems do:

      sudo yum install python-devel
    
  5. Install the Perl CPAN package Inline and Inline::Python by running:

      sudo cpan App::cpanminus
      sudo cpanm --notest Inline
      sudo cpanm --notest Inline::Python
    
  6. To install the plugin, add the repository URL http://hechtus.github.io/squeezebox-googlemusic/repository/repo.xml to your squeezebox plugin settings page.

Installation on OSX

The installation on OSX is quite similar to Linux. According to the reports for issue #28 you will have to do the following:

  1. Open Terminal by typing Terminal in Spotlight. A command line interface should open.

  2. Install pip. To do that, type sudo easy_install pip Note: for this to work you need to have XCode (the Mac developer tools) installed, you will also need the Xcode command line tools, but XCode will prompt you to install them if you don't. Then go to step 5 below.

  3. Alternatively, if you don't have and don't want to install XCode you can also download the get-pip.py script from here: https://raw.github.com/pypa/pip/master/contrib/get-pip.py But please be aware that you are doing this at your own risk. You are installing a binary through a script downloaded from the internet without any verification...

  4. Change to the Downloads directory

       cd Downloads
    
  5. Install the Unofficial Google Play Music API by running:

      sudo pip install gmusicapi
    

    Important Note: At the moment you will need the developer version of gmusicapi. Install this version by doing:

      sudo pip install git+https://github.com/simon-weber/Unofficial-Google-Music-API.git@develop
    
  6. Install the Perl CPAN package Inline and Inline::Python by running:

      sudo cpan App::cpanminus
      sudo ARCHFLAGS="-arch i386 -arch x86_64" cpanm --notest Inline
      sudo ARCHFLAGS="-arch i386 -arch x86_64" cpanm --notest Inline::Python
    
  7. Go to the Logitech Media Server with your browser. Visit the Plugins page and insert the repository URL for this Plugin at the bottom of the page: http://hechtus.github.io/squeezebox-googlemusic/repository/repo.xml

  8. Save and restart the Logitech Media Server. Provide your All Access information on the settings page.

  9. Enjoy!

Thanks to @jamesray2 for this How-To.

Usage

  1. Go to the plug-in settings page and set your Google username and password for the Google Music plug-in. You can also use an application-specific password also known as 2-Step Verification which is desribed in detail on this support page.

  2. The mobile device ID is a 16-digit hexadecimal string (without a '0x' prefix) identifying an Android device or a string of the form ios:01234567-0123-0123-0123-0123456789AB (including the ios: prefix) identifying an iOS device you must already have registered for Google Play Music. On Android you can obtain this ID by dialing *#*#8255#*#* on your phone (see the aid) or using this App (see the Google Service Framework ID Key). You may also use the script mobile_devices.py to list all registered devices. If your Android or iOS device is already registered, you may leave the field Mobile Device ID empty. It will be filled in automatically after setting the username and password.

    Note: A registered PC MAC address will not work as a mobile device ID.

  3. Enable All Access if you have an All Access subscription.

  4. You will find the plug-in in the 'My Apps' section of the squeezebox menu.

Donate for this Plugin

If you are enjoying this plugin feel free to donate for it.

Project resources

ToDo

I'm looking forward to your help. Feel free to contribute or to report bugs. Here are some things you may help on:

  • Get this plugin running on non-Linux systems
  • Add or improve translations to other languages
  • Test the plugin with various Android or iOS Apps. Is it working with iPeng?
  • Support for creating and deleting radio stations
  • Improve Track and Album Info

squeezebox-googlemusic's People

Contributors

coolio107 avatar hechtus avatar huubbouma avatar kennethahn avatar nick7634 avatar ryanmelenanoesis avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.