re-auth every 10min

This commit is contained in:
2025-12-10 01:45:37 +01:00
parent 7a3a20cb32
commit 260e3ffc87
2 changed files with 8 additions and 4 deletions

View File

@@ -4,8 +4,11 @@ from getmac import get_mac_address
from jellyfin.models import JellyfinMediaItem, JellyfinMediaType
from datetime import datetime
import logging
import time
import os
AUTH_TIMEOUT = 10 * 60 # 10 minutes
class JellyfinApiClient:
def __init__(self):
machine_name = os.uname().nodename
@@ -18,6 +21,7 @@ class JellyfinApiClient:
self.client.config.app('jellydisc', '0.0.1', machine_name, unique_id)
self.client.config.data['auth.ssl'] = True
self.last_auth_time = None
self.authenticate()
self.logger.info("Connected to Jellyfin server.")
@@ -30,9 +34,13 @@ class JellyfinApiClient:
settings.jellyfin_username,
settings.jellyfin_password
)
self.last_auth_time = time.now()
self.logger.info("Authenticated with Jellyfin server.")
def get_current_playback(self) -> JellyfinMediaItem | None:
if time.now() - self.last_auth_time > AUTH_TIMEOUT:
self.authenticate()
self.logger.info("Fetching current playback information...")
sessions = self.client.jellyfin.get_sessions()

View File

@@ -26,10 +26,6 @@ def main():
logging.info("Shutting down...")
discordRPC.clear()
break
except:
logging.exception("An error occurred in the main loop.")
jellyfinApiClient.authenticate()
time.sleep(15)
if __name__ == "__main__":
main()