Last active 1670065456

uses Tautulli as an easy way to get plex session data. has to be run on the same machine as your discord desktop client for access to RPC

Revision 8044c96ff91823446f8b6c0a29d6dee4b2c3e1a3

discord_presence_plex.py Raw
1from pypresence import Presence # https://github.com/qwertyquerty/pypresence
2from requests import get
3from time import sleep
4from sys import exit
5
6client_id = "556909532417228919"
7user = "blha303"
8tautulli_instance = "https://tau.home.b303.me" # https://github.com/Tautulli/Tautulli
9
10RPC = Presence(client_id)
11RPC.connect()
12
13while 1:
14 my = [s for s in get(tautulli_instance + "/get_activity").json()["sessions"] if s["user"] == user]
15 if my:
16 my = my[0]
17 s = int(my["view_offset"])//1000
18 m,s = divmod(s,60)
19 h,m = divmod(m,60)
20 my["view_offset"] = "{:02d}:{:02d}:{:02d}".format(h,m,s)
21 RPC.update(details="{grandparent_title} ({studio}) {parent_title} - {title}".format(**my),
22 state="{state} | {view_offset} | {stream_video_width}x{stream_video_height}".format(**my))
23 else:
24 RPC.clear()
25 sleep(15)