# Google Music

**URL:** <https://forums.plex.tv/t/google-music/21720>\
**Category:** Dev/API Corner\
**Tags:** plugin-dev\
**Created:** [September 25, 2012, 5:28am UTC](https://forums.plex.tv/t/google-music/21720 "2012-09-25T05:28:34Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [September 25, 2012, 5:28am UTC](https://forums.plex.tv/t/google-music/21720/1 "2012-09-25T05:28:34Z")

</div>

Here's what I've been working on. I don't have everything implemented, but I think it's a pretty good start. Bug reports, feature requests and criticisms are welcome.  
  
~~Developed and tested only on OS X Lion. Linux and Windows support is planned.~~  
  
Enjoy ![biggrin.gif](http://forums.plexapp.com/public/style_emoticons/default/biggrin.gif)  
&nbsp;

&nbsp;

Git repository: [http://www.github.com/supermaik/GoogleMusic.bundle.git](http://www.github.com/supermaik/GoogleMusic.bundle.git)

Current git repo bundle status:&nbsp; **WORKING**

&nbsp;

Last updated&nbsp; **20-Jun-2013**

&nbsp;

**What Works**

- Linux
- Browsing/playing user-created playlists
- Shuffle all songs (currently pulls down entire library in one request, potentially tens of thousands of songs)
- Browse by artist -\> album; or browse by artist -\> all songs
- Browse by album

**What Doesn't Work**

- Windows
- Mac OS X

---

<div class="post-metadata">

**Author:** ![IanDBird](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/iandbird/32/85993_2.png) [@IanDBird](https://forums.plex.tv/u/IanDBird)\
**Post date:** [October 3, 2012, 12:29pm UTC](https://forums.plex.tv/t/google-music/21720/2 "2012-10-03T12:29:05Z")

</div>

Hey,  
  
  
  
Always great to see new plugins. I have a quick look at the code and found a possible issue which might result in this channel not working for iOS and probably Android based client. The ‘key’ of a TrackObject (or VideoClipObject, PhotoObject) is not meant to be the URL to the resource but actually a URL to a callback used to provide an ObjectContainer of all the associated information. There are various ways to do this. The simplest is to use a URL Service (as described [here](http://devblog.plexapp.com/2012/05/11/the-power-of-the-url-service/)). It might be a little trickier because you have to handle authentication, but should still be possible.  
  
  
  
If you’re keen to do everything manually inside the channel, an example of this being done can be seen in the Netflix plugin: [https://github.com/plexinc-plugins/Netflix.bundle/blob/master/Contents/Code/US/](https://github.com/plexinc-plugins/Netflix.bundle/blob/master/Contents/Code/US/) **init**.py#L110  
  
  
  
Ian

---

<div class="post-metadata">

**Author:** ![IanDBird](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/iandbird/32/85993_2.png) [@IanDBird](https://forums.plex.tv/u/IanDBird)\
**Post date:** [October 3, 2012, 12:31pm UTC](https://forums.plex.tv/t/google-music/21720/3 "2012-10-03T12:31:41Z")

</div>

Oh, and another slightly different example is Live Music Archive: [https://github.com/plexinc-plugins/LMA.bundle/blob/master/Contents/Code/](https://github.com/plexinc-plugins/LMA.bundle/blob/master/Contents/Code/) **init**.py  
  
  
  
It uses a AlbumObject, specifying the URL, and then allows the Internet Acrhive URL Service ([here](https://github.com/plexinc-plugins/Services.bundle/blob/master/Contents/Service%20Sets/com.plexapp.plugins.internetarchive/URL/Internet%20Archive/ServiceCode.pys)). Just thought i’d link you to them incase you find them useful…  
  
  
  
Ian

---

<div class="post-metadata">

**Author:** ![rymos](https://avatars.discourse-cdn.com/v4/letter/r/7feea3/32.png) [@rymos](https://forums.plex.tv/u/rymos)\
**Post date:** [February 19, 2013, 10:12pm UTC](https://forums.plex.tv/t/google-music/21720/4 "2013-02-19T22:12:48Z")

</div>

Hey maik,  
  
  
  
Have you worked on this at all? I was looking for a gmusic plugin to see if I should develop one or not and I see you have started one already.  
  
  
  
Thanks,  
  
  
  
Ryan

---

<div class="post-metadata">

**Author:** ![subtlepoint](https://avatars.discourse-cdn.com/v4/letter/s/ecd19e/32.png) [@subtlepoint](https://forums.plex.tv/u/subtlepoint)\
**Post date:** [April 1, 2013, 6:33pm UTC](https://forums.plex.tv/t/google-music/21720/5 "2013-04-01T18:33:20Z")

</div>

Google search returned.. works pretty well.

[https://github.com/supermaik/GoogleMusic.bundle](https://github.com/supermaik/GoogleMusic.bundle)

---

<div class="post-metadata">

**Author:** ![pr00se](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/pr00se/32/145149_2.png) [@pr00se](https://forums.plex.tv/u/pr00se)\
**Post date:** [June 2, 2013, 10:09pm UTC](https://forums.plex.tv/t/google-music/21720/6 "2013-06-02T22:09:08Z")

</div>

> Google search returned.. works pretty well.
> 
> [https://github.com/supermaik/GoogleMusic.bundle](https://github.com/supermaik/GoogleMusic.bundle)

Can't seem to get it working in Plex/Web or PHT. &nbsp;On Android it brings up a blank Preferences screen.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 5, 2013, 6:49am UTC](https://forums.plex.tv/t/google-music/21720/7 "2013-06-05T06:49:49Z")

</div>

Hey guys. &nbsp;I've been thinking about resurrecting this lately. &nbsp;I'm likely going to do a rewrite since I think I just hodgepodged it together and didn't follow the coding guidelines. &nbsp;Keep an eye on this thread and I'll try and keep it updated.

As far as getting the current version working I'm not really sure as it's been a while since I've messed with it. &nbsp;I just opened it on my Roku this evening and to my surprise it actually still worked.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 5, 2013, 6:50am UTC](https://forums.plex.tv/t/google-music/21720/8 "2013-06-05T06:50:40Z")

</div>

> Hey maik,  
>   
> Have you worked on this at all? I was looking for a gmusic plugin to see if I should develop one or not and I see you have started one already.  
>   
> Thanks,  
>   
> Ryan

Did you end up starting one?

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 5, 2013, 8:19am UTC](https://forums.plex.tv/t/google-music/21720/9 "2013-06-05T08:19:16Z")

</div>

> Hey,  
>   
> Always great to see new plugins. I have a quick look at the code and found a possible issue which might result in this channel not working for iOS and probably Android based client. The 'key' of a TrackObject (or VideoClipObject, PhotoObject) is not meant to be the URL to the resource but actually a URL to a callback used to provide an ObjectContainer of all the associated information. There are various ways to do this. The simplest is to use a URL Service (as described [here](http://devblog.plexapp.com/2012/05/11/the-power-of-the-url-service/)). It might be a little trickier because you have to handle authentication, but should still be possible.  
>   
> If you're keen to do everything manually inside the channel, an example of this being done can be seen in the Netflix plugin: [https://github.com/plexinc-plugins/Netflix.bundle/blob/master/Contents/Code/US/\_\_init\_\_.py#L110](https://github.com/plexinc-plugins/Netflix.bundle/blob/master/Contents/Code/US/ __init__.py#L110)  
>   
> Ian

So in my case I'm using a third party library to get all of the information for me. &nbsp;When implementing MetaDataObjectForURL() do I just make calls to the third party library for grabbing relevant metadata?

---

<div class="post-metadata">

**Author:** ![many7695](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/many7695/32/4948_2.png) [@many7695](https://forums.plex.tv/u/many7695)\
**Post date:** [June 5, 2013, 5:57pm UTC](https://forums.plex.tv/t/google-music/21720/10 "2013-06-05T17:57:14Z")

</div>

i just tried your plugin, unfortunately its not working for me, on my nexus 7&nbsp; the directory is empty, on my iPad 3 it show my albums and artists but when I try to play something nothing happens and on the plexweb, in album or artist directory it says is unavailable. I try on my roku 2 later, but if you can get this plugin to work except for sports I can probably do all my media watching and listening within plex.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 6, 2013, 5:09am UTC](https://forums.plex.tv/t/google-music/21720/11 "2013-06-06T05:09:06Z")

</div>

> i just tried your plugin, unfortunately its not working for me, on my nexus 7&nbsp; the directory is empty, on my iPad 3 it show my albums and artists but when I try to play something nothing happens and on the plexweb, in album or artist directory it says is unavailable. I try on my roku 2 later, but if you can get this plugin to work except for sports I can probably do all my media watching and listening within plex.

I didn't expect anything to work so it's a miracle you got any of that functionality out of it. &nbsp;I'm just now picking up development again actively working on it but it's likely to be slow going. &nbsp;As I mentioned I will keep this thread updated as best as I can, but if you're interested in following development check out the github page for it at&nbsp;[https://github.com/supermaik/GoogleMusic.bundle](https://github.com/supermaik/GoogleMusic.bundle)

---

<div class="post-metadata">

**Author:** ![many7695](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/many7695/32/4948_2.png) [@many7695](https://forums.plex.tv/u/many7695)\
**Post date:** [June 6, 2013, 7:02pm UTC](https://forums.plex.tv/t/google-music/21720/12 "2013-06-06T19:02:57Z")

</div>

I tried to update the plugin by removing the old one, added new version, exited plex, restarted plex but googlemusic didn’t show up, I have restarted plex several times, removed the plugin several times as well, it is not showing up. Is there any other way to get plex to see it.

---

<div class="post-metadata">

**Author:** ![rymos](https://avatars.discourse-cdn.com/v4/letter/r/7feea3/32.png) [@rymos](https://forums.plex.tv/u/rymos)\
**Post date:** [June 7, 2013, 4:17am UTC](https://forums.plex.tv/t/google-music/21720/13 "2013-06-07T04:17:53Z")

</div>

> Did you end up starting one?

Hey maik,&nbsp;

Sorry for late reply, I didn't get any notification.

No, i didn't start one. &nbsp;I see that you have picked up the project again! &nbsp;Let me know if you need any help. &nbsp;I have some limited time, but I would love to see this take off.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 7, 2013, 7:33am UTC](https://forums.plex.tv/t/google-music/21720/14 "2013-06-07T07:33:39Z")

</div>

I'm going to update the first post with the current status, at least to indicate whether or not I believe it to be functional.

I'm in very early stages of the re-write so it's definitely busted. &nbsp;I'm glad to hear of the interest though and it will definitely keep me poking at it. &nbsp;rymos, I will let you know if I need anything, thanks for the offer.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 10, 2013, 8:32am UTC](https://forums.plex.tv/t/google-music/21720/15 "2013-06-10T08:32:51Z")

</div>

So it looks like attempting to update to the latest gmusicapi was futile. &nbsp;My primary development has been on a Mac PMS which is stuck on the Python 2.5 framework. &nbsp;The latest gmusicapi is 2.5-incompatible so that didn't work out. &nbsp;I've rolled back the repo to the state of the original beta and as far as I can tell that's working still. &nbsp;My current plan is the following:

Bring up a Linux PMS and do primary development on that, update gmusicapi and the relevant libraries and start working on the interface.

Once I've got a good handle on that I will attempt to use the older gmusicapi to satisfy the Mac users and, with any luck, the differences will be transparent to the users.

Finally, once Plex unifies the frameworks across the board to 2.7+ (I've been told "no ETA, but soonish") I will bring the Mac parts up to speed with the rest of the plugin and we should be good to go.

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 14, 2013, 7:18am UTC](https://forums.plex.tv/t/google-music/21720/16 "2013-06-14T07:18:24Z")

</div>

Alright. &nbsp;I've done some work on stripping out the unnecessary (for our purposes) stuff that was preventing everything from loading properly. &nbsp;I've also been talking with the primary gmusicapi developer and it sounds like they're going to attempt to draw a clearer line between the music side of things and the music manager side of things. &nbsp;This means I'll be able to simply take the part I'm interested in using and use it

In any case, the most recent commit ([https://github.com/supermaik/GoogleMusic.bundle/commit/92f598fd39dab9eeb700e764aa4c41097b86234d](https://github.com/supermaik/GoogleMusic.bundle/commit/92f598fd39dab9eeb700e764aa4c41097b86234d)) is working and semi-stable. &nbsp;&nbsp;

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 15, 2013, 5:46pm UTC](https://forums.plex.tv/t/google-music/21720/17 "2013-06-15T17:46:25Z")

</div>

Worked on the interface a bit. &nbsp;Now when you select an artist it gives you the options to play all of the artist's songs, see a list of the artist's albums or a see a list of the artist's songs.

[https://github.com/supermaik/GoogleMusic.bundle/commit/33488588ab1856a005c1867cae7c95acb61a8c49](https://github.com/supermaik/GoogleMusic.bundle/commit/33488588ab1856a005c1867cae7c95acb61a8c49)

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 16, 2013, 9:08am UTC](https://forums.plex.tv/t/google-music/21720/18 "2013-06-16T09:08:01Z")

</div>

Fixed the problem where then next track wouldn't play automatically (gmusic object appears to get destroyed after a few minutes and the credentials weren't re-retrieved when the new instance was set up. &nbsp;Borrowed heavily from the Pandora plugin which performs a login whenever data is requested from the server (in cases where multiple successive requests are performed the object is simply passed around).

Also removed the "Play all artist's songs" option because such a feature isn't possible. &nbsp;No big deal though as "All songs" accomplishes the same thing, just without autoplay.

[https://github.com/supermaik/GoogleMusic.bundle/commit/837d01b130167da524fad645f7702e6c2ef429e1](https://github.com/supermaik/GoogleMusic.bundle/commit/837d01b130167da524fad645f7702e6c2ef429e1)

---

<div class="post-metadata">

**Author:** ![maik](https://avatars.discourse-cdn.com/v4/letter/m/7feea3/32.png) [@maik](https://forums.plex.tv/u/maik)\
**Post date:** [June 18, 2013, 6:07am UTC](https://forums.plex.tv/t/google-music/21720/19 "2013-06-18T06:07:27Z")

</div>

Added a "Shuffle All" top level option to shuffle all tracks. &nbsp;This returns the entire track listing in one lump (potentially tens of thousands of tracks, depending on your library).

[https://github.com/supermaik/GoogleMusic.bundle/commit/837d01b130167da524fad645f7702e6c2ef429e1](https://github.com/supermaik/GoogleMusic.bundle/commit/837d01b130167da524fad645f7702e6c2ef429e1)

---

<div class="post-metadata">

**Author:** ![jmramirez](https://sea1.discourse-cdn.com/plex/user_avatar/forums.plex.tv/jmramirez/32/5385_2.png) [@jmramirez](https://forums.plex.tv/u/jmramirez)\
**Post date:** [June 19, 2013, 7:49am UTC](https://forums.plex.tv/t/google-music/21720/20 "2013-06-19T07:49:48Z")

</div>

Hello!

&nbsp;

&nbsp; &nbsp;I´m tested the plugin on PMS in Windows 7 but it not work. Are you tested on this operative system? If not, Are you planning to do it soon?

&nbsp;

Thanks in advance..

&nbsp;

Jose Manuel

[Next page](https://forums.plex.tv/t/google-music/21720.md?page=2)
