@SuppressWarnings("unchecked")
    private void readFeishuConfig(Map hooks, Rules rules) {
        Map configs = (Map) hooks.get(AlarmHooksType.feishu.name());
        if (configs == null) {
            return;
        }
        configs.forEach((k, v) -> {
            Map<String, Object> config = (Map<String, Object>) v;
            FeishuSettings settings = new FeishuSettings(
                k.toString(), AlarmHooksType.feishu, (Boolean) config.getOrDefault("is-default", false));

            Object textTemplate = config.getOrDefault("text-template", "");
            settings.setTextTemplate((String) textTemplate);

            List<Map<String, Object>> webhooks = (List<Map<String, Object>>) config.get("webhooks");
            if (webhooks != null) {
                webhooks.forEach(webhook -> {
                    Object secret = webhook.getOrDefault("secret", "");
                    Object url = webhook.getOrDefault("url", "");
                    settings.getWebhooks().add(new FeishuSettings.WebHookUrl((String) secret, (String) url));
                });
            }
            rules.getFeishuSettingsMap().put(settings.getFormattedName(), settings);
            if (settings.isDefault()) {
                this.defaultHooks.add(settings.getFormattedName());
            }
            this.allHooks.add(settings.getFormattedName());
        });
    }
Read feishu hook config into {@link FeishuSettings}
oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/RulesReader.java