simon-weber / Autoplaylists-for-Google-Music

Adds autoplaylists, aka iTunes "smart playlists", to Google Music.
https://autoplaylists.simon.codes
MIT License
94 stars 18 forks source link

Autoplaylists plugin simply does not work on my end #204

Closed nononolimits closed 4 years ago

nononolimits commented 4 years ago

So, I installed the chrome plugin and am running it as a free trial.

When I create a new autoplaylist and hit "test", nothing happens. When I press "Sync all playlists now", nothing happens.

In Google Play Music, no new playlists get created. I already tried reloading the plugin (by disabling and enabling it again), I also tried refreshing auth token.

When I even try to run a manual query in chrome-extension://blbompphddfibggfmmfcgjjoadebinem/html/debug.html and press "run" button, nothing happens. This is the query I ran:

const db = dbs[Object.keys(dbs)[0]]; const Track = db.getSchema().table('Track'); db.select().from(Track) .where(Track.artist.eq('Wire')) ;

I definitely have songs by Wire in my Google Play Music account.

Do mind that I use a free account on Google Play Music and that I only have music on there which I uploaded myself (through Music Manager).

My browser is chrome 76.0.3809.100

nononolimits commented 4 years ago

When I hit "Sync all playlists now", then this is console output:

image

simon-weber commented 4 years ago

My guess would be something weird happened when initially retrieving your library, maybe related to auth.

If you don't have anything in the extension you're worried about losing yet, the easiest way to reset everything is to just uninstall and reinstall. If you're still seeing the same thing after that, the logs and/or network tab should point to the root cause -- the current message is helpful, but is probably just fallout from an earlier issue.

nononolimits commented 4 years ago

Thanks for your reply! Tried uninstalling the plugin and installing again. Didn't help. This should be full output: blbompphddfibggfmmfcgjjoadebinem-1565976070813.log

nononolimits commented 4 years ago

And console output of html/playlists.html:

navbar.js:5126 Error: timed out for callback => { chrome.runtime.sendMessage({action: 'getStatus'}, status => callback(new Date().getTime() - status.lastSyncInfo.ts < 30000)); }: [object Arguments] at syncpage.js:9274 at syncpage.js:9315 console. @ navbar.js:5126 app.getsentry.com/api/66349/store/?sentry_version=7&sentry_client=raven-js%2F3.17.0&sentry_key=ea691c5833f34aa085df5e5aee9a46f3:1 Failed to load resource: the server responded with a status of 403 (FORBIDDEN)

nononolimits commented 4 years ago

Maybe also something I should mention: my library has 88.808 songs in it.

simon-weber commented 4 years ago

Hm, that looks like just the background script traceback rather than the full log, though it's named as if it should be the full log. Maybe you've got some levels disabled? Try reloading, opening the logs, then selecting "Default" in the dropdown next to the filter textbox. It should look like this afterwards:

image

I'd expect to see at least some early messages along the lines of "got verifyToken response" and "opening db". Right-click anywhere + save-as should include those and hopefully point us in the right direction.

I don't think library size should matter too much but it might be an issue if for some reason Google's not writing out an idb for you, which happens sometimes.

nononolimits commented 4 years ago

Ah, I know what I did wrong with saving log, I filtered only errors. I now did the same, but now exported complete log: blbompphddfibggfmmfcgjjoadebinem-1565984772675.log

I also tried a different chrome plugin (https://chrome.google.com/webstore/detail/lastfm-for-google-play-mu/phgfbocbablicfiplgfeckpialhcbmkh), so info on that one may be in logs too now. But, that one doesn't seem to work either.

simon-weber commented 4 years ago

Perfect; thanks!

It looks like auth is ok, but there's an issue when querying the Google Music tab for your library. Try this:

It should end up looking something like this: image

I expect we'll find an error during the queryIDB request.

nononolimits commented 4 years ago

I did everything you asked, but when I filter console for "querypage" it comes up with nothing.

This is my latest log: blbompphddfibggfmmfcgjjoadebinem-1566025898397.log

In it also me trying to press "Sync all playlists now" and doing that same manual query in html/debug.html too.

simon-weber commented 4 years ago

Ah, I need the logs from the extension code running in the Google Music tab this time (rather than from the background script, which we'd been looking at previously). So, to be more specific, when you open the Google Music tab and have it selected, hit ctrl shift J or ctrl option J: this should open a console for the tab with the information we need.

nononolimits commented 4 years ago

Aha, you're right, I'm getting this:

image

simon-weber commented 4 years ago

Ah, excellent! So it was a library size issue after all.

Thanks so much for helping me track this down. I'll look into splitting up that response. It might take some doing since everything's built to assume 1 request == 1 response, so no promises on when I'll get it done.

nononolimits commented 4 years ago

Take your time. If you need more info on my part, or stuff I should try, just let me know.

simon-weber commented 4 years ago

Alright, those responses are now batched into 1k track chunks to avoid the limit. You should get the new version automatically -- let me know how it goes!

nononolimits commented 4 years ago

Yes, that did the trick! All is working as should now.

Thanks for all your patience and help.

simon-weber commented 4 years ago

Great! Thanks for sticking with me while we debugged it.