Skip to content

iiarchives/jellyfin-rpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jellyfin/Feishin RPC

Not to be confused with jellyfin-rpc by Radiicall.
This is a Python app that displays the currently playing song from Jellyfin (or Feishin) on your discord profile.

This app has two files:

  • Jellyfin RPC (for anything Jellyfin related)
  • MPRIS RPC (intended for Feishin, or any other MPRIS-based clients)

You will need to customize your configuration depending on the one you will be using.

Installation

  • Install Python 3.11 or above
  • Clone the repository or download the ZIP
  • Install dependencies via python3 -m pip install -r requirements.txt
  • Configure following Configuration
  • Launch via python3 jellyfin-rpc.py

SystemD

[Unit]
Description=Jellyfin-RPC Service
After=network.target

[Service]
Type=simple
ExecStart=python3 /path/to/jellyfin-rpc.py

[Install]
WantedBy=default.target

Configuration

All configuration goes in ~/.config/iipython/jellyfin-rpc.toml.

Jellyfin

# The preferred URL of your server (hostnames supported)
url = "http://192.168.0.1:8096"

# Your Jellyfin API key
api_key = "eeeeeeeeeeeeeeeeeeeeeeeeeveeeeeee"

# (optional) Use a public imgproxy server? (needed most of the time)
imageproxy_enabled = true
imageproxy_url = "https://images.iipython.dev"

# (optional) The public URL of your server (for port-forwarded album art)
url_public = "https://jellyfin.yourdomain.com"

# (optional) Fetch album art from MusicBrainz?
musicbrainz_album_art = false

# (optional) Time between Jellyfin requests (defaults to 1 second)
update_time = 0.1

MPRIS (Feishin)

# The LOCAL URL of your server (hostnames supported)
# If you want discord to use the art url your client sends, set this AND url_public to ""
url = "http://192.168.0.1:8096"

# (optional) Use a public imgproxy server? (needed most of the time)
# Obviously, you can self host your own imgproxy server as desired.
imageproxy_enabled = true
imageproxy_url = "https://images.iipython.dev"

# (optional) The public URL of your server (for port-forwarded album art, passed to imgproxy)
# Leave this BLANK if you don't want to edit the url your client sends
url_public = "https://jellyfin.yourdomain.com"

# (optional) Time between MPRIS updates (defaults to 1 second)
# Recommended to be as fast as possible for your hardware without causing
# a major performance impact.
update_time = 0.1

# (optional) The name your client uses to identify itself over the MPRIS dbus API
# You can usually find this using a dbus client such as qdbus, however milage may vary
# Feel free to submit a PR if you get it working with a custom client
client_name = "Feishin"

About

Jellyfin Music RPC for Discord

Resources

License

Stars

Watchers

Forks

Languages