mirror of https://github.com/allinssl/allinssl
支持webhook中消息标题及消息内容替换逻辑
parent
29a7579743
commit
3ad8797922
|
@ -1,4 +1,6 @@
|
||||||
.DS_Store
|
.DS_Store
|
||||||
/data/
|
/data/
|
||||||
/logs/
|
/logs/
|
||||||
.idea
|
.idea
|
||||||
|
**/.history/
|
||||||
|
/allinssl
|
|
@ -33,11 +33,11 @@ func NewWebHookReporter(config *ReportConfig, logger *public.Logger) *WebHookRep
|
||||||
if config.IgnoreSSL {
|
if config.IgnoreSSL {
|
||||||
client.SetTLSClientConfig(&tls.Config{InsecureSkipVerify: true})
|
client.SetTLSClientConfig(&tls.Config{InsecureSkipVerify: true})
|
||||||
}
|
}
|
||||||
|
|
||||||
if config.Data == "" {
|
if config.Data == "" {
|
||||||
config.Data = "{}" // 默认数据为空JSON对象
|
config.Data = "{}" // 默认数据为空JSON对象
|
||||||
}
|
}
|
||||||
|
|
||||||
return &WebHookReporter{
|
return &WebHookReporter{
|
||||||
config: config,
|
config: config,
|
||||||
logger: logger,
|
logger: logger,
|
||||||
|
@ -184,6 +184,22 @@ func NotifyWebHook(params map[string]any) error {
|
||||||
return fmt.Errorf("解析配置失败: %v", err)
|
return fmt.Errorf("解析配置失败: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if params["subject"] != nil && params["body"] != nil {
|
||||||
|
subjStr, ok1 := params["subject"].(string)
|
||||||
|
bodyStr, ok2 := params["body"].(string)
|
||||||
|
if ok1 && ok2 {
|
||||||
|
subjStr = strings.ReplaceAll(subjStr, `"`, `\"`)
|
||||||
|
bodyStr = strings.ReplaceAll(bodyStr, `"`, `\"`)
|
||||||
|
if strings.Contains(config.Data, "{subject}") {
|
||||||
|
config.Data = strings.ReplaceAll(config.Data, "{subject}", subjStr+"\n")
|
||||||
|
}
|
||||||
|
if strings.Contains(config.Data, "{body}") {
|
||||||
|
config.Data = strings.ReplaceAll(config.Data, "{body}", bodyStr)
|
||||||
|
}
|
||||||
|
config.Data = strings.ReplaceAll(config.Data, "\n", `\n`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
reporter := NewWebHookReporter(&config, logger)
|
reporter := NewWebHookReporter(&config, logger)
|
||||||
httpctx := context.Background()
|
httpctx := context.Background()
|
||||||
err = reporter.Send(httpctx)
|
err = reporter.Send(httpctx)
|
||||||
|
|
Loading…
Reference in New Issue