fix(dingtalk,daemon): process stream callbacks and supervise DingTalk channel

Include DingTalk in daemon supervised channel detection so the listener starts in daemon mode.

Handle CALLBACK stream frames, subscribe to bot message topic, and improve session webhook routing for private/group replies.

Add regression tests for supervised-channel detection and DingTalk payload/chat-id parsing.
This commit is contained in:
JamesYin 2026-02-17 21:17:33 +08:00 committed by Chummy
parent 32bfe1d186
commit 4b89e91a5a
2 changed files with 88 additions and 40 deletions

View file

@ -299,4 +299,15 @@ mod tests {
});
assert!(has_supervised_channels(&config));
}
#[test]
fn detects_dingtalk_as_supervised_channel() {
let mut config = Config::default();
config.channels_config.dingtalk = Some(crate::config::schema::DingTalkConfig {
client_id: "client_id".into(),
client_secret: "client_secret".into(),
allowed_users: vec!["*".into()],
});
assert!(has_supervised_channels(&config));
}
}