This commit is contained in:
doms9 2025-10-01 18:34:18 -04:00
parent 760aeb9174
commit 00000d9799
5 changed files with 19 additions and 14 deletions

View file

@ -126,14 +126,17 @@ async def get_events(
base_url: str,
cached_keys: set[str],
) -> list[dict[str, str]]:
events: list[dict[str, str]] = []
if not (api_data := API_FILE.load(nearest_hr=True, per_entry=False)):
api_data = await refresh_api_cache(client, urljoin(base_url, "api/streams"))
API_FILE.write(api_data)
events: list[dict[str, str]] = []
now = Time.now()
start_dt = now.delta(minutes=-30)
end_dt = now.delta(minutes=30)
for stream_group in api_data["streams"]:
sport = stream_group["category"]
@ -141,10 +144,9 @@ async def get_events(
continue
for event in stream_group["streams"]:
name, start_ts, end_ts, logo, uri_name = (
name, start_ts, logo, uri_name = (
event["name"],
event["starts_at"],
event["ends_at"],
event["poster"],
event["uri_name"],
)
@ -154,11 +156,9 @@ async def get_events(
if cached_keys & {key}:
continue
start_dt = Time.from_ts(start_ts).delta(minutes=-30)
event_dt = Time.from_ts(start_ts)
end_dt = Time.from_ts(end_ts).delta(minutes=30)
if not start_dt <= Time.now() < end_dt:
if not start_dt <= event_dt < end_dt:
continue
events.append(
@ -167,7 +167,7 @@ async def get_events(
"event": name,
"link": urljoin(base_url, f"live/{uri_name}"),
"logo": logo,
"timestamp": start_dt.timestamp(),
"timestamp": event_dt.timestamp(),
}
)