Send native voice bubble messages in Feishu using Edge TTS + opus format.
Feishu bot API only renders voice bubbles for audio message type with opus format.
Standard TTS outputs mp3 → Feishu shows it as a file attachment, not a voice bubble.
This skill: Edge TTS → opus → Feishu audio → native voice bubble.
npm install node-edge-tts
No API keys required. Edge TTS is free.
node scripts/gen_voice.js "你好世界" output.opus
node scripts/gen_voice.js "播报内容" output.opus --voice zh-CN-YunxiNeural --rate +15% --pitch -5%
node scripts/gen_voice.js "很长的文本..." output.opus --split 500
Produces output_1.opus, output_2.opus, etc. Split at sentence boundaries.
{ "action": "send", "filePath": "output.opus" }
The .opus extension triggers Feishu's native audio message type automatically.
| Arg | Description | Default |
|---|---|---|
| ----- | ------------- | --------- |
| Text to convert | required |
| Output .opus path | required |
--voice | Edge TTS voice name | zh-CN-XiaoxiaoNeural |
--rate | Speech rate (+20%, -10%) | +0% |
--pitch | Pitch adjust (+5%, -5%) | +0% |
--split | Auto-split at N chars | 0 (disabled) |
| Voice | Gender | Style |
|---|---|---|
| ------- | -------- | ------- |
| zh-CN-XiaoxiaoNeural | F | Warm, versatile (default) |
| zh-CN-XiaoyiNeural | F | Gentle, storytelling |
| zh-CN-YunxiNeural | M | Young, energetic |
| zh-CN-YunjianNeural | M | Broadcast, professional |
| zh-CN-YunyangNeural | M | News anchor, authoritative |
| zh-CN-liaoning-XiaobeiNeural | F | Northeastern dialect |
| zh-CN-shaanxi-XiaoniNeural | F | Shaanxi dialect |
webm-24khz-16bit-mono-opus.opus file.opus → uploads as opus type → sends as audio messagenode-edge-tts must be installed in the working directory or globally共 1 个版本