using System.Net.Sockets;
|
|
namespace WIDESEAWCS_Tasks.Workflow.Abstractions
|
{
|
/// <summary>
|
/// 机器人前缀命令处理器接口
|
/// </summary>
|
/// <remarks>
|
/// 前缀命令是指以特定前缀开头的命令,后面跟随逗号分隔的参数。
|
/// 当前支持:pickfinished(取货完成)、putfinished(放货完成)
|
/// </remarks>
|
public interface IRobotPrefixCommandHandler
|
{
|
/// <summary>
|
/// 检查消息是否为前缀命令
|
/// </summary>
|
/// <param name="message">消息内容(通常是小写形式)</param>
|
/// <returns>如果是前缀命令返回 true</returns>
|
bool IsPrefixCommand(string message);
|
|
/// <summary>
|
/// 处理前缀命令
|
/// </summary>
|
/// <param name="message">原始消息内容</param>
|
/// <param name="state">机器人当前状态</param>
|
/// <param name="client">TCP 客户端连接,用于发送响应</param>
|
Task HandleAsync(string message, RobotSocketState state, TcpClient client);
|
}
|
}
|