diff --git a/src/main/plugins/discordrpc.ts b/src/main/plugins/discordrpc.ts index e65c1f91..0bf95453 100644 --- a/src/main/plugins/discordrpc.ts +++ b/src/main/plugins/discordrpc.ts @@ -102,7 +102,15 @@ export default class DiscordRichPresence { return; } const listenURL = `https://cider.sh/p?s&id=${attributes.playParams.id}` // cider://play/s/[id] (for song) - const AMWebURL = `https://music.apple.com/us/song/${attributes.playParams.catalogId}` + let AMWebURL = ''; + if(attributes.playParams.catalogId == null){ + AMWebURL = `https://music.apple.com/${attributes.storefrontId}/song/${attributes.playParams.id}` + console.log("No Catalog ID"); + } + else { + AMWebURL = `https://music.apple.com/${attributes.storefrontId}/song/${attributes.playParams.catalogId}` + } + console.log("DiscordRPC URL: ", AMWebURL); this._activity = { details: attributes.name, state: `${attributes.artistName ? `by ${attributes.artistName}` : ''}`, diff --git a/src/preload/cider-preload.js b/src/preload/cider-preload.js index 7d921eeb..43627aa9 100644 --- a/src/preload/cider-preload.js +++ b/src/preload/cider-preload.js @@ -43,7 +43,8 @@ const MusicKitInterop = { const isPlayingExport = MusicKit.getInstance().isPlaying; const remainingTimeExport = MusicKit.getInstance().currentPlaybackTimeRemaining; const attributes = (nowPlayingItem != null ? nowPlayingItem.attributes : {}); - + const storefrontId = MusicKit.getInstance().storefrontId; + attributes.storefrontId = storefrontId; attributes.status = isPlayingExport ?? false; attributes.name = attributes?.name ?? 'No Title Found'; attributes.artwork = attributes?.artwork ?? { url: '' };