2026-04-05 10:36:22 +08:00
|
|
|
package dingtalk
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"encoding/json"
|
2026-09-12 15:32:27 +08:00
|
|
|
"fmt"
|
2026-04-05 10:36:22 +08:00
|
|
|
)
|
|
|
|
|
|
2026-09-12 15:32:27 +08:00
|
|
|
// ParseAccountConfig 解析钉钉机器人凭据配置
|
|
|
|
|
func ParseAccountConfig(config string) (*DingTalkConfig, error) {
|
|
|
|
|
if config == "" {
|
|
|
|
|
return nil, fmt.Errorf("解析钉钉机器人配置失败: 配置为空")
|
2026-04-05 10:36:22 +08:00
|
|
|
}
|
|
|
|
|
|
2026-09-12 15:32:27 +08:00
|
|
|
var account DingTalkConfig
|
|
|
|
|
if err := json.Unmarshal([]byte(config), &account); err != nil {
|
|
|
|
|
return nil, fmt.Errorf("解析钉钉机器人配置失败: %v", err)
|
2026-04-05 10:36:22 +08:00
|
|
|
}
|
2026-09-12 15:32:27 +08:00
|
|
|
return &account, nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ParseRuleConfig 解析钉钉规则配置
|
|
|
|
|
func ParseRuleConfig(configJSON string) (*DingTalkRuleConfig, error) {
|
|
|
|
|
var config DingTalkRuleConfig
|
|
|
|
|
if err := json.Unmarshal([]byte(configJSON), &config); err != nil {
|
|
|
|
|
return nil, fmt.Errorf("解析钉钉规则配置失败: %v", err)
|
|
|
|
|
}
|
|
|
|
|
return &config, nil
|
2026-04-05 10:36:22 +08:00
|
|
|
}
|