Add telegram message on bundle completed

This commit is contained in:
2025-07-22 18:01:33 +07:00
parent 5427c8a971
commit 654d74932c
3 changed files with 13 additions and 1 deletions

View File

@@ -18,10 +18,12 @@ public class BundleBacktestWorker : BaseWorker<BundleBacktestWorker>
{
// Removed direct repository usage for bundle requests
private readonly IBacktester _backtester;
private readonly IMessengerService _messengerService;
private static readonly WorkerType _workerType = WorkerType.BundleBacktest;
public BundleBacktestWorker(
IBacktester backtester,
IMessengerService messengerService,
ILogger<BundleBacktestWorker> logger,
IWorkerService workerService) : base(
_workerType,
@@ -30,6 +32,7 @@ public class BundleBacktestWorker : BaseWorker<BundleBacktestWorker>
workerService)
{
_backtester = backtester;
_messengerService = messengerService;
}
protected override async Task Run(CancellationToken cancellationToken)
@@ -115,6 +118,12 @@ public class BundleBacktestWorker : BaseWorker<BundleBacktestWorker>
if (bundleRequest.FailedBacktests == 0)
{
bundleRequest.Status = BundleBacktestRequestStatus.Completed;
// Send Telegram message to the user's channelId
if (bundleRequest.User?.TelegramChannel != null)
{
var message = $"✅ Bundle backtest '{bundleRequest.Name}' (ID: {bundleRequest.RequestId}) is completed.";
await _messengerService.SendMessage(message, bundleRequest.User.TelegramChannel);
}
}
else if (bundleRequest.CompletedBacktests == 0)
{