mirror of https://github.com/allinssl/allinssl
支持webhook中消息标题及消息内容替换逻辑
parent
29a7579743
commit
3ad8797922
|
@ -2,3 +2,5 @@
|
|||
/data/
|
||||
/logs/
|
||||
.idea
|
||||
**/.history/
|
||||
/allinssl
|
|
@ -184,6 +184,22 @@ func NotifyWebHook(params map[string]any) error {
|
|||
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)
|
||||
httpctx := context.Background()
|
||||
err = reporter.Send(httpctx)
|
||||
|
|
Loading…
Reference in New Issue