From 3831950780ff0e358c7a2f24c3ba5b099c3d3d6a Mon Sep 17 00:00:00 2001 From: mei Date: Sun, 2 Aug 2026 20:53:39 +0800 Subject: [PATCH] =?UTF-8?q?feat(drivers/fwalert):=20-=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E9=A5=AD=E7=A2=97=E8=AD=A6=E5=91=8A=20-=20=E5=B0=86=20msg=20?= =?UTF-8?q?=E7=A7=BB=E5=85=A5=E9=A5=AD=E7=A2=97=E8=AD=A6=E5=91=8Abody?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 +++- docs/fwalert-config.md | 30 ++++++++++++++++++++++++++++++ drivers/fwalert/fwalert.go | 7 ++++++- drivers/fwalert/model.go | 4 ++++ 4 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 docs/fwalert-config.md diff --git a/README.md b/README.md index 0dea3a1..c1c7a1d 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,8 @@ ![GitHub go.mod Go version (subdirectory of monorepo)](https://img.shields.io/github/go-mod/go-version/ssdomei232/goodBaby) ![GitHub](https://img.shields.io/github/license/ssdomei232/goodBaby) -![GitHub tag (with filter)](https://img.shields.io/github/v/tag/ssdomei232/goodBaby) +![GitHub tag (with filter)](https://img.shields.io/github/v/tag/ssdomei232/goodBaby) + 根据《中国心血管健康与疾病报告2023》,中国 每年 猝死总人数(含心源性和非心源性)或达80万-100万,18-35岁人群占比为38%,也就是说,每天18-35岁人群有近1000人猝死 伴随着中国人口老龄化加剧,年轻人的牵挂越来越多,面对着可能的猝死,我们或许真的需要做好准备 @@ -119,6 +120,7 @@ cd web/frontend && npm run dev * [OneBot (QQ)](docs/onebot-config.md) * [钉钉机器人](docs/dingtalk-config.md) * [GitHub](docs/github-config.md) +* [饭碗警告](docs/fwalert-config.md) ## 开发:新增一种规则类型 diff --git a/docs/fwalert-config.md b/docs/fwalert-config.md new file mode 100644 index 0000000..11b32f7 --- /dev/null +++ b/docs/fwalert-config.md @@ -0,0 +1,30 @@ +# 饭碗警告配置 + +规则类型: `fwalert`。 + +定时器到期后,请求饭碗警告的 Webhook 地址 + +饭碗警告: 比较简单的(不用实名认证)支持电话和短信通知的第三方平台: `https://fwalert.com/`,价格不算最低,但比较方便 + +## 规则配置 (Rule Config) + +```json +{ + "webhook_url": "https://fwalert.com/xxx-xxx-xxx-xxx-xxx", + "msg": "消息内容" +} +``` + +## 饭碗警告平台配置 + +goodbaby 在请求饭碗警告时将`msg`放在请求体中,参照下面和官方教程设置: + +| 字段 | 值 | +| --- | --- | +| `变量名` | `message` | +| `变量来源` | `请求体(body)` | +| `提取规则` | `序列化数据` | +| `键` | `message` | +| `通知简述` | 随便填 | +| `通知正文` | `{{message}}` | +| `联系方式类型` | 参照官方文档添加并选择 | diff --git a/drivers/fwalert/fwalert.go b/drivers/fwalert/fwalert.go index 20d3b42..404f098 100644 --- a/drivers/fwalert/fwalert.go +++ b/drivers/fwalert/fwalert.go @@ -10,7 +10,12 @@ import ( func send(config *FwAlertRuleConfig) error { restyClient := resty.New() req := restyClient.R() - resp, err := req.Execute("GET", config.WebhookURL+"?message="+config.Msg) + + req.SetBody(FwAlertRequest{ + Message: config.Msg, + }) + + resp, err := req.Execute(resty.MethodPost, config.WebhookURL) if err != nil { return err } diff --git a/drivers/fwalert/model.go b/drivers/fwalert/model.go index 7918dd6..a5dd2c9 100644 --- a/drivers/fwalert/model.go +++ b/drivers/fwalert/model.go @@ -6,3 +6,7 @@ type FwAlertRuleConfig struct { WebhookURL string `json:"webhook_url"` Msg string `json:"msg"` } + +type FwAlertRequest struct { + Message string `json:"message"` +}