22 lines
1.0 KiB
C#
22 lines
1.0 KiB
C#
using Fitness_core_BE.DTOs.Agent;
|
|
|
|
namespace Fitness_core_BE.Interfaces.Services
|
|
{
|
|
public interface IAgentService
|
|
{
|
|
// Bootstrap enrollment (no api-key auth). Returns { agentId, apiKey } once.
|
|
Task<object> EnrollAsync(EnrollRequest request);
|
|
|
|
// Agent-authenticated operations. clientId / agentId are resolved server-side
|
|
// from the authenticated agent, never from the request body.
|
|
Task<object> RegisterDeviceAsync(Guid clientId, Guid agentId, RegisterDeviceRequest request);
|
|
Task<object> ReconcileDeviceInventoryAsync(Guid clientId, Guid agentId, DeviceInventoryRequest request);
|
|
Task<object> IngestAttendanceAsync(Guid clientId, Guid agentId, AgentAttendanceRequest request);
|
|
Task<object> GetPendingCommandsAsync(Guid clientId, Guid agentId);
|
|
Task<object> SubmitCommandResultAsync(
|
|
Guid clientId, Guid agentId, Guid commandId, CommandResultRequest request);
|
|
Task<object> HeartbeatAsync(
|
|
Guid clientId, Guid agentId, AgentHeartbeatRequest request);
|
|
}
|
|
}
|