Release - Experimental Google Music Addon

  Thread Rating:
  • 16 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
MCipher Offline
Junior Member
Posts: 12
Joined: Jan 2012
Reputation: 0
Post: #361
(2015-05-29 01:44)foreverguest Wrote:  2 factor authentication requires an application specific password:
https://security.google.com/settings/sec...ppasswords
Ok, I thought it would also replace the app-specific passwords as well by the OAuth token stuff. Smile

Yesterday all was fine with alpha3 (can confirm it to be a bit more responsive) but today it showed
Code:
17:51:50 T:2647647296   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'gmusicapi.exceptions.CallFailure'>
                                            Error Contents: GetStreamUrl: 403 Client Error: Forbidden
                                            (requests kwargs: {'headers': {'X-Device-ID': '***', 'Authorization': '<omitted>'}, 'params': {'opt': 'hi', 'mjck': 'Tx
***', 'pt': 'e', 'slt': '***', 'sig': '***', 'net': 'mob'}, 'url': 'https://android.clients.google.com/music/mplay', 'verif
y': False, 'allow_redirects': False, 'method': 'GET'})
                                            (response was: '<HTML>\n<HEAD>\n<TITLE>Forbidden</TITLE>\n</HEAD>\n<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n<H1>Forbidden</H1>\n<H2>Err
or 403</H2>\n</BODY>\n</HTML>\n')
                                            Traceback (most recent call last):
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/default.py", line 13, in <module>
                                                GoogleMusicPlaySong.GoogleMusicPlaySong().play(params)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicPlaySong.py", line 13, in play
                                                params = self.__getSongStreamUrl(song_id, params)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicPlaySong.py", line 53, in __getSongStreamUrl
                                                params['url'] = self.api.getSongStreamUrl(song_id)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicApi.py", line 71, in getSongStreamUrl
                                                stream_url = self.getLogin().getStreamUrl(song_id)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicLogin.py", line 34, in getStreamUrl
                                                return self.gmusicapi.get_stream_url(song_id, device_id, quality)
                                              File "<string>", line 2, in get_stream_url
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/utils/utils.py", line 251, in wrapper
                                                return function(*args, **kw)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/clients/mobileclient.py", line 248, in get_stream_url
                                                return self._make_call(mobileclient.GetStreamUrl, song_id, device_id, quality)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/clients/shared.py", line 80, in _make_call
                                                return protocol.perform(self.session, self.validate, *args, **kwargs)
                                              File "/home/pi/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/protocol/shared.py", line 226, in perform
                                                raise CallFailure(err_msg, call_name)
                                            CallFailure: GetStreamUrl: 403 Client Error: Forbidden
                                            (requests kwargs: {'headers': {'X-Device-ID': '***', 'Authorization': '<omitted>'}, 'params': {'opt': 'hi', 'mjck': 'Tx
***', 'pt': 'e', 'slt': '***', 'sig': '***', 'net': 'mob'}, 'url': 'https://android.clients.google.com/music/mplay', 'verif
y': False, 'allow_redirects': False, 'method': 'GET'})
                                            (response was: '<HTML>\n<HEAD>\n<TITLE>Forbidden</TITLE>\n</HEAD>\n<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n<H1>Forbidden</H1>\n<H2>Err
or 403</H2>\n</BODY>\n</HTML>\n')
                                            -->End of Python script error report<--
17:51:51 T:3038248960   ERROR: Playlist Player: skipping unplayable item: 0, path [plugin://plugin.audio.googlemusic.exp/?action=play_song&song_id=***&titl
e=***&artist=***&albumart=http://lh3.googleusercontent.com/***
This repeated every time I selected a track to play (I masked some fields by "***" in the log where I don't know if they contain personal data).
After I went to the "My Library" context menu and selected "Update library" it seems to have got the login again, since then playback works fine again.

Yesterday I used the "home" button to return to the main screen and today I called the plugin directly from there which led me directly back to the Playlist I was listening to. Maybe this way the login is ommitted and therefore the cookie authentication not refreshed?

Will observe it, hope it does not require manual steps every day because of some kind of cookie expiry or similar effects.


Ah, details for my installation: Raspberry Pi B with very last raspbmc installation (I think Kodi 14.2).
(This post was last modified: 2015-05-29 19:53 by MCipher.)
find quote
sealex Offline
Junior Member
Posts: 5
Joined: Oct 2014
Reputation: 0
Post: #362
I have similar problem like MCipher. I tested both last alfa versions (1.4a2 and 1.4a3). I can update datas from google music and browse them, but everytime I try to play song, I get error.

Code:
19:15:13 T:884995136   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'gmusicapi.exceptions.CallFailure'>
                                            Error Contents: GetStreamUrl: 403 Client Error: Forbidden
                                            (requests kwargs: {'headers': {'X-Device-ID': '3578878476221125226', 'Authorization': '<omitted>'}, 'params': {'opt': 'hi', 'songid': '2c52a480-d150-3d1c-b678-4988e172e25b', 'pt': 'e', 'slt': 'xxxxx', 'sig': 'xxxxx', 'net': 'mob'}, 'url': 'https://android.clients.google.com/music/mplay', 'verify': False, 'allow_redirects': False, 'method': 'GET'})
                                            (response was: '<HTML>\n<HEAD>\n<TITLE>Forbidden</TITLE>\n</HEAD>\n<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n<H1>Forbidden</H1>\n<H2>Error 403</H2>\n</BODY>\n</HTML>\n')
                                            Traceback (most recent call last):
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/default.py", line 13, in <module>
                                                GoogleMusicPlaySong.GoogleMusicPlaySong().play(params)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicPlaySong.py", line 13, in play
                                                params = self.__getSongStreamUrl(song_id, params)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicPlaySong.py", line 53, in __getSongStreamUrl
                                                params['url'] = self.api.getSongStreamUrl(song_id)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicApi.py", line 71, in getSongStreamUrl
                                                stream_url = self.getLogin().getStreamUrl(song_id)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/GoogleMusicLogin.py", line 34, in getStreamUrl
                                                return self.gmusicapi.get_stream_url(song_id, device_id, quality)
                                              File "<string>", line 2, in get_stream_url
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/utils/utils.py", line 251, in wrapper
                                                return function(*args, **kw)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/clients/mobileclient.py", line 248, in get_stream_url
                                                return self._make_call(mobileclient.GetStreamUrl, song_id, device_id, quality)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/clients/shared.py", line 80, in _make_call
                                                return protocol.perform(self.session, self.validate, *args, **kwargs)
                                              File "/storage/.kodi/addons/plugin.audio.googlemusic.exp/gmusicapi/protocol/shared.py", line 226, in perform
                                                raise CallFailure(err_msg, call_name)
                                            CallFailure: GetStreamUrl: 403 Client Error: Forbidden
                                            (requests kwargs: {'headers': {'X-Device-ID': 'xxxxx', 'Authorization': '<omitted>'}, 'params': {'opt': 'hi', 'songid': 'xxxxx', 'pt': 'e', 'slt': 'xxxxx', 'sig': 'xxxxx', 'net': 'mob'}, 'url': 'https://android.clients.google.com/music/mplay', 'verify': False, 'allow_redirects': False, 'method': 'GET'})
                                            (response was: '<HTML>\n<HEAD>\n<TITLE>Forbidden</TITLE>\n</HEAD>\n<BODY BGCOLOR="#FFFFFF" TEXT="#000000">\n<H1>Forbidden</H1>\n<H2>Error 403</H2>\n</BODY>\n</HTML>\n')
                                            -->End of Python script error report<--

My config: RaspBerry Pi2 with last OpenElec (Czech Republic); two factor auth enabled

Thanks for your work and this wonderful plugin.
(This post was last modified: 2015-05-29 20:46 by sealex.)
find quote
ginnis24 Offline
Junior Member
Posts: 1
Joined: May 2015
Reputation: 0
Post: #363
Hi,

having a login issue...i am using a non rooted AFTV...1.3 version of plugin installed fine...wont login...i dont have two factor auth enabled (never have) and I checked the use less secure on my account...i have verified I am using the correct credentials and i verified I am not going over the allowed number of devices in google music...any help would be greatly appreciated
find quote
foreverguest Offline
Fan
Posts: 399
Joined: Oct 2012
Reputation: 27
Post: #364
Could you tell me if the mobile device you have in your account is an Android or IOS?
Just checking if this could be related to login/authentication problems.
find quote
enhde Offline
Junior Member
Posts: 12
Joined: Apr 2015
Reputation: 0
Post: #365
At me the same, Login invalid (FireTV)
find quote
MCipher Offline
Junior Member
Posts: 12
Joined: Jan 2012
Reputation: 0
Post: #366
(2015-05-29 21:22)foreverguest Wrote:  Could you tell me if the mobile device you have in your account is an Android or IOS?
Just checking if this could be related to login/authentication problems.
In my case, a new "Android device" is added in the account.

Anyway, I just installed OSMC from scratch and will see how Google Music EXP behaves after that clean install. Will let you know if the issue appears again.
find quote
handlero Offline
Junior Member
Posts: 1
Joined: May 2015
Reputation: 0
Post: #367
Hello. Thanks so much for the add-on. I've been using the newer test version on a Matricom Gbox together with the Yatse remote app for the past few months. It was seemless until I upgraded to the new Matricom Gbox Q. Now there is no radio option, not even once you highlight a song and checkout options. I thought it was a Yatse remote-specific problem, but the radio option is gone even when no remote is involved. Anybody know kodi on the Gbox Q does not show the radio option?
find quote
Steve_uk Offline
Fan
Posts: 320
Joined: Aug 2012
Reputation: 3
Location: UK
Post: #368
(2015-05-29 21:22)foreverguest Wrote:  Could you tell me if the mobile device you have in your account is an Android or IOS?
Just checking if this could be related to login/authentication problems.
Hi foreverguest ,
I'm having similar login issues now the older version logged in fine once I had set my account to allow third party apps.
But since I've updated to your latest version it's saying invalid credentials again... I checked my account and it's still set to allow third party and I don't use the 2 tier sign in thing.
Is there anything you can recommend
Thanks
I'm on Raspberry Pi2 openelec btw Smile
Edit... Sorry should have read your release notes first about changing the login I'll try that when I get in
(This post was last modified: 2015-06-02 11:03 by Steve_uk.)
find quote
Steve_uk Offline
Fan
Posts: 320
Joined: Aug 2012
Reputation: 3
Location: UK
Post: #369
Another update in case anyone can help.
It's still not letting me log in no matter what setting I put it onto.
I'm on your latest test build!
Is anyone else having issues logging in with it?
I notice there's a debug option in the settings where is that saved to?
(This post was last modified: 2015-06-02 20:31 by Steve_uk.)
find quote
foreverguest Offline
Fan
Posts: 399
Joined: Oct 2012
Reputation: 27
Post: #370
It should work with or without 'less secure apps' option.
More important, what kind of registered device you have, Android or IOS?
find quote
foreverguest Offline
Fan
Posts: 399
Joined: Oct 2012
Reputation: 27
Post: #371
Please test new alpha version below:
plugin.audio.googlemusic.exp-1.4alpha4
- pulled some fixes from gmusicapi library (should fix login errors)
- fix regression in 'add to favourites'
- fix encoding error in 'export'
find quote
w.irving Offline
Junior Member
Posts: 8
Joined: Nov 2009
Reputation: 0
Post: #372
(2015-06-03 06:29)foreverguest Wrote:  Please test new alpha version below:
plugin.audio.googlemusic.exp-1.4alpha4
- pulled some fixes from gmusicapi library (should fix login errors)
- fix regression in 'add to favourites'
- fix encoding error in 'export'

This fixed the invalid credentials error for me, thanks!
And yes, have less secure apps = on.

Code:
18:37:11 T:140327788738304  NOTICE: [GoogleMusicEXP-1.3] Logging in
18:37:11 T:140327788738304   ERROR: /home/htpc/.kodi/addons/script.module.requests/lib/requests/packages/urllib3/util/ssl_.py:79: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
                                              InsecurePlatformWarning
18:37:11 T:140327788738304  NOTICE: [GoogleMusicEXP-1.3] Login failed
find quote
Steve_uk Offline
Fan
Posts: 320
Joined: Aug 2012
Reputation: 3
Location: UK
Post: #373
(2015-06-02 20:29)foreverguest Wrote:  It should work with or without 'less secure apps' option.
More important, what kind of registered device you have, Android or IOS?
Hi
Thanks for the reply
I have my Android phone and Android tablet registered but your addon is installed on a Raspberry Pi2 openelec.
Is there a limit on the registered devices then?
I have just seen you posted a update so I will try that and also double check how many devices I have registered
Cheers
find quote
Hustler1337 Offline
Fan
Posts: 318
Joined: Nov 2014
Reputation: 11
Location: London
Post: #374
Getting an error when trying to open the addon. Not sure what's up and would appreciate any help.

PHP Code:
15:17:03 T:1906032984  NOTICE: -->Python Interpreter Initialized<--
15:17:03 T:1906032984   ERROREXCEPTIONUnknown addon id 'plugin.audio.googlemusic.exp'.
15:17:03 T:1906032984   ERROREXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - 
NOTEIGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            
Error Type: <type 'exceptions.RuntimeError'>
                                            
Error ContentsUnknown addon id 'plugin.audio.googlemusic.exp'.
                                            
Traceback (most recent call last):
                                              
File "/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.audio.googlemusic.exp/default.py"line 1in <module>
                                                
import sysutilsxbmc
                                              File 
"/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/addons/plugin.audio.googlemusic.exp/utils.py"line 5in <module>
                                                
addon xbmcaddon.Addon(id='plugin.audio.googlemusic.exp')
                                            
RuntimeErrorUnknown addon id 'plugin.audio.googlemusic.exp'.
                                            -->
End of Python script error report<--
15:17:03 T:1527888920   ERROR: static bool XFILE::CDirectory::GetDirectory(const CURL&, CFileItemList&, const XFILE::CDirectory::CHints&, bool) - Error getting plugin://plugin.audio.googlemusic/
15:17:03 T:1527888920   ERRORCGUIMediaWindow::GetDirectory(plugin://plugin.audio.googlemusic/) failed
15:17:03 T:1881416848  NOTICEThread BackgroundLoader startauto deletefalse
15
:17:06 T:1738474856  NOTICEThread LanguageInvoker startauto deletefalse
15
:17:06 T:1738474856  NOTICE: -->Python Interpreter Initialized<--
15:17:22 T:1725347264  NOTICEThread BackgroundLoader startauto deletefalse
15
:17:25 T:1908705936   ERROR: static bool XFILE::CDirectory::GetDirectory(const CURL&, CFileItemList&, const XFILE::CDirectory::CHints&, bool) - Error getting
15
:18:00 T:1751447232  NOTICEThread RSSReader startauto deletefalse 


Thank you.
(This post was last modified: 2015-06-04 16:25 by Hustler1337.)
find quote
Steve_uk Offline
Fan
Posts: 320
Joined: Aug 2012
Reputation: 3
Location: UK
Post: #375
(2015-06-03 06:29)foreverguest Wrote:  Please test new alpha version below:
plugin.audio.googlemusic.exp-1.4alpha4
- pulled some fixes from gmusicapi library (should fix login errors)
- fix regression in 'add to favourites'
- fix encoding error in 'export'
Thanks working great now Smile
I had 2 script failed errors straight after installing and launching but restarted it works great now.
Thanks alot
find quote
Post Reply