# VWED任务模块接口文档概览

## 文档说明

本目录包含VWED任务模块的完整接口文档，涵盖了任务管理、脚本编辑、设备控制、数据管理等各个功能模块的API接口说明。

## 文档列表

### 核心功能模块

1. **[VWED任务管理接口文档](./VWED任务管理接口文档.md)**
   - 任务的创建、查询、更新、删除操作
   - 任务状态管理和生命周期控制
   - 任务执行记录和监控

2. **[任务编辑接口文档](./任务编辑接口文档.md)**
   - 任务流程设计器接口
   - 任务块配置和管理
   - 可视化任务编辑功能

3. **[任务记录接口文档](./任务记录接口文档.md)**
   - 任务执行历史查询
   - 执行状态监控
   - 日志记录和追踪

4. **[换机器人接口文档](./换机器人接口文档.md)** ⭐ **新增**
   - 运行时动态更换执行机器人
   - 支持未载货和已载货两种场景
   - 智能参数提取和实时生效
   - 保持任务连续性和完整日志

5. **[任务模板管理接口文档](./任务模板管理接口文档.md)**
   - 任务模板的创建和管理
   - 模板复用和版本控制
   - 模板导入导出功能

### 新增功能模块

6. **[在线脚本编辑接口文档](./在线脚本编辑接口文档.md)** ⭐ **新增**
   - Python脚本在线编辑和管理
   - 多脚本并发执行引擎
   - 实时日志推送和监控
   - 动态API注册和函数调用
   - VWED统一对象系统
   - 任务系统集成和脚本函数调用

### 设备和硬件接口

6. **[呼叫器设备接口文档](./呼叫器设备接口文档.md)**
   - 呼叫器设备管理
   - 设备状态监控
   - 呼叫记录管理

7. **[机器人调度接口文档](./机器人调度接口文档.md)**
   - AMR机器人调度管理
   - 路径规划和导航
   - 任务分配和执行

8. **[Modbus配置接口文档](./Modbus配置接口文档.md)**
   - Modbus设备配置管理
   - 设备通信参数设置
   - 数据点位映射配置

### 数据管理接口

9. **[库位管理接口文档](./库位管理接口文档.md)**
   - 仓储库位信息管理
   - 库位状态监控
   - 存储区域配置

10. **[地图数据推送接口文档](./地图数据推送接口文档.md)**
    - 地图数据实时推送
    - 位置信息更新
    - 导航路径数据

11. **[外部任务接口文档](./外部任务接口文档.md)**
    - 外部系统任务集成
    - 第三方任务接口
    - 数据交换协议

### 通信接口

12. **[WebSocket接口文档](./WebSocket接口文档.md)**
    - 实时数据推送
    - 双向通信协议
    - 消息格式定义

## 接口规范

### 统一响应格式

所有API接口都遵循统一的响应格式：

```json
{
    "success": true,              // 操作成功标识
    "code": 200,                  // HTTP状态码
    "message": "操作成功",         // 响应消息
    "data": {},                   // 响应数据
    "timestamp": "2025-09-11T12:00:00Z"  // 响应时间戳
}
```

### 错误响应格式

```json
{
    "success": false,
    "code": 400,
    "message": "请求参数错误",
    "error": "详细错误信息",
    "timestamp": "2025-09-11T12:00:00Z"
}
```

### 基础URL

- **开发环境**: `http://localhost:8000`
- **测试环境**: `http://test-server:8000`
- **生产环境**: `http://prod-server:8000`

### 认证方式

系统支持以下认证方式：
- **Token认证**: 在请求头中添加 `Authorization: Bearer <token>`
- **Session认证**: 基于会话的身份认证
- **API Key**: 在请求头中添加 `X-API-Key: <api-key>`

## 新增功能亮点

### 在线脚本编辑模块

**在线脚本编辑模块**是本次更新的重要功能，提供了完整的Python脚本开发和运行环境：

#### 🎯 核心特性
- **可视化脚本编辑**: 支持在线代码编辑、语法高亮、错误提示
- **多脚本并发**: 支持多个脚本同时运行，互不干扰
- **实时监控**: WebSocket实时推送脚本执行日志和状态
- **动态API注册**: 脚本可以动态注册HTTP API接口
- **函数调用**: 支持从VWED任务中调用脚本函数
- **统一对象系统**: 提供VWED统一API对象，简化脚本开发

#### 🔧 技术架构
- **多层架构**: 数据层、服务层、接口层分离
- **异步处理**: 基于异步协程的高性能执行引擎
- **资源隔离**: 脚本间资源完全隔离，确保稳定性
- **数据持久化**: 完整的执行记录和统计数据存储

#### 🚀 使用场景
1. **自定义业务逻辑**: 通过脚本实现特定的业务处理逻辑
2. **数据处理**: 对传感器数据进行实时处理和分析
3. **系统集成**: 与第三方系统进行数据交互和接口对接
4. **任务扩展**: 为VWED任务系统提供自定义功能扩展
5. **API服务**: 快速构建RESTful API服务

#### 📋 脚本示例

```python
def boot():
    """脚本启动函数"""
    VWED.log.sync_info("脚本服务启动中...")
    
    # 注册API接口
    @VWED.api.post("/calculate", description="计算服务")
    def calculate(request_data):
        a = request_data["body"].get("a", 0)
        b = request_data["body"].get("b", 0)
        return {"result": a + b}
    
    # 注册自定义函数供VWED任务调用
    @VWED.function.register("process_data", description="数据处理")
    def process_data(args):
        # 自定义数据处理逻辑
        return {"processed": True, "count": len(args.get("data", []))}
    
    # 设置定时任务
    @VWED.timer.interval(60)
    def monitor_system():
        VWED.log.sync_info("系统状态检查")
    
    VWED.log.sync_info("脚本服务启动完成")
```

## 版本信息

- **当前版本**: v2.0.0
- **最后更新**: 2025-09-11
- **更新内容**: 
  - 新增在线脚本编辑模块
  - 完善WebSocket实时通信
  - 优化任务系统集成
  - 增强错误处理和日志记录

## 技术支持

如有疑问或需要技术支持，请参考：
1. 对应模块的详细接口文档
2. 代码示例和最佳实践
3. 错误码说明和解决方案
4. 性能优化建议

---

**注意**: 在线脚本编辑功能为新增模块，建议在开发和测试环境中充分验证后再部署到生产环境。