ryan
|
c7e154d7cc
|
feat(钉钉通道): 支持仅使用 access_token 配置钉钉机器人
Motivation:
钉钉机器人的 webhook 前缀固定不变,要求用户填写完整 URL 冗余且容易出错。简化通道配置项,降低接入配置成本,同时保证存量配置不受影响。
Changes:
* 钉钉通道配置改用 access_token,webhook 前缀由内部固定拼接
* 保留对旧 webhook_url 配置的兼容,access_token 存在时优先生效
* 新增 webhook 地址解析逻辑的单元测试,覆盖优先级与回退场景
* 同步更新 README、HTTP 请求示例及设计文档中的配置示例
* E2E 测试改用 E2E_DINGTALK_ACCESS_TOKEN 环境变量并按新格式创建通道
|
2026-08-19 15:14:38 +08:00 |
|
ryan
|
6f846a0a3c
|
feat: subscribe to RabbitMQ trade signals and notify by rules
Consume configurable queues, format signals (including period), share NotifyService with HTTP, and drop duplicate bodies within 1h.
|
2026-08-15 17:34:49 +08:00 |
|
ryan
|
1f4fe2fb75
|
docs: add RabbitMQ subscriber design spec
Lock the notify-service MQ module: configurable subscriptions, trade-signal formatting, and shared NotifyService.
|
2026-08-15 16:42:30 +08:00 |
|
ryan
|
bd8a9ff96d
|
feat: 增加 SafeW 已监控群列表接口
通过 getUpdates 将群写入 Redis,供创建/编辑渠道时选择 chat_id,避免前端重复传递 token。
|
2026-08-15 00:40:40 +08:00 |
|
ryan
|
0d0cd0c510
|
feat: 新增 SafeW 出站通知渠道
通过 Bot API sendMessage 投递渲染后的通知,MarkdownV2 自动转义标题与正文。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-08-14 00:58:44 +08:00 |
|
ryan
|
39f3774940
|
feat: 配置列表分页与钉钉机器人分钟级排队限流
统一 sources/templates/channels/rules 列表为分页响应,避免配置增多时全量返回;按钉钉 access_token 限制每分钟发送并在超限时等待下一分钟,降低触发官方封禁风险。
Co-authored-by: Cursor <cursoragent@cursor.com>
|
2026-08-10 00:34:26 +08:00 |
|
ryan
|
976ec3ca70
|
feat: project scaffold, config loading, skeleton main
|
2026-06-27 12:57:11 +08:00 |
|