using BotSharp.Abstraction.Functions.Models; using BotSharp.Abstraction.Models; using BotSharp.Abstraction.Routing; using BotSharp.Abstraction.Routing.Settings; namespace BotSharp.Core.Routing.Handlers; public class ResponseToUserRoutingHandler : RoutingHandlerBase, IRoutingHandler { public string Name => "response_to_user"; public string Description => "You know how to response according to the context without asking specific agent."; public bool IsReasoning => false; public ResponseToUserRoutingHandler(IServiceProvider services, ILogger logger, RoutingSettings settings) : base(services, logger, settings) { } public async Task Handle(IRoutingService routing, FunctionCallFromLlm inst) { var result = new RoleDialogModel(AgentRole.Assistant, inst.Response) { CurrentAgentId = _settings.RouterId, FunctionName = inst.Function, ExecutionData = inst, StopCompletion = true }; return result; } }