飞书语音助手:转换并发送语音消息 - Openclaw Skills

作者:互联网

2026-03-31

AI教程

什么是 飞书语音助手?

飞书语音助手是一个专门设计的工具,旨在简化向飞书用户发送语音内容的过程。由于飞书的原生播放界面需要非常特定的音频编码(OGG 容器中的 Opus 格式),此技能利用 FFmpeg 实现了复杂转码步骤的自动化。

通过将此工具整合到您的 Openclaw Skills 库中,您可以消除通用音频文件与企业级语音通知之间的隔阂。它处理从格式验证、转码到 API 身份验证和消息递送的所有环节,是开发者构建内部沟通机器人的必备资产。

下载入口:https://github.com/openclaw/skills/tree/main/skills/tianyn1990/feishu-audio

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install feishu-audio

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 feishu-audio。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

飞书语音助手 应用场景

  • 将系统自动警报作为可听语音消息发送给团队成员。
  • 通过结合 TTS 引擎与飞书递送功能,实现文档的“朗读”功能。
  • 将现有的语音录音或会议记录转换为适合移动端播放的飞书语音便签。
  • 构建自定义通知机器人,提供比标准文本消息更具人情味的沟通方式。
飞书语音助手 工作原理
  1. 脚本验证系统路径中是否已安装并可访问 FFmpeg。
  2. 检查源音频文件,并使用 FFmpeg 将其转码为符合飞书标准的 24000 Hz 单声道 Opus 格式。
  3. 技能使用您的 APP_ID 和 APP_SECRET 通过飞书 API 进行身份验证,获取有效的租户访问令牌。
  4. 将转换后的文件作为 opus 文件类型上传到飞书媒体服务器。
  5. 最后,使用指定接收者的唯一 Open ID 发送语音消息。

飞书语音助手 配置指南

系统要求

确保您的机器上安装了 FFmpeg:

brew install ffmpeg

环境变量

将您的飞书应用凭据配置为环境变量:

export FEISHU_APP_ID='your_app_id'
export FEISHU_APP_SECRET='your_app_secret'
export FEISHU_RECEIVER='optional_default_receiver_openid'

基本用法

通过 CLI 直接执行转换和发送脚本:

bash scripts/send_audio.sh /path/to/your/audio.mp3 [optional_recipient_openid]

飞书语音助手 数据架构与分类体系

该技能处理音频文件并使用以下元数据结构与飞书 API 交互:

参数 描述 技术要求
音频格式 Opus (OGG) 必须使用 libopus 编解码器
采样率 24000 Hz 飞书兼容性固定要求
声道 单声道 需要 1 个声道
file_type 媒体类别 必须设置为 opus
duration 音频长度 播放界面所需

所有生成的临时 opus 文件都在脚本生命周期内进行管理,以确保工作区整洁。

name: feishu-audio
description: 将音频文件转换为飞书可播放的语音消息。先用 ffmpeg 转为 opus 格式,再上传到飞书,最后发送 audio 消息。适用于用户想要在飞书中收到可播放的语音消息的场景。

feishu-audio

将本地音频文件转换为飞书可播放的语音消息。

适用场景

  • 用户说"朗读 xxx"、"语音播报"
  • 需要发送可播放的语音消息到飞书

前置条件

  1. ffmpeg - 音频格式转换

    brew install ffmpeg
    
  2. 飞书应用配置 - 需要以下环境变量:

    • FEISHU_APP_ID
    • FEISHU_APP_SECRET
  3. 接收者 - 飞书用户 Open ID(从上下文获取或手动指定)

使用方法

方式 1:使用已有音频文件

bash scripts/send_audio.sh <音频文件路径> [接收者OpenID]

方式 2:结合 TTS 使用

先生成音频,再用本技能发送:

# 1. 用 edge-tts 生成音频
edge-tts -t "你好,我是小曦" -v zh-CN-XiaoxiaoNeural --write-media /tmp/voice.mp3

# 2. 转为 opus 并发送到飞书
bash scripts/send_audio.sh /tmp/voice.mp3

脚本说明

send_audio.sh

主脚本,完整的音频消息发送流程。

参数:

  • $1 - 音频文件路径(必需)
  • $2 - 接收者 Open ID(可选,默认从环境变量 FEISHU_RECEIVER 获取)

环境变量:

  • FEISHU_APP_ID - 飞书应用 ID
  • FEISHU_APP_SECRET - 飞书应用密钥
  • FEISHU_RECEIVER - 接收者 Open ID(可选)

流程:

  1. 检查 ffmpeg 是否可用
  2. 检查音频文件是否存在
  3. 用 ffmpeg 转换为 opus 格式(飞书要求)
  4. 获取飞书 tenant_access_token
  5. 上传到飞书(file_type=opus)
  6. 发送 audio 消息

音频格式要求

飞书语音消息要求:

  • 格式: opus (OGG 容器)
  • 编码: libopus
  • 采样率: 24000 Hz
  • 声道: 单声道

故障排查

ffmpeg 未安装

brew install ffmpeg

上传失败

检查飞书应用权限:

  • im:message
  • im:message:send_as_bot

消息发送成功但无法播放

确认:

  1. 上传时使用了 file_type=opus
  2. 上传时传递了 duration 参数