dsh-im-ops/test/channels/qq
Diluka 5efcfa6725 feat(qq): parse inbound QQ face/emoji tags into readable text
QQ delivers emoji messages as opaque <faceType=..,faceId="..",ext="..">
markup fragments (the ext field holds a base64 JSON blob with the face
name, e.g. {"text":"吃瓜"}). Without translation, the Harness receives
only this unusable tag and loses what the sender actually meant.

Register the SDK's contentSanitizer({ parseFaceTags: true }) middleware,
mirroring tencent-connect/dsh-qqbot, so C2C and group inbound messages
surface as e.g. 【表情: 吃瓜】 instead of the raw tag.

- qq-runtime.mjs: register contentSanitizer before the typing indicator
- runtime.test.mjs: assert sanitizer registration and update middleware order
- lib/index.js: regenerated host bundle
2026-08-31 09:07:55 +08:00
..
bridge.test.mjs fix(qq): respond to all mentioned group members 2026-08-31 00:45:59 +08:00
client-api.test.mjs fix: remember direct recipients for connection tests 2026-08-19 11:24:50 +08:00
client-ui.test.mjs feat(ui): compact bot connection metadata 2026-08-23 01:20:58 +08:00
config-and-qr.test.mjs Add QQ bot channel 2026-08-15 17:51:48 +08:00
controller-and-rpc.test.mjs feat: add stable proactive delivery 2026-08-30 11:24:53 +08:00
markdown-reply.test.mjs fix(qq): harden markdown reply delivery 2026-08-26 01:26:47 +08:00
production.test.mjs fix: use in-process Harness API for local plugin connections 2026-08-28 01:24:17 +08:00
runtime.test.mjs feat(qq): parse inbound QQ face/emoji tags into readable text 2026-08-31 09:07:55 +08:00