Add telegram message on bundle completed
This commit is contained in:
@@ -13,7 +13,9 @@ public interface IMessengerService
|
||||
|
||||
Task SendPosition(Position position);
|
||||
Task SendClosingPosition(Position position);
|
||||
Task SendMessage(string v);
|
||||
Task SendMessage(string message);
|
||||
Task SendMessage(string message, string channelId);
|
||||
|
||||
Task SendTradeMessage(string message, bool isBadBehavior = false, User user = null);
|
||||
Task SendIncreasePosition(string address, Trade trade, string copyAccountName, Trade? oldTrade = null);
|
||||
Task SendClosedPosition(string address, Trade oldTrade);
|
||||
|
||||
1
src/Managing.Application.Shared/MessengerService.cs
Normal file
1
src/Managing.Application.Shared/MessengerService.cs
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
@@ -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)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user