BotSharp/src/Infrastructure/BotSharp.Core.Crontab/Hooks/CrontabUtilityHook.cs

27 lines
765 B
C#
Raw Normal View History

2024-12-05 17:11:16 +00:00
using BotSharp.Abstraction.Agents.Models;
using BotSharp.Core.Crontab.Enum;
namespace BotSharp.Core.Crontab.Hooks;
public class CrontabUtilityHook : IAgentUtilityHook
{
2024-12-06 15:49:34 +00:00
public const string PREFIX = "util-crontab-";
2024-12-05 17:11:16 +00:00
private const string SCHEDULE_TASK_FN = $"{PREFIX}schedule_task";
2025-04-29 21:52:43 +00:00
private const string TASK_WAIT_FN = $"{PREFIX}task_wait";
2024-12-05 17:11:16 +00:00
public void AddUtilities(List<AgentUtility> utilities)
{
var items = new List<AgentUtility>
{
new AgentUtility
{
Name = UtilityName.ScheduleTask,
2025-04-29 21:52:43 +00:00
Functions = [new(SCHEDULE_TASK_FN), new(TASK_WAIT_FN)],
2024-12-05 17:11:16 +00:00
Templates = [new($"{SCHEDULE_TASK_FN}.fn")]
}
};
utilities.AddRange(items);
}
}