wanshenmean
2026-03-26 8e42d0c1b7ae36cff2e7c69999117911a4b6f300
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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);
    }
}