/iTunes-Discord-RP

iTunes Rich Presence for Discord made in Java (for MacOS and Windows)

Primary LanguageJavaMIT LicenseMIT

iTunes Rich Presence for Discord

This is an application that lets you have a personalized Discord status based on what you're listening to on iTunes (or Music, if you're on MacOS 10.15+). The status will show the song name, artist, album name, time elapsed since the track started playing and index of the track in the album. Additionally, an image with a "playing" or "paused" button will be shown in case the track is playing or paused. For some examples, see the screenshots.

Features

  • Simple to use.
  • No in-app login required.
  • Lightweight (~1.5MB file).
  • Works on both MacOS and Windows.
  • Ugly UI.
  • Some customization options on how the Discord status will be displayed.

Requirements

  • MacOS / Windows.
  • A Java Runtime Environment (JRE), minimum version 1.8 (you can download it from here).
  • If the application displays an error window even when everything is set up correctly, installing the Java Development Kit will fix the issue (you can download it from here).
  • iTunes (or Music, if using MacOS 10.15+) and Discord applications.
  • For Windows users: this application should work for iTunes version 4.7 or later.

Usage

  • Download the application as:
    • jar: it can be run on either OS.
    • dmg: image that contains the .app bundle that can be run on MacOS as a native application (double click on the .dmg file, then extract the .app file to wherever you want).
    • exe: executable that can be run on Windows as a native application.
  • All of these versions can be found here under Assets
  • Double click on it.
  • Done!

Homebrew

If you're a Mac user and have homebrew installed, you can easily install this app as a Cask (it'll also update automatically when using the cask upgrade command, and it doesn't require you to bypass Gatekeeper). All you need to do is run this command:

brew install --cask kkevinm/itunes-discord-rp/itunesdiscordrp

This will tap the itunes-discord-rp repository and then install the cask like normal.

F.A.Q.

    • Q: The application runs fine, but my status won't update, what do I do?
    • A: go to Settings -> Game Activity and make sure the option Display currently running game as a status message is on. Additionally, the status won't be displayed while your Discord status is set to invisible.
    • Q: Gatekeeper won't let me run the app/jar on my Mac!
    • A: Right-click on the app/jar file and hit Open. Then hit Open in the dialog that appears. After doing it this way, the app should open fine just by double clicking on it.
    • Q: Can I hide the app's window?
    • A: Yes, if your system supports it, the app will show a button on the menu bar / system tray. Clicking on it will hide (or show, if clicking it again) the main window.
    • Q: I'm on Mac and the app seems to freeze often (for example, the status on Discord doesn't update after a while).

    • A: This can be caused by App Nap, a feature that puts apps to sleep when they're in the background. You can try disabling App Nap by pasting this line in the Terminal and hitting enter (afterwards, restart the computer to make it take effect):

      defaults write NSGlobalDomain NSAppSleepDisabled -bool YES

    • Q: Can you make so the album cover of the playing song is shown in the status?
    • A: No, Discord doesn't allow you to upload pictures dynamically (outside of special applications like Spotify).
    • Q: Can you change "Playing Music" to "Listening to Music"?
    • A: No, the public Rich Presence API currently doesn't let you change the type of activity in the status.

Screenshots

Status preview

alt

Status while playing

alt

Status while paused

alt

Status with long names

alt

To-dos

  • Javadocs.
  • Unit tests.
  • Spotify integration (easy but rather useless).
  • Command line only interface.
  • Allow customization of the rich presence elements.
  • Make it a menu bar app for MacOS.

Acknowledgements

Disclaimer

iTunes is a trademark of Apple Inc., registered in the U.S. and other countries.
This application has not been authorized, sponsored, or otherwise approved by Apple Inc.