mopidy / mopidy-gmusic

DEPRECATED (Mopidy extension for playing music from Google Play Music)

Home Page:https://mopidy.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gmusic stopped working

djl236 opened this issue · comments

Everything was working fine until I changed the SSID on my pi. Then my config got wiped out for the service (had a backup though), my network share was unmounted, local files gone (and still can't rescan) and gmusic disappeared from the http moped interface. Config is ok now. Extension is loading. BUT I'm receiving the following error:

ERROR Extension gmusic failed during setup, this might have left the registry in a bad state.

Here's my traceback:
https://pastebin.com/0gkzQaie

Any help would be appreciated.

mopidy
INFO Starting Mopidy 2.0.1
INFO Loading config from builtin defaults
INFO Loading config from /home/pi/.config/mopidy/mopidy.conf
INFO Loading config from command line options
INFO Enabled extensions: mpd, http, file, stream, gmusic, scrobbler, local-images, softwaremixer, moped, musicbox_webclient, local, m3u
INFO Disabled extensions: none
INFO Starting Mopidy mixer: SoftwareMixer
INFO Starting Mopidy audio
INFO Starting Mopidy backends: GMusicBackend, StreamBackend, M3UBackend, FileBackend, LocalBackend
INFO Audio output set to "alsasink device=hw:1,0"
INFO Loaded 0 local tracks using json
INFO Logged in to Google Music
INFO Start refreshing Google Music library
INFO Start refreshing Google Music playlists
INFO Starting Mopidy core
INFO Starting Mopidy frontends: GMusicScrobblerFrontend, MpdFrontend, HttpFrontend, ScrobblerFrontend
ERROR Frontend (MpdFrontend) initialization error: MPD server startup failed: [Errno 98] Address already in use
ERROR Frontend (HttpFrontend) initialization error: HTTP server startup failed: [Errno 98] Address already in use
INFO Starting GLib mainloop
INFO Scrobbler connected to Last.fm

mopidy
INFO Starting Mopidy 2.0.1
INFO Loading config from builtin defaults
INFO Loading config from /home/pi/.config/mopidy/mopidy.conf
INFO Loading config from command line options
INFO Enabled extensions: mpd, http, file, stream, gmusic, scrobbler, local-images, softwaremixer, moped, musicbox_webclient, local, m3u
INFO Disabled extensions: none
INFO Starting Mopidy mixer: SoftwareMixer
INFO Starting Mopidy audio
INFO Starting Mopidy backends: GMusicBackend, StreamBackend, M3UBackend, FileBackend, LocalBackend
INFO Audio output set to "alsasink device=hw:1,0"
INFO Loaded 0 local tracks using json
INFO Logged in to Google Music
INFO Start refreshing Google Music library
INFO Start refreshing Google Music playlists
INFO Starting Mopidy core
INFO Starting Mopidy frontends: GMusicScrobblerFrontend, MpdFrontend, HttpFrontend, ScrobblerFrontend
ERROR Frontend (MpdFrontend) initialization error: MPD server startup failed: [Errno 98] Address already in use
ERROR Frontend (HttpFrontend) initialization error: HTTP server startup failed: [Errno 98] Address already in use
INFO Starting GLib mainloop
INFO Scrobbler connected to Last.fm
INFO Starting GLib mainloop
INFO Scrobbler connected to Last.fm
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Finished refreshing Google Music library in 197s
ERROR Call to Google Music failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 157, in get_station_tracks
station_id, num_tracks=num_tracks)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1594, in get_station_tracks
station_id, num_tracks, recently_played=recently_played)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
return protocol.perform(self.session, self.validate, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
raise CallFailure(err_msg, call_name)
CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
(requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization': u''}, u'data': '{"contentFilter": 1, "stations": [{"numEntries": 150, "recentlyPlayed": [], "radioId": "c2ce2f11-7faf-3153-8577-39e2d48cf25e"}]}', u'method': u'POST', u'params': {u'tier': u'aa', u'hl': u'en_US', u'include-tracks': u'true', u'dv': 0, u'alt': u'json'}})
(response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":"Internal Error"}],"code":500,"message":"Internal Error"}}')
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 344s

2017-07-14 12_56_29-moped _ moped 0 7 0

It looks like that was an internal error from the server, not from mopidy, which caused us to fail connecting.

Are you still seeing this issue after mopidy is restarted?

Yes multiple reboots and the problem persists

I'm also having an issue with local files not showing up anymore too so I was running sudo mopidyctl local scan and this came up, basically there's some errors relating to GMusic:

Running "/usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf local scan" as user mopidy
INFO Starting Mopidy 2.1.0
INFO Loading config from builtin defaults
INFO Loading config from /etc/mopidy/mopidy.conf
INFO Loading config from command line options
INFO Enabled extensions: mpd, http, moped, stream, m3u, scrobbler, local-images, softwaremixer, file, musicbox_webclient, local, gmusic
INFO Disabled extensions: none
ERROR Extension gmusic failed during setup, this might have left the registry in a bad state.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/mopidy/main.py", line 121, in main
extension.setup(registry)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/init.py", line 45, in setup
from .backend import GMusicBackend
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/backend.py", line 17, in
from .session import GMusicSession
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 6, in
import gmusicapi
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/init.py", line 4, in
from gmusicapi.clients import Webclient, Musicmanager, Mobileclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/init.py", line 4, in
from gmusicapi.clients.webclient import Webclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/webclient.py", line 18, in
from gmusicapi.protocol import webclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/webclient.py", line 5, in
from six import raise_from
ImportError: cannot import name raise_from

Currently Gmusic is the only thing not working on my Mopidy Pi. I'm currently receiving this when checking the status of the mopidy service:

● mopidy.service - Mopidy music server
Loaded: loaded (/lib/systemd/system/mopidy.service; enabled)
Active: active (running) since Sat 2017-07-15 12:08:01 EDT; 59s ago
Process: 654 ExecStartPre=/bin/chown mopidy:audio /var/cache/mopidy (code=exited, status=0/SUCCESS)
Process: 644 ExecStartPre=/bin/mkdir -p /var/cache/mopidy (code=exited, status=0/SUCCESS)
Main PID: 663 (mopidy)
CGroup: /system.slice/mopidy.service
└─663 /usr/bin/python /usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf

Jul 15 12:08:05 mopidy mopidy[663]: from gmusicapi.clients.webclient import Webclient
Jul 15 12:08:05 mopidy mopidy[663]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/webclient.py...odule>Jul 15 12:08:05 mopidy mopidy[663]: from gmusicapi.protocol import webclient
Jul 15 12:08:05 mopidy mopidy[663]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/webclient.p...odule>Jul 15 12:08:05 mopidy mopidy[663]: from six import raise_from
Jul 15 12:08:05 mopidy mopidy[663]: ImportError: cannot import name raise_from
Jul 15 12:08:05 mopidy mopidy[663]: INFO Starting Mopidy mixer: SoftwareMixer
Jul 15 12:08:05 mopidy mopidy[663]: INFO Starting Mopidy audio
Jul 15 12:08:05 mopidy mopidy[663]: INFO Starting Mopidy backends: StreamBackend, M3UBackend, FileBackend, ...ackendJul 15 12:08:05 mopidy mopidy[663]: INFO Audio output set to "alsasink device=hw:1,0"
Hint: Some lines were ellipsized, use -l to show in full.

I let mopidy run overnight. Here's what was outputed to the terimanl. Hopefully its helpful:

INFO Starting to loading radio stations
ERROR Call to Google Music failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 157, in get_station_tracks
station_id, num_tracks=num_tracks)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1594, in get_station_tracks
station_id, num_tracks, recently_played=recently_played)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
return protocol.perform(self.session, self.validate, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
raise CallFailure(err_msg, call_name)
CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
(requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization': u''}, u'data': '{"contentFilter": 1, "stations": [{"numEntries": 150, "recentlyPlayed": [], "radioId": "c2ce2f11-7faf-3153-8577-39e2d48cf25e"}]}', u'method': u'POST', u'params': {u'tier': u'aa', u'hl': u'en_US', u'include-tracks': u'true', u'dv': 0, u'alt': u'json'}})
(response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":"Internal Error"}],"code":500,"message":"Internal Error"}}')
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 259s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
ERROR Call to Google Music failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 157, in get_station_tracks
station_id, num_tracks=num_tracks)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1594, in get_station_tracks
station_id, num_tracks, recently_played=recently_played)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
return protocol.perform(self.session, self.validate, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
raise CallFailure(err_msg, call_name)
CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
(requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization': u''}, u'data': '{"contentFilter": 1, "stations": [{"numEntries": 150, "recentlyPlayed": [], "radioId": "c2ce2f11-7faf-3153-8577-39e2d48cf25e"}]}', u'method': u'POST', u'params': {u'tier': u'aa', u'hl': u'en_US', u'include-tracks': u'true', u'dv': 0, u'alt': u'json'}})
(response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":"Internal Error"}],"code":500,"message":"Internal Error"}}')
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 270s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 264s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
ERROR Call to Google Music failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 157, in get_station_tracks
station_id, num_tracks=num_tracks)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1594, in get_station_tracks
station_id, num_tracks, recently_played=recently_played)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
return protocol.perform(self.session, self.validate, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
raise CallFailure(err_msg, call_name)
CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
(requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization': u''}, u'data': '{"contentFilter": 1, "stations": [{"numEntries": 150, "recentlyPlayed": [], "radioId": "c2ce2f11-7faf-3153-8577-39e2d48cf25e"}]}', u'method': u'POST', u'params': {u'tier': u'aa', u'hl': u'en_US', u'include-tracks': u'true', u'dv': 0, u'alt': u'json'}})
(response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":"Internal Error"}],"code":500,"message":"Internal Error"}}')
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 260s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 261s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 264s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
ERROR Call to Google Music failed
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
return func(self, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 157, in get_station_tracks
station_id, num_tracks=num_tracks)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1594, in get_station_tracks
station_id, num_tracks, recently_played=recently_played)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
return protocol.perform(self.session, self.validate, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
raise CallFailure(err_msg, call_name)
CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
(requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization': u''}, u'data': '{"contentFilter": 1, "stations": [{"numEntries": 150, "recentlyPlayed": [], "radioId": "c2ce2f11-7faf-3153-8577-39e2d48cf25e"}]}', u'method': u'POST', u'params': {u'tier': u'aa', u'hl': u'en_US', u'include-tracks': u'true', u'dv': 0, u'alt': u'json'}})
(response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":"Internal Error"}],"code":500,"message":"Internal Error"}}')
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 261s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 255s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 265s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 260s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 254s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 261s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 264s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 262s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 261s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 274s
INFO Start refreshing Google Music playlists
INFO Loaded 6 playlists from Google Music
INFO Starting to loading radio stations
INFO Loaded 79 radios from Google Music
INFO Finished refreshing Google Music playlists in 262s

As far as I can tell this looks like two separate issues. The six issue is most likely because you have an outdated version of six. The 500 error was most likely a temporary issue with Google's servers.

If you're not sure about this, can you please paste the output of mopidy deps? Thanks!

Here's mopidy deps! Thanks!

mopidy deps
Executable: /usr/local/bin/mopidy
Platform: Linux-4.9.35-v7+-armv7l-with-debian-8.0
Python: CPython 2.7.9 from /usr/lib/python2.7
Mopidy: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Mopidy-MusicBox-Webclient: 2.3.0 from /usr/local/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Mopidy>=1.1.0: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Mopidy-Moped: 0.7.0 from /usr/local/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Mopidy>=1.0.0: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Mopidy-Local-Images: 1.0.0 from /usr/local/lib/python2.7/dist-packages
uritools>=1.0: 2.0.0 from /usr/local/lib/python2.7/dist-packages
ipaddress: 1.0.17 from /usr/local/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Mopidy>=1.1: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Mopidy-Scrobbler: 1.1.1 from /usr/local/lib/python2.7/dist-packages
pylast>=0.5.7: 1.6.0 from /usr/local/lib/python2.7/dist-packages
six: 1.10.0 from /usr/local/lib/python2.7/dist-packages
Mopidy>=0.18: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Mopidy-GMusic: 2.0.0 from /usr/local/lib/python2.7/dist-packages
gmusicapi>=10.1: 10.1.0 from /usr/local/lib/python2.7/dist-packages
validictory>=0.8.0,!=0.9.2: 1.1.0 from /usr/local/lib/python2.7/dist-packages
decorator>=3.3.1: 4.0.10 from /usr/local/lib/python2.7/dist-packages
mutagen>=1.34: 1.35 from /usr/local/lib/python2.7/dist-packages
requests>=1.1.0,!=1.2.0,!=2.2.1,!=2.8.0,!=2.8.1: 2.4.3 from /usr/lib/python2.7/dist-packages
python-dateutil>=1.3,!=2.0: 2.5.3 from /usr/local/lib/python2.7/dist-packages
six>=1.5: 1.10.0 from /usr/local/lib/python2.7/dist-packages
proboscis>=1.2.5.1: 1.2.6.0 from /usr/local/lib/python2.7/dist-packages
protobuf>=3.0.0: 3.1.0.post1 from /usr/local/lib/python2.7/dist-packages
six>=1.9: 1.10.0 from /usr/local/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
oauth2client>=1.1: 4.0.0 from /usr/local/lib/python2.7/dist-packages
httplib2>=0.9.1: 0.9.2 from /usr/local/lib/python2.7/dist-packages
pyasn1>=0.1.7: 0.1.9 from /usr/local/lib/python2.7/dist-packages
six>=1.6.1: 1.10.0 from /usr/local/lib/python2.7/dist-packages
rsa>=3.1.4: 3.4.2 from /usr/local/lib/python2.7/dist-packages
pyasn1>=0.1.3: 0.1.9 from /usr/local/lib/python2.7/dist-packages
pyasn1-modules>=0.0.5: 0.0.8 from /usr/local/lib/python2.7/dist-packages
pyasn1>=0.1.8: 0.1.9 from /usr/local/lib/python2.7/dist-packages
mock>=0.7.0: 2.0.0 from /usr/local/lib/python2.7/dist-packages
six>=1.9: 1.10.0 from /usr/local/lib/python2.7/dist-packages
funcsigs>=1: 1.0.2 from /usr/local/lib/python2.7/dist-packages
pbr>=0.11: 1.10.0 from /usr/local/lib/python2.7/dist-packages
appdirs>=1.1.0: 1.4.0 from /usr/local/lib/python2.7/dist-packages
gpsoauth>=0.2.0: 0.4.0 from /usr/local/lib/python2.7/dist-packages
pycryptodomex>=3.0: 3.4.3 from /usr/local/lib/python2.7/dist-packages
requests: 2.4.3 from /usr/lib/python2.7/dist-packages
MechanicalSoup>=0.4.0: 0.6.0 from /usr/local/lib/python2.7/dist-packages
beautifulsoup4: 4.5.1 from /usr/local/lib/python2.7/dist-packages
six>=1.4: 1.10.0 from /usr/local/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
six>=1.9.0: 1.10.0 from /usr/local/lib/python2.7/dist-packages
future: 0.16.0 from /usr/local/lib/python2.7/dist-packages
cachetools>=1.0: 2.0.0 from /usr/local/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Mopidy>=1.0: 2.0.1 from /usr/local/lib/python2.7/dist-packages
tornado>=2.3: 3.2.2 from /usr/lib/python2.7/dist-packages
setuptools: 5.5.1 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
requests>=2.0: 2.4.3 from /usr/lib/python2.7/dist-packages
Pykka>=1.1: 1.2.1 from /usr/lib/python2.7/dist-packages
GStreamer: 1.4.4.0 from /usr/lib/python2.7/dist-packages/gi
Detailed information:
Python wrapper: python-gi 3.14.0
Relevant elements:
Found:
uridecodebin
souphttpsrc
appsrc
alsasink
osssink
oss4sink
pulsesink
id3demux
id3v2mux
lamemp3enc
mad
mpegaudioparse
vorbisdec
vorbisenc
vorbisparse
oggdemux
oggmux
oggparse
flacdec
flacparse
shout2send
Not found:
flump3dec
mpg123audiodec

ERROR Extension gmusic failed during setup, this might have left the registry in a bad state.
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/mopidy/main.py", line 121, in main
extension.setup(registry)
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/init.py", line 45, in setup
from .backend import GMusicBackend
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/backend.py", line 17, in
from .session import GMusicSession
File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 6, in
import gmusicapi
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/init.py", line 4, in
from gmusicapi.clients import Webclient, Musicmanager, Mobileclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/init.py", line 4, in
from gmusicapi.clients.webclient import Webclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/webclient.py", line 18, in
from gmusicapi.protocol import webclient
File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/webclient.py", line 5, in
from six import raise_from
ImportError: cannot import name raise_from

Could you run python and then type from six import raise_from?
What is the result? (I expect no warning or error)

sudo python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
from six import raise_from

that's it nothing came up

Using sudo python instead of python changes the execution context (which we are interested in). Please try it again without sudo.

btw: I fully agree with belak's comment: the two issues (gmusic and local scan) are probably completely different and unrelated.

regarding gmusic: does it work in general? In this case the log messages are just traces of temporary connection/service problems. There is nothing that we could (or need to) do about that.

regarding the local scan:

  • why is your python installation located in /usr/local/lib instead of /usr/lib? Did you download python manually instead of using your package manager?
  • what is the output of grep raise /usr/local/lib/python2.7/dist-packages/six.py?

I ran it with sudo and received the same output.

Gmusic doesn't show up on the web interface. It says the extension is loading but on the musicbox interface there is no Google Music.

Local scan was working again.

At this point I've wiped my SD card and am reinstalling everything from scratch. It seems to be the quicker option. Thanks for all your help. I don't know why gmusic just stopped working.

So I've reinstalled it from scratch and have it running as a service. Gmusic is failing to load though. Its showing as:

[gmusic]
enabled = false ; Extension disabled by self check.

No idea why. Same exact config for gmusic as when it was working. Here's the config:

[gmusic]
enabled = true
all_access = true
username = username@gmail.com
password = password
deviceid = deviceid
bitrate = 320
radio_stations_in_browse = true
radio_stations_as_playlists = true
radio_stations_count =
radio_tracks_count = 150

Here's the service status:

sudo systemctl status mopidy
● mopidy.service - Mopidy music server
Loaded: loaded (/lib/systemd/system/mopidy.service; enabled)
Active: active (running) since Sun 2017-07-23 20:30:37 EDT; 5min ago
Process: 8754 ExecStartPre=/bin/chown mopidy:audio /var/cache/mopidy (code=exited, status=0/SUCCESS)
Process: 8751 ExecStartPre=/bin/mkdir -p /var/cache/mopidy (code=exited, status=0/SUCCESS)
Main PID: 8757 (mopidy)
CGroup: /system.slice/mopidy.service
└─8757 /usr/bin/python /usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf

Jul 23 20:30:38 mopidy mopidy[8757]: INFO Audio output set to "alsasink device=hw:1,0"
Jul 23 20:30:38 mopidy mopidy[8757]: INFO No local library metadata cache found at /var/lib/mopidy/local/li...ssage.
Jul 23 20:30:38 mopidy mopidy[8757]: INFO Loaded 0 local tracks using json
Jul 23 20:30:38 mopidy mopidy[8757]: INFO Starting Mopidy core
Jul 23 20:30:38 mopidy mopidy[8757]: INFO Starting Mopidy frontends: ScrobblerFrontend, MpdFrontend, HttpFrontend
Jul 23 20:30:38 mopidy mopidy[8757]: INFO MPD server running at [::]:6600
Jul 23 20:30:38 mopidy mopidy[8757]: INFO HTTP server running at [::]:6680
Jul 23 20:30:38 mopidy mopidy[8757]: INFO Starting GLib mainloop
Jul 23 20:30:38 mopidy mopidy[8757]: INFO Creating dir /var/lib/mopidy/local-images
Jul 23 20:30:39 mopidy mopidy[8757]: INFO Scrobbler connected to Last.fm
Hint: Some lines were ellipsized, use -l to show in full.

Ok so I have gmusic enabled again now with a fresh install (needed to upgrade pyasn via sudo pip install --upgrade pyasn1)

But it Google Music still isn't showing as an option with Files and Local Media under the Musicbox interface. Maybe its Google? Can anyone else confirm if Gmusic is working for them?

system status:

sudo mopidyctl local scan
Running "/usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf local scan" as user mopidy
INFO Starting Mopidy 2.1.0
INFO Loading config from builtin defaults
INFO Loading config from /etc/mopidy/mopidy.conf
INFO Loading config from command line options
INFO Enabled extensions: mpd, http, file, stream, gmusic, scrobbler, musicbox_webclient, softwaremixer, moped, local-images, local, m3u
INFO Disabled extensions: none
INFO Found 26103 files in media_dir.

Ok so its all working again now after a fresh new install. The reason GMusic didn't load with the new install is because for some reason my device ID that was being used before all this started was now not working. Replaced the device ID with a new one when I saw it was showing invalid in the output, restarted the mopidy service and GMusic loaded. Everything works now.

Still have no idea what cause GMusic to stop working in the first place but now I wonder about the device ID....

I get the same error, on both of my Arch Linux machines. Both used to work fine, but starting maybe three months ago I have been getting this error when it queries stations, as well as another one when I try to search for anything, which means searching is broken for me.

I'm still having these issues again. Gmusic logs in fine but can't play anything.

sudo systemctl status mopidy
● mopidy.service - Mopidy music server
Loaded: loaded (/lib/systemd/system/mopidy.service; enabled)
Active: active (running) since Sat 2017-09-09 08:14:56 EDT; 3min 39s ago
Process: 2763 ExecStartPre=/bin/chown mopidy:audio /var/cache/mopidy (code=exited, status=0/SUCCESS)
Process: 2760 ExecStartPre=/bin/mkdir -p /var/cache/mopidy (code=exited, status=0/SUCCESS)
Main PID: 2766 (mopidy)
CGroup: /system.slice/mopidy.service
└─2766 /usr/bin/python /usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf

Sep 09 08:18:26 mopidy mopidy[2766]: station_id, num_tracks=num_tracks)
Sep 09 08:18:26 mopidy mopidy[2766]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1625,...n_tracks
Sep 09 08:18:26 mopidy mopidy[2766]: station_id, num_tracks, recently_played=recently_played)
Sep 09 08:18:26 mopidy mopidy[2766]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
Sep 09 08:18:26 mopidy mopidy[2766]: return protocol.perform(self.session, self.validate, *args, **kwargs)
Sep 09 08:18:26 mopidy mopidy[2766]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
Sep 09 08:18:26 mopidy mopidy[2766]: raise CallFailure(err_msg, call_name)
Sep 09 08:18:26 mopidy mopidy[2766]: CallFailure: ListStationTracks: 500 Server Error: Internal Server Error
Sep 09 08:18:26 mopidy mopidy[2766]: (requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers'...
Sep 09 08:18:26 mopidy mopidy[2766]: (response was: u'{"error":{"errors":[{"domain":"global","reason":"internalError","message":...ror"}}')
Hint: Some lines were ellipsized, use -l to show in full.

About ready to give up on mopidy :-/

These errors show up whenever I try to load a Gmusic radio station:

Sep 09 08:31:12 mopidy mopidy[839]: station_id, num_tracks=num_tracks)
Sep 09 08:31:12 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 1625, in get_station_tracks
Sep 09 08:31:12 mopidy mopidy[839]: station_id, num_tracks, recently_played=recently_played)
Sep 09 08:31:12 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
Sep 09 08:31:12 mopidy mopidy[839]: return protocol.perform(self.session, self.validate, *args, **kwargs)
Sep 09 08:31:12 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
Sep 09 08:31:12 mopidy mopidy[839]: raise CallFailure(err_msg, call_name)
Sep 09 08:31:12 mopidy mopidy[839]: CallFailure: ListStationTracks: 401 Client Error: Unauthorized
Sep 09 08:31:12 mopidy mopidy[839]: (requests kwargs: {u'url': u'https://mclients.googleapis.com/sj/v2.5/radio/stationfeed', u'headers': {u'Content-Type': u'application/json', u'Authorization'...
Sep 09 08:31:12 mopidy mopidy[839]: (response was: u'{"error":{"errors":[{"domain":"global","reason":"authError","message":"Invalid Credentials","locationType":"header","location"...dentials"}}')
Hint: Some lines were ellipsized, use -l to show in full.

On the chance I get a station to load, when attempting to play a song, I get the following:

Sep 09 08:32:00 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 388, in get_stream_url
Sep 09 08:32:00 mopidy mopidy[839]: return self._make_call(mobileclient.GetStreamUrl, song_id, device_id, quality)
Sep 09 08:32:00 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
Sep 09 08:32:00 mopidy mopidy[839]: return protocol.perform(self.session, self.validate, *args, **kwargs)
Sep 09 08:32:00 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
Sep 09 08:32:00 mopidy mopidy[839]: raise CallFailure(err_msg, call_name)
Sep 09 08:32:00 mopidy mopidy[839]: CallFailure: GetStreamUrl: 403 Client Error: Forbidden
Sep 09 08:32:00 mopidy mopidy[839]: (requests kwargs: {u'url': u'https://mclients.googleapis.com/music/mplay', u'headers': {u'X-Device-ID': u'iosD9955459-B62B-40ED-B82F-DAB164FE98FF', u'Author...
Sep 09 08:32:00 mopidy mopidy[839]: (response was: u'\n\n<TITLE>Forbidden</TITLE>\n\n\n

Forbidden

\n

Error 403<...\n\n')
Sep 09 08:32:00 mopidy mopidy[839]: WARNING Track is not playable: gmusic:track:Tqvlm6j3ouch5bpttnanogfygfu

Also getting these errors when trying to play a song from going to a specific artist and not radio:

Sep 09 08:33:42 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 388, in get_stream_url
Sep 09 08:33:42 mopidy mopidy[839]: return self._make_call(mobileclient.GetStreamUrl, song_id, device_id, quality)
Sep 09 08:33:42 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/shared.py", line 84, in _make_call
Sep 09 08:33:42 mopidy mopidy[839]: return protocol.perform(self.session, self.validate, *args, **kwargs)
Sep 09 08:33:42 mopidy mopidy[839]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/protocol/shared.py", line 226, in perform
Sep 09 08:33:42 mopidy mopidy[839]: raise CallFailure(err_msg, call_name)
Sep 09 08:33:42 mopidy mopidy[839]: CallFailure: GetStreamUrl: 403 Client Error: Forbidden
Sep 09 08:33:42 mopidy mopidy[839]: (requests kwargs: {u'url': u'https://mclients.googleapis.com/music/mplay', u'headers': {u'X-Device-ID': u'iosD9955459-B62B-40ED-B82F-DAB164FE98FF', u'Author...
Sep 09 08:33:42 mopidy mopidy[839]: (response was: u'\n\n<TITLE>Forbidden</TITLE>\n\n\n

Forbidden

\n

Error 403<...\n\n')
Sep 09 08:33:42 mopidy mopidy[839]: WARNING Track is not playable: gmusic:track:567db1f0-5a41-3f64-8bf2-ba47dcc2de90
Hint: Some lines were ellipsized, use -l to show in full.

Did Google change something on their end that broke gmusic?

Sep 09 09:03:43 mopidy mopidy[927]: ERROR Call to Google Music failed
Sep 09 09:03:43 mopidy mopidy[927]: Traceback (most recent call last):
Sep 09 09:03:43 mopidy mopidy[927]: File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
Sep 09 09:03:43 mopidy mopidy[927]: return func(self, *args, **kwargs)
Sep 09 09:03:43 mopidy mopidy[927]: File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 90, in get_stream_url
Sep 09 09:03:43 mopidy mopidy[927]: return self.api.get_stream_url(song_id, quality=quality)
Sep 09 09:03:43 mopidy mopidy[927]: File "", line 2, in get_stream_url
Sep 09 09:03:43 mopidy mopidy[927]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/utils/utils.py", line 293, in wrapper
Sep 09 09:03:43 mopidy mopidy[927]: return function(*args, **kw)
Sep 09 09:03:43 mopidy mopidy[927]: File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 388, in get_stream_url

Still broke. Just doesn't even load anymore. Is this the same anyone else? Considering chromecast or Google Home at this point to play Google Music.

Oct 06 11:57:27 mopidy mopidy[1072]: ERROR Actor died: GMusicBackend (urn:uuid:747058da-f596-4fec-aca7-5317755f1692) not found

Have you tried updating gmusicapi? It looks like 10.1.2 is the latest version and the one that you have listed as installed is 10.1.0.

upgraded gmusicapi...still getting this:

pi@mopidy:~ $ sudo systemctl status mopidy -l
● mopidy.service - Mopidy music server
Loaded: loaded (/lib/systemd/system/mopidy.service; enabled)
Active: active (running) since Sat 2017-10-14 21:00:44 EDT; 56s ago
Process: 8679 ExecStartPre=/bin/chown mopidy:audio /var/cache/mopidy (code=exited, status=0/SUCCESS)
Process: 8676 ExecStartPre=/bin/mkdir -p /var/cache/mopidy (code=exited, status=0/SUCCESS)
Main PID: 8682 (mopidy)
CGroup: /system.slice/mopidy.service
└─8682 /usr/bin/python /usr/bin/mopidy --config /usr/share/mopidy/conf.d:/etc/mopidy/mopidy.conf

Oct 14 21:01:15 mopidy mopidy[8682]: * b6eef7c8e0532c3577a337207c6278a386e01d2aad0fdc8c4299ad45b9a64a95
Oct 14 21:01:15 mopidy mopidy[8682]: * c0c3caa2a0489df5384eb05d243396898c0b29f1893fdaa1f777034e061f6317
Oct 14 21:01:19 mopidy mopidy[8682]: INFO Loaded 19094 local tracks using json
Oct 14 21:01:19 mopidy mopidy[8682]: ERROR Actor died: GMusicBackend (urn:uuid:10811e54-a7d4-4e80-843b-ac6996235307) not found
Oct 14 21:01:19 mopidy mopidy[8682]: INFO Starting Mopidy core
Oct 14 21:01:19 mopidy mopidy[8682]: INFO Starting Mopidy frontends: ScrobblerFrontend, GMusicScrobblerFrontend, MpdFrontend, HttpFrontend
Oct 14 21:01:19 mopidy mopidy[8682]: INFO MPD server running at [::]:6600
Oct 14 21:01:19 mopidy mopidy[8682]: INFO HTTP server running at [::]:6680
Oct 14 21:01:19 mopidy mopidy[8682]: INFO Starting GLib mainloop
Oct 14 21:01:19 mopidy mopidy[8682]: INFO Scrobbler connected to Last.fm

I'm seeing a similar error message on Mac using:

  • Mopidy 2.1.0
  • Mopidy-GMusic 2.0.0
  • gmusicapi 10.1.2
        WARNING  Failed to get stream url for Tttdiyakwdlr74555tswq2cblty.
WARNING  Please ensure your deviceid is set correctly.
ERROR    Call to Google Music failed
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mopidy_gmusic/session.py", line 32, in inner_wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/mopidy_gmusic/session.py", line 90, in get_stream_url
    return self.api.get_stream_url(song_id, quality=quality)
  File "<decorator-gen-102>", line 2, in get_stream_url
  File "/usr/local/lib/python2.7/site-packages/gmusicapi/utils/utils.py", line 293, in wrapper
    return function(*args, **kw)
  File "/usr/local/lib/python2.7/site-packages/gmusicapi/clients/mobileclient.py", line 388, in get_stream_url
    return self._make_call(mobileclient.GetStreamUrl, song_id, device_id, quality)
  File "/usr/local/lib/python2.7/site-packages/gmusicapi/clients/shared.py", line 84, in _make_call
    return protocol.perform(self.session, self.validate, *args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/gmusicapi/protocol/shared.py", line 226, in perform
    raise CallFailure(err_msg, call_name)
CallFailure: GetStreamUrl: 403 Client Error: Forbidden for url: https://mclients.googleapis.com/music/mplay?opt=med&mjck=Tttdiyakwdlr74555tswq2cblty&pt=e&slt=1511845330916&tier=aa&sig=iKxHuK8Ez6xegSJGk63e6KvSJAs&hl=en_US&dv=0&net=mob
(requests kwargs: {u'url': u'https://mclients.googleapis.com/music/mplay', u'headers': {u'X-Device-ID': u'784F43A0D3E1', u'Authorization': u'<omitted>'}, u'allow_redirects': False, u'params': {u'opt': u'med', u'mjck': u'Tttdiyakwdlr74555tswq2cblty', u'pt': u'e', u'slt': '1511845330916', u'tier': u'aa', u'sig': 'iKxHuK8Ez6xegSJGk63e6KvSJAs', u'hl': u'en_US', u'dv': 0, u'net': u'mob'}, u'method': u'GET'})
(response was: u'<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')
WARNING  Track is not playable: gmusic:track:Tttdiyakwdlr74555tswq2cblty

I've started having exactly this issue (same log as previous comment) using Pi Musicbox sometime in the last couple weeks (don't know exactly when it started). This is after months having GMusic work flawlessly for me.

@dnikkel Might this be #192 ?

@kingosticks yes, it certainly could be. I'm just using the default (left blank, so MAC address). But from the thread on #192, I can't tell if it's sufficient to hard-code the MAC address or if I need to update components as well. Do you know?

BTW, I have had one change in the last couple weeks - a change to my internet package (same provider) which caused a modem reset and possibly a new external IP. Is it possible Google is trying to correlates MAC and IP addresses for non-mobile devices? I have tried just playing from Chrome on my MacBook and no issues with that.

@dnikkel you need (as far as we know) to put the id of an android device. If you use the master branch you will be shown a list of registered id on startup

The fix for #192 indicates you just need to change your config, I think they were setting it to their actual mobile phone mac but I don't know if that's necessary. Better asking someone in that thread directly.

@adnidor @kingosticks And indeed that seems to be the case. I plugged in one my of authorized Android device ID's (I have several) and I'm back to streaming GMusic! Thanks for your help.

This issue seems to have a number of different errors spread across different parts of the codebase. If you're still having issues, please file a new (separate) issue with what you're having trouble with. Thanks!