feishu-audio
v1.0.1将音频文件转换为飞书可播放的语音消息。先用 ffmpeg 转为 opus 格式,再上传到飞书,最后发送 audio 消息。适用于用户想要在飞书中收到可播放的语音消息的场景。
运行时依赖
安装命令
点击复制技能文档
feishu-audio
将本地音频文件转换为飞书可播放的语音消息。
适用场景 用户说"朗读 xxx"、"语音播报" 需要发送可播放的语音消息到飞书 前置条件
ffmpeg - 音频格式转换
brew 安装 ffmpeg
飞书应用配置 - 需要以下环境变量:
FEISHU_应用_ID FEISHU_应用_SECRET
接收者 - 飞书用户 Open ID(从上下文获取或手动指定)
使用方法 方式 1:使用已有音频文件 bash scripts/发送_audio.sh <音频文件路径> [接收者OpenID]
方式 2:结合 TTS 使用
先生成音频,再用本技能发送:
# 1. 用 edge-tts 生成音频 edge-tts -t "你好,我是小曦" -v zh-CN-XiaoxiaoNeural --write-media /tmp/voice.mp3
# 2. 转为 opus 并发送到飞书 bash scripts/发送_audio.sh /tmp/voice.mp3
脚本说明 发送_audio.sh
主脚本,完整的音频消息发送流程。
参数:
$1 - 音频文件路径(必需) $2 - 接收者 Open ID(可选,默认从环境变量 FEISHU_接收R 获取)
环境变量:
FEISHU_应用_ID - 飞书应用 ID FEISHU_应用_SECRET - 飞书应用密钥 FEISHU_接收R - 接收者 Open ID(可选)
流程:
检查 ffmpeg 是否可用 检查音频文件是否存在 用 ffmpeg 转换为 opus 格式(飞书要求) 获取飞书 tenant_访问_令牌 上传到飞书(file_type=opus) 发送 audio 消息 音频格式要求
飞书语音消息要求:
格式: opus (OGG 容器) 编码: libopus 采样率: 24000 Hz 声道: 单声道 故障排查 ffmpeg 未安装 brew 安装 ffmpeg
上传失败
检查飞书应用权限:
im:message im:message:发送_as_机器人 消息发送成功但无法播放
确认:
上传时使用了 file_type=opus 上传时传递了 duration 参数