298 lines
8.1 KiB
Markdown
298 lines
8.1 KiB
Markdown
# 定时消息
|
|
|
|
定时消息功能允许您设置定时发送的消息任务,系统会按照设定的 Cron 表达式自动执行发送。
|
|
|
|
## 功能概述
|
|
|
|
定时消息允许您:
|
|
- ✅ 创建定时发送任务
|
|
- ✅ 使用 Cron 表达式设置执行时间
|
|
- ✅ 关联发信任务进行发送
|
|
- ✅ 启用/禁用定时任务
|
|
- ✅ 立即执行定时任务
|
|
- ✅ 查看执行日志
|
|
|
|
## 创建定时消息
|
|
|
|
### 步骤
|
|
|
|
1. 进入"定时消息"页面
|
|
2. 点击"新增定时消息"按钮
|
|
3. 填写定时消息信息
|
|
4. 点击"创建定时消息"保存
|
|
|
|
### 配置项
|
|
|
|
| 字段 | 说明 | 必填 |
|
|
|------|------|------|
|
|
| 定时消息名称 | 定时任务的名称 | 是 |
|
|
| 关联发信任务 | 选择要使用的发信任务 | 是 |
|
|
| Cron 表达式 | 定时执行的时间规则 | 是 |
|
|
| 标题 | 消息标题 | 是 |
|
|
| 内容 | 消息内容 | 是 |
|
|
| url | 可选的 URL 链接 | 否 |
|
|
|
|
::: warning 重要提示
|
|
请确保所选的发信任务已配置至少一个发送实例,否则无法发送消息。
|
|
:::
|
|
|
|
### Cron 表达式
|
|
|
|
Cron 表达式用于设置定时任务的执行时间,格式为:`分 时 日 月 周`
|
|
|
|
#### 常用模板
|
|
|
|
系统提供了常用的 Cron 表达式模板,点击即可应用:
|
|
|
|
| 模板 | Cron 表达式 | 说明 |
|
|
|------|------------|------|
|
|
| 每分钟 | `* * * * *` | 每分钟执行一次 |
|
|
| 每5分钟 | `*/5 * * * *` | 每5分钟执行一次 |
|
|
| 每小时 | `0 * * * *` | 每小时整点执行 |
|
|
| 每天凌晨2点 | `0 2 * * *` | 每天凌晨2点执行 |
|
|
| 每周一凌晨2点 | `0 2 * * 1` | 每周一凌晨2点执行 |
|
|
| 每月1号凌晨2点 | `0 2 1 * *` | 每月1号凌晨2点执行 |
|
|
|
|
#### Cron 表达式格式
|
|
|
|
```
|
|
* * * * *
|
|
│ │ │ │ │
|
|
│ │ │ │ └─ 星期 (0-7, 0和7都表示周日)
|
|
│ │ │ └─── 月份 (1-12)
|
|
│ │ └───── 日期 (1-31)
|
|
│ └─────── 小时 (0-23)
|
|
└───────── 分钟 (0-59)
|
|
```
|
|
|
|
#### 特殊字符
|
|
|
|
- `*` - 匹配任意值
|
|
- `,` - 列举多个值,如 `1,3,5`
|
|
- `-` - 范围,如 `1-5`
|
|
- `/` - 步长,如 `*/5` 表示每5个单位
|
|
|
|
#### 示例
|
|
|
|
```
|
|
0 9 * * * # 每天上午9点
|
|
0 9-17 * * * # 每天9点到17点的整点
|
|
0 9,12,18 * * * # 每天9点、12点、18点
|
|
*/30 9-17 * * * # 每天9点到17点,每30分钟
|
|
0 9 * * 1-5 # 周一到周五的上午9点
|
|
0 0 1,15 * * # 每月1号和15号的凌晨
|
|
```
|
|
|
|
## 管理定时消息
|
|
|
|
### 查看定时消息列表
|
|
|
|
在"定时消息"页面可以看到所有定时消息:
|
|
|
|
| 列 | 说明 |
|
|
|----|------|
|
|
| ID | 定时消息的唯一标识 |
|
|
| 名称 | 定时消息名称(可点击查看完整内容) |
|
|
| 内容 | 消息内容(可点击查看完整内容) |
|
|
| Cron表达式 | 定时执行的时间规则 |
|
|
| 关联任务 | 关联的发信任务 ID |
|
|
| 下次执行时间 | 下一次计划执行的时间 |
|
|
| 创建时间 | 定时消息创建时间 |
|
|
| 操作 | 操作按钮和启用/禁用开关 |
|
|
|
|
### 定时消息操作
|
|
|
|
#### 查看日志
|
|
|
|
1. 点击定时消息的"日志"按钮
|
|
2. 查看该定时消息的执行记录
|
|
3. 可以查看发送成功/失败的详细信息
|
|
|
|
#### 编辑定时消息
|
|
|
|
1. 点击定时消息的"编辑"按钮
|
|
2. 在弹出的对话框中修改信息
|
|
3. 可以点击"立即发送"测试发送
|
|
4. 点击"更新定时消息"保存修改
|
|
|
|
#### 删除定时消息
|
|
|
|
1. 点击定时消息的"删除"按钮
|
|
2. 确认删除操作
|
|
3. 定时消息将被删除,不再执行
|
|
|
|
#### 启用/禁用定时消息
|
|
|
|
- 点击定时消息行的开关按钮
|
|
- 禁用的定时消息不会自动执行
|
|
- 可以随时重新启用
|
|
|
|
#### 立即发送
|
|
|
|
在编辑定时消息时,可以点击"立即发送"按钮立即执行一次发送,用于测试定时消息配置是否正确。
|
|
|
|
### 搜索定时消息
|
|
|
|
在定时消息列表页面的搜索框中输入任务名称,可以快速筛选定时消息。
|
|
|
|
## 使用场景
|
|
|
|
### 场景 1:每日报表推送
|
|
|
|
**需求:** 每天早上9点自动发送前一天的业务报表
|
|
|
|
**配置:**
|
|
- 定时消息名称:每日业务报表
|
|
- 关联发信任务:报表推送任务
|
|
- Cron 表达式:`0 9 * * *`
|
|
- 标题:每日业务报表
|
|
- 内容:前一天的业务数据统计
|
|
|
|
### 场景 2:周会提醒
|
|
|
|
**需求:** 每周一上午9点提醒团队周会
|
|
|
|
**配置:**
|
|
- 定时消息名称:周会提醒
|
|
- 关联发信任务:团队通知任务
|
|
- Cron 表达式:`0 9 * * 1`
|
|
- 标题:周会提醒
|
|
- 内容:今天上午10点周会,请准时参加
|
|
|
|
### 场景 3:系统巡检
|
|
|
|
**需求:** 每小时检查系统状态并发送报告
|
|
|
|
**配置:**
|
|
- 定时消息名称:系统巡检
|
|
- 关联发信任务:系统告警任务
|
|
- Cron 表达式:`0 * * * *`
|
|
- 标题:系统巡检报告
|
|
- 内容:系统运行正常
|
|
|
|
### 场景 4:月度账单
|
|
|
|
**需求:** 每月1号凌晨发送上月账单
|
|
|
|
**配置:**
|
|
- 定时消息名称:月度账单
|
|
- 关联发信任务:账单推送任务
|
|
- Cron 表达式:`0 2 1 * *`
|
|
- 标题:月度账单
|
|
- 内容:上月账单详情
|
|
|
|
## 工作流程
|
|
|
|
```mermaid
|
|
graph LR
|
|
A[创建定时消息] --> B[设置 Cron 表达式]
|
|
B --> C[关联发信任务]
|
|
C --> D[启用定时消息]
|
|
D --> E[系统定时检查]
|
|
E --> F{到达执行时间?}
|
|
F -->|是| G[调用发信任务]
|
|
F -->|否| E
|
|
G --> H[发送消息]
|
|
H --> I[记录日志]
|
|
I --> E
|
|
```
|
|
|
|
## 最佳实践
|
|
|
|
### 1. Cron 表达式设置
|
|
|
|
- ✅ 使用系统提供的常用模板
|
|
- ✅ 避免设置过于频繁的执行(如每分钟)
|
|
- ✅ 选择系统低峰期执行(如凌晨)
|
|
- ✅ 测试 Cron 表达式是否正确
|
|
|
|
### 2. 发信任务配置
|
|
|
|
- ✅ 确保关联的发信任务已配置实例
|
|
- ✅ 测试发信任务是否能正常发送
|
|
- ✅ 为重要消息配置多个渠道
|
|
- ✅ 使用有意义的任务名称
|
|
|
|
### 3. 消息内容
|
|
|
|
- ✅ 标题简洁明了
|
|
- ✅ 内容清晰完整
|
|
- ✅ 提供必要的链接(url 字段)
|
|
- ✅ 使用立即发送测试内容
|
|
|
|
### 4. 监控和维护
|
|
|
|
- ✅ 定期查看执行日志
|
|
- ✅ 及时处理发送失败的情况
|
|
- ✅ 禁用不再需要的定时消息
|
|
- ✅ 定期检查下次执行时间是否正确
|
|
|
|
### 5. 性能优化
|
|
|
|
- ✅ 避免在同一时间执行大量定时任务
|
|
- ✅ 合理设置执行频率
|
|
- ✅ 对于大量消息,考虑分批发送
|
|
- ✅ 监控系统资源使用情况
|
|
|
|
## 常见问题
|
|
|
|
### Q: 定时消息没有执行怎么办?
|
|
|
|
**A:**
|
|
1. 检查定时消息是否已启用(开关是否打开)
|
|
2. 检查 Cron 表达式是否正确
|
|
3. 查看下次执行时间是否符合预期
|
|
4. 检查关联的发信任务是否配置了实例
|
|
5. 查看日志是否有错误信息
|
|
|
|
### Q: 如何测试定时消息配置是否正确?
|
|
|
|
**A:**
|
|
1. 编辑定时消息
|
|
2. 点击"立即发送"按钮
|
|
3. 查看是否成功发送
|
|
4. 检查日志中的发送记录
|
|
|
|
### Q: Cron 表达式如何设置?
|
|
|
|
**A:**
|
|
1. 使用系统提供的常用模板
|
|
2. 参考 Cron 表达式格式说明
|
|
3. 使用在线 Cron 表达式生成器
|
|
4. 通过立即发送测试是否正确
|
|
|
|
### Q: 定时消息发送失败怎么办?
|
|
|
|
**A:**
|
|
1. 查看日志中的错误信息
|
|
2. 检查关联的发信任务配置
|
|
3. 确认发信任务的渠道是否正常
|
|
4. 检查消息内容是否符合要求
|
|
5. 尝试立即发送测试
|
|
|
|
### Q: 可以暂停定时消息吗?
|
|
|
|
**A:**
|
|
可以。点击定时消息行的开关按钮禁用,定时消息将不再自动执行。需要时可以重新启用。
|
|
|
|
### Q: 定时消息和发信任务有什么关系?
|
|
|
|
**A:**
|
|
定时消息需要关联一个发信任务,定时消息只负责定时触发,实际的消息发送由关联的发信任务完成。发信任务决定了消息发送到哪些渠道。
|
|
|
|
## 注意事项
|
|
|
|
::: warning 重要提示
|
|
1. **关联任务配置** - 确保关联的发信任务已配置至少一个发送实例
|
|
2. **Cron 表达式** - 设置前请仔细检查,避免执行时间错误
|
|
3. **执行频率** - 避免设置过于频繁的执行,影响系统性能
|
|
4. **消息内容** - 定时消息的内容是固定的,不支持动态内容
|
|
5. **启用状态** - 创建后记得启用定时消息,否则不会执行
|
|
:::
|
|
|
|
## 下一步
|
|
|
|
- 查看 [发送任务](/guide/tasks) 了解如何配置发信任务
|
|
- 查看 [V1 API 文档](/api/v1) 了解消息发送机制
|
|
- 查看 [渠道配置](/guide/channels) 了解如何配置推送渠道
|