improve start/end typing
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from pydantic import BaseModel
|
||||
from pydantic import BaseModel, NonNegativeInt
|
||||
from pypresence.types import ActivityType
|
||||
from typing import Optional
|
||||
|
||||
@@ -9,6 +9,6 @@ class DiscordRPCUpdatePayload(BaseModel):
|
||||
subtitle: str
|
||||
image_url: str
|
||||
details: str
|
||||
start: Optional[int]
|
||||
end: Optional[int]
|
||||
start: Optional[NonNegativeInt]
|
||||
end: Optional[NonNegativeInt]
|
||||
activity_type: ActivityType
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from pydantic import BaseModel, HttpUrl
|
||||
from pydantic import BaseModel, HttpUrl, NonNegativeInt
|
||||
from enum import StrEnum
|
||||
from typing import Optional, Union
|
||||
from discord.models import DiscordRPCUpdatePayload
|
||||
@@ -29,8 +29,8 @@ class JellyfinMediaItem(BaseModel):
|
||||
name: str
|
||||
type: JellyfinMediaType
|
||||
image_url: HttpUrl
|
||||
start: Optional[int]
|
||||
end: Optional[int]
|
||||
start: Optional[NonNegativeInt]
|
||||
end: Optional[NonNegativeInt]
|
||||
metadata: Union[JellyfinMusicMediaMetadata,
|
||||
JellyfinMovieMediaMetadata,
|
||||
JellyfinEpisodeMediaMetadata]
|
||||
|
||||
18
main.py
18
main.py
@@ -5,28 +5,28 @@ import coloredlogs
|
||||
import logging
|
||||
import time
|
||||
|
||||
coloredlogs.install(
|
||||
|
||||
def main():
|
||||
coloredlogs.install(
|
||||
level=logging.INFO,
|
||||
fmt='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
|
||||
|
||||
discordRPC = DiscordRPC()
|
||||
jellyfinApiClient = JellyfinApiClient()
|
||||
discord_rpc = DiscordRPC()
|
||||
jellyfin_api_client = JellyfinApiClient()
|
||||
|
||||
|
||||
def main():
|
||||
while True:
|
||||
try:
|
||||
media_item = jellyfinApiClient.get_current_playback()
|
||||
media_item = jellyfin_api_client.get_current_playback()
|
||||
if not media_item:
|
||||
discordRPC.clear()
|
||||
discord_rpc.clear()
|
||||
time.sleep(settings.poll_interval)
|
||||
continue
|
||||
|
||||
discordRPC.update(media_item.to_rpc_payload())
|
||||
discord_rpc.update(media_item.to_rpc_payload())
|
||||
time.sleep(settings.poll_interval)
|
||||
except KeyboardInterrupt:
|
||||
logging.info("Shutting down...")
|
||||
discordRPC.clear()
|
||||
discord_rpc.clear()
|
||||
break
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user