Files
aiagent/前端测试邮件和消息队列节点.md
2026-01-19 00:09:36 +08:00

293 lines
7.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 前端测试邮件和消息队列节点
## 🎯 快速测试指南
由于后端服务已经在运行,您可以直接在前端界面测试新实现的邮件节点和消息队列节点。
## 📧 测试邮件节点
### 步骤1: 创建工作流
1. 登录系统: http://101.43.95.130:8038
2. 点击"工作流管理"
3. 点击"创建新工作流"
### 步骤2: 添加节点
1. **添加开始节点**
- 从左侧工具箱拖拽"开始"节点到画布
2. **添加邮件节点**
- 从左侧工具箱拖拽"邮件"节点到画布
- 连接开始节点到邮件节点
3. **添加结束节点**
- 从左侧工具箱拖拽"结束"节点到画布
- 连接邮件节点到结束节点
### 步骤3: 配置邮件节点
点击邮件节点,在右侧配置面板中填写:
#### 基础配置
- **SMTP服务器**: `smtp.gmail.com` (或使用测试服务如 `smtp.mailtrap.io`)
- **SMTP端口**: `587`
- **SMTP用户名**: 您的邮箱地址
- **SMTP密码**: 应用专用密码Gmail需要
- **使用TLS**: ✅ 开启
#### 邮件内容
- **发件人邮箱**: `your-email@gmail.com`
- **收件人邮箱**: `recipient@example.com`
- **邮件主题**: `测试邮件 - {test_key}`
- **邮件正文类型**: `纯文本``HTML`
- **邮件正文**:
```
这是一封测试邮件。
测试数据: {test_data}
时间: {timestamp}
```
#### 变量替换示例
邮件节点支持变量替换,使用 `{key}` 或 `${key}` 格式:
- `{test_key}` - 从输入数据中获取 `test_key` 的值
- `{test_data}` - 从输入数据中获取 `test_data` 的值
### 步骤4: 保存并运行
1. 点击工具栏的"保存"按钮
2. 点击"运行"按钮
3. 在运行对话框中输入测试数据:
```json
{
"test_key": "Hello World",
"test_data": "这是测试数据",
"timestamp": "2024-01-01 12:00:00"
}
```
4. 点击"开始运行"
5. 查看执行结果和执行日志
### 步骤5: 验证结果
- ✅ 检查执行状态是否为"成功"
- ✅ 查看执行日志,确认邮件发送成功
- ✅ 检查收件箱,确认收到邮件
- ✅ 验证邮件主题和正文中的变量是否正确替换
## 🐰 测试RabbitMQ消息队列节点
### 前置条件
确保RabbitMQ服务正在运行
```bash
# 使用Docker启动RabbitMQ
docker run -d \
--name rabbitmq \
-p 5672:5672 \
-p 15672:15672 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin123 \
rabbitmq:3-management
```
访问管理界面: http://localhost:15672
### 步骤1-2: 创建工作流并添加节点
1. 添加开始节点
2. 添加"消息队列"节点
3. 添加结束节点
4. 连接节点
### 步骤3: 配置消息队列节点
点击消息队列节点,在右侧配置面板中:
1. **选择队列类型**: `RabbitMQ`
2. **RabbitMQ配置**:
- **主机地址**: `localhost` (或服务器IP)
- **端口**: `5672`
- **用户名**: `admin` (或您的RabbitMQ用户名)
- **密码**: `admin123` (或您的RabbitMQ密码)
- **队列名称**: `test_queue`
- **Routing Key**: `test.routing.key` (可选)
- **Exchange**: (可选如果使用Exchange)
3. **消息内容**:
```json
{
"test_key": "{test_key}",
"test_data": "{test_data}",
"timestamp": "{timestamp}"
}
```
### 步骤4: 保存并运行
1. 保存工作流
2. 运行工作流,输入测试数据:
```json
{
"test_key": "Hello RabbitMQ",
"test_data": "这是测试数据",
"timestamp": "2024-01-01 12:00:00"
}
```
3. 查看执行结果
### 步骤5: 验证结果
1. 访问RabbitMQ管理界面: http://localhost:15672
2. 登录后,进入"Queues"标签
3. 找到 `test_queue` 队列
4. 点击队列名称,查看消息
5. 确认消息内容正确,变量已替换
## 📨 测试Kafka消息队列节点
### 前置条件
确保Kafka服务正在运行需要Zookeeper
```bash
# 使用Docker Compose启动Kafka
# 创建 docker-compose-kafka.yml 文件
```
### 步骤1-2: 创建工作流并添加节点
1. 添加开始节点
2. 添加"消息队列"节点
3. 添加结束节点
4. 连接节点
### 步骤3: 配置Kafka节点
点击消息队列节点,在右侧配置面板中:
1. **选择队列类型**: `Kafka`
2. **Kafka配置**:
- **Bootstrap Servers**: `localhost:9092` (多个服务器用逗号分隔)
- **Topic**: `test_topic`
3. **消息内容**:
```json
{
"test_key": "{test_key}",
"test_data": "{test_data}",
"timestamp": "{timestamp}"
}
```
### 步骤4: 保存并运行
1. 保存工作流
2. 运行工作流,输入测试数据
3. 查看执行结果
### 步骤5: 验证结果
使用Kafka消费者工具查看消息
```bash
# 使用kafka-console-consumer
kafka-console-consumer --bootstrap-server localhost:9092 --topic test_topic --from-beginning
```
## 🔍 测试检查清单
### 邮件节点
- [ ] 节点可以正常添加到画布
- [ ] 配置面板所有字段正常显示
- [ ] 保存配置成功
- [ ] 工作流执行成功
- [ ] 邮件成功发送
- [ ] 变量替换正确(主题和正文)
- [ ] HTML格式邮件正确渲染如果使用HTML
- [ ] 执行日志显示详细信息
### 消息队列节点
- [ ] 节点可以正常添加到画布
- [ ] 可以切换队列类型RabbitMQ/Kafka
- [ ] 配置面板根据队列类型显示不同字段
- [ ] 保存配置成功
- [ ] 工作流执行成功
- [ ] 消息成功发送到队列/Topic
- [ ] 变量替换正确
- [ ] 执行日志显示详细信息
## 🐛 常见问题排查
### 邮件节点问题
1. **SMTP连接失败**
- 检查SMTP服务器地址和端口
- 确认网络连接正常
- 检查防火墙设置
2. **认证失败**
- Gmail需要使用应用专用密码不是普通密码
- 确认账号已启用"允许不够安全的应用"
- 检查用户名和密码是否正确
3. **变量未替换**
- 确认输入数据中包含对应的key
- 检查变量格式:`{key}` 或 `${key}`
- 查看执行日志确认输入数据
### 消息队列节点问题
1. **RabbitMQ连接失败**
- 确认RabbitMQ服务正在运行
- 检查主机地址和端口
- 确认用户名和密码正确
- 检查网络连接
2. **Kafka连接失败**
- 确认Kafka服务正在运行
- 检查Bootstrap Servers配置
- 确认Topic已创建
- 检查网络连接
3. **消息未发送**
- 查看执行日志中的错误信息
- 检查节点配置是否正确
- 确认队列/Topic存在
## 📝 测试数据示例
### 邮件节点测试数据
```json
{
"test_key": "Hello World",
"test_data": "这是测试数据",
"timestamp": "2024-01-01 12:00:00",
"user_name": "测试用户",
"order_id": "12345"
}
```
### 消息队列节点测试数据
```json
{
"test_key": "Hello Queue",
"test_data": "这是测试数据",
"timestamp": "2024-01-01 12:00:00",
"event_type": "user_action",
"user_id": "12345"
}
```
## 🎯 下一步
测试通过后,您可以:
1. 在实际工作流中使用这些节点
2. 继续开发其他功能
3. 优化节点功能和用户体验
---
**提示**: 如果遇到问题,请查看执行详情页面的日志信息,那里会显示详细的错误信息。