From 6a50c94cf2fc12fa13bfe1aa69519f46ce0b9c6f Mon Sep 17 00:00:00 2001 From: chrispr Date: Mon, 17 Feb 2025 01:03:06 -0500 Subject: [PATCH] Minor tweaks to AiringList before trying to handle late-week airing --- AnimeAnnouncer/Cache/TMDBCache.cs | 4 +++- AnimeAnnouncer/Program.cs | 9 ++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/AnimeAnnouncer/Cache/TMDBCache.cs b/AnimeAnnouncer/Cache/TMDBCache.cs index 18dcf3b..587a882 100644 --- a/AnimeAnnouncer/Cache/TMDBCache.cs +++ b/AnimeAnnouncer/Cache/TMDBCache.cs @@ -20,6 +20,7 @@ public class TMDBCache public async Task SetCacheItem(String key, TMDBCacheItem item) { var db = redis.GetDatabase(); + String jsonItem = JsonSerializer.Serialize(item); await db.StringSetAsync(key, jsonItem, CacheExpiration); } @@ -38,13 +39,14 @@ public class TMDBCache { var db = redis.GetDatabase(); String jsonItem = JsonSerializer.Serialize(list); - await db.StringSetAsync("AiringSoon", jsonItem, CacheExpiration); + await db.StringSetAsync("AiringSoon", jsonItem, TimeSpan.FromDays(60)); } public async Task> GetAiringList() { var db = redis.GetDatabase(); + String jsonItem = await db.StringGetAsync("AiringSoon"); if(!String.IsNullOrEmpty(jsonItem)) diff --git a/AnimeAnnouncer/Program.cs b/AnimeAnnouncer/Program.cs index eda106b..78723b3 100644 --- a/AnimeAnnouncer/Program.cs +++ b/AnimeAnnouncer/Program.cs @@ -62,6 +62,7 @@ namespace AnimeAnnouncer nyaaIndexer.NewPost += OnNewPost; nyaaIndexer.RssReadFinished += OnRssReadFinished; + //nyaaIndexer.IterationSleepTime = 60; nyaaIndexer.Start(true); Console.WriteLine("Press enter to quit..."); @@ -222,7 +223,7 @@ namespace AnimeAnnouncer _ = tmdbCache.SetCacheItem($"ShowCache-{title}", cachedShow); Console.WriteLine($"{title} Added to cache"); if(latestSeason.AirDate < DateTime.Now && (latestSeason.AirDate + TimeSpan.FromDays(180)) > DateTime.Now && - (showResult.NextEpisodeToAir.AirDate + TimeSpan.FromDays(30)) > DateTime.Now) + ((showResult.Status == "Ended" ? showResult.LastAirDate : showResult.NextEpisodeToAir.AirDate) + TimeSpan.FromDays(30)) > DateTime.Now) UpdateAiringShowList(cachedShow); } catch(Exception ex) @@ -310,15 +311,13 @@ namespace AnimeAnnouncer else if (!finaleConfirmed) { Console.WriteLine($"Would have announced finale for {title}, on S{cachedShow.LatestSeasonNumber}E{cachedShow.LastEpisodeNumber} but the finale episode type was not found."); - } - else - { - _ = tmdbCache.SetPair($"ShowAnnounced-{supposedShowId}", latestSeasonNumber.ToString()); + return; } if(mastodonClient != null && cachedShow != null) { try { + _ = tmdbCache.SetPair($"ShowAnnounced-{supposedShowId}", latestSeasonNumber.ToString()); PostStatus(cachedShow); } catch(Exception ex)