Skip to content

Commit

Permalink
add job
Browse files Browse the repository at this point in the history
  • Loading branch information
th0mk committed Apr 18, 2024
1 parent 9231bd7 commit f970052
Showing 1 changed file with 19 additions and 5 deletions.
24 changes: 19 additions & 5 deletions src/FMBot.Bot/Services/TimerService.cs
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Text.Json;
using System.Threading.Tasks;
using Discord;
using Discord.WebSocket;
Expand Down Expand Up @@ -49,6 +46,7 @@ public class TimerService
private readonly WhoKnowsFilterService _whoKnowsFilterService;
private readonly StatusHandler.StatusHandlerClient _statusHandler;
private readonly BotListService _botListService;
private readonly EurovisionService _eurovisionService;

public FeaturedLog CurrentFeatured;

Expand All @@ -65,7 +63,9 @@ public class TimerService
DiscogsService discogsService,
WhoKnowsFilterService whoKnowsFilterService,
StatusHandler.StatusHandlerClient statusHandler,
HttpClient httpClient, BotListService botListService)
HttpClient httpClient,
BotListService botListService,
EurovisionService eurovisionService)
{
this._client = client;
this._userService = userService;
Expand All @@ -80,6 +80,7 @@ public class TimerService
this._statusHandler = statusHandler;
this._httpClient = httpClient;
this._botListService = botListService;
this._eurovisionService = eurovisionService;
this._updateService = updateService;
this._botSettings = botSettings.Value;

Expand Down Expand Up @@ -150,6 +151,14 @@ public void QueueJobs()
Log.Warning("Main guild not connected, not queuing master jobs");
BackgroundJob.Schedule(() => MakeSureMasterJobsAreQueued(), TimeSpan.FromMinutes(2));
}

BackgroundJob.Schedule(() => UpdateEurovisionData(), TimeSpan.FromSeconds(1));

if (DateTime.Today.Month == 5 || DateTime.Today.Month == 4)
{
Log.Information($"RecurringJob: Adding {nameof(UpdateEurovisionData)}");
RecurringJob.AddOrUpdate(nameof(UpdateEurovisionData), () => UpdateEurovisionData(), "30 */2 * * *");
}
}

public void MakeSureMasterJobsAreQueued()
Expand Down Expand Up @@ -207,7 +216,7 @@ public async Task UpdateStatus()
await this._client.SetCustomStatusAsync(this.CurrentFeatured.Status);
return;
}

if (this._client?.Guilds?.Count == null)
{
Log.Information($"Client guild count is null, cancelling {nameof(UpdateStatus)}");
Expand Down Expand Up @@ -549,6 +558,11 @@ public async Task UpdateGlobalWhoKnowsFilters()
await this._whoKnowsFilterService.AddFilteredUsersToDatabase(filteredUsers);
}

public async Task UpdateEurovisionData()
{
await this._eurovisionService.UpdateEurovisionData();
}

public void ClearUserCache()
{
var clients = this._client.Shards;
Expand Down

0 comments on commit f970052

Please sign in to comment.