using Application.DTOs.RobotDTOs;
namespace Application.Abstractions.Interfaces
{
///
/// Service for communicating with Arduino-based drones via HTTP
///
public interface IDroneConnectionService
{
///
/// Send delivery command to drone with route information
///
/// Drone IP address
/// Drone HTTP port
/// Command data with order and route
/// Response from drone
Task SendDeliveryCommandAsync(string ipAddress, int port, DroneCommandDTO command);
///
/// Check if drone is reachable and responsive
///
Task PingDroneAsync(string ipAddress, int port);
///
/// Get current status from drone
///
Task GetDroneStatusAsync(string ipAddress, int port);
///
/// Emergency stop command
///
Task SendEmergencyStopAsync(string ipAddress, int port);
}
}