mirror of
https://github.com/ZHANGTIANYAO1/teamspeak-music-bot.git
synced 2026-10-02 04:52:50 +08:00
Many users' QQ playlists (especially collected/subscribed ones) contain a large fraction of songs that return result=104003 (region/copyright restricted) for the current account. Sequential retry-skip wasted time guessing — for the user's ACG古风 collected playlist, only 3 of 115 songs are actually streamable, so a 20-retry budget had < 50% chance of finding a hit before giving up. Add a getPlayableSongIds(ids) method to the QQ provider that calls the upstream /getMusicPlay with a comma-separated batch of mids — the wrapper resolves all of them in a single upstream call (~2-3s for 100+ songs). /play-playlist now duck-types this method and, when present, filters the playlist down to playable songs before queueing. Response message reports "Loaded N of M songs (rest are copyright/ region restricted)" so the user sees exactly what's happening instead of guessing why the queue is short or playback didn't start. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>