Install
openclaw skills install audio-broadcast控制小播鼠广播系统进行音频播放和广播通知。使用当用户需要向广播设备播放音频、设置音量、管理定时广播任务、或查看设备状态时。支持播放音频文件、URL播放、音量调节、设备管理、定时任务管理、文字转语音(TTS)广播等功能。Control xiaoboshu broadcast system for audio pla...
openclaw skills install audio-broadcast无锡小播鼠网络科技有限公司 / Wuxi Xiaoboshu Network Technology Co., Ltd.
📧 邮箱: oxiaom_js@foxmail.com
支持设备 / Supported Devices:
- 局域网 / LAN
- 互联网 / Internet
- WiFi音响 / WiFi Speaker
- 有线网络广播 / Wired Network Broadcast
- 4G广播设备 / 4G Broadcast Device
- 石头音响 / Rock Speaker
- 草坪音响 / Lawn Speaker
- 功放机 / Amplifier
🎵 PLOYQ
控制小播鼠广播设备进行音频播放和通知广播。
python scripts/xiaoboshu.py login <host> <username> <password>
127.0.0.1:12080登录后会保存凭据到 config.json。
python scripts/xiaoboshu.py devices
# 播放文件 (使用文件 ID 或文件名)
python scripts/xiaoboshu.py play <file_id> <device_ids|all>
# 播放 URL
python scripts/xiaoboshu.py play <url> <device_ids|all>
| 分隔,或用 all 表示全部设备python scripts/xiaoboshu.py stop <device_ids|all>
python scripts/xiaoboshu.py volume <volume> <device_ids|all>
python scripts/xiaoboshu.py tts "要广播的文字" <device_ids|all>
python scripts/xiaoboshu.py tts "要广播的文字" all --voice=yunxi
python scripts/xiaoboshu.py voices
| 名称 | 描述 |
|---|---|
| xiaoxiao | 晓晓 - 女声,自然亲切 (默认) |
| yunxi | 云希 - 男声,年轻活力 |
| yunjian | 云健 - 男声,成熟稳重 |
| xiaoyi | 晓伊 - 女声,温柔甜美 |
| yunxia | 云夏 - 男童声 |
| xiaochen | 晓辰 - 女声,新闻播报风格 |
| xiaohan | 晓涵 - 女声,温暖 |
| xiaomeng | 晓梦 - 女声,活泼 |
| xiaomo | 晓墨 - 女声,知性 |
| xiaoqiu | 晓秋 - 女声,温和 |
| xiaorui | 晓睿 - 女童声 |
| xiaoshuang | 晓双 - 女童声 |
| xiaoxuan | 晓萱 - 女声 |
| xiaoyan | 晓妍 - 女声 |
| xiaoyou | 悠悠 - 女童声 |
| yunfeng | 云枫 - 男声 |
| yunhao | 云皓 - 男声 |
| yunxiang | 云翔 - 男声 |
| yunyang | 云扬 - 男声 |
python scripts/xiaoboshu.py files
任务有两个状态字段:
| 字段 | 含义 | 值说明 |
|---|---|---|
enable | 任务启用状态 | 1=启用, 0=禁用 |
statu | 播放状态 | 1=正在播放, 0=未播放 |
重要规则:
enable 控制定时任务是否生效(到时间是否触发播放)statu 表示当前是否正在播放音频python scripts/xiaoboshu.py tasks
# 启用任务
python scripts/xiaoboshu.py task-enable <task_id>
# 禁用任务
python scripts/xiaoboshu.py task-disable <task_id>
# 启动任务 (立即执行)
python scripts/xiaoboshu.py task-start <task_id>
# 停止任务
python scripts/xiaoboshu.py task-stop <task_id>
# 删除任务
python scripts/xiaoboshu.py task-delete <task_id>
# 编辑任务名称
python scripts/xiaoboshu.py task-edit <task_id> --name=<新名称>
# 编辑任务时间
python scripts/xiaoboshu.py task-edit <task_id> --time=HH:MM:SS
# 编辑任务设备
python scripts/xiaoboshu.py task-devices <task_id> <device_ids>
# 编辑任务文件
python scripts/xiaoboshu.py task-files <task_id> <file_ids>
重要:删除任务前必须先禁用,直接删除不会生效!
# 1. 先禁用任务
python scripts/xiaoboshu.py task-disable <task_id>
# 2. 然后删除任务
python scripts/xiaoboshu.py task-delete <task_id>
如果任务状态显示 ▶ 播放中,删除前必须按顺序执行:
# 1. 先停止播放
python scripts/xiaoboshu.py task-stop <task_id>
# 2. 然后禁用任务
python scripts/xiaoboshu.py task-disable <task_id>
# 3. 最后删除任务
python scripts/xiaoboshu.py task-delete <task_id>
.mp3T 结尾的 URL(WiFi 音响专用转码).mp3 结尾的 URL(已适配格式)POST /user/delfile 参数:id, token, fileidttsO 或 TTS_ 开头,便于识别技能包含 cleanup_tts.py 脚本,用于自动清理服务器上的 TTS 临时文件:
# 手动执行清理
python scripts/cleanup_tts.py
清理逻辑:
ttsO 或 TTS_ 开头的文件安装技能后,建议创建定时任务每天自动清理 TTS 文件:
# 每天凌晨 3 点执行清理
python /root/.picoclaw/workspace/skills/audio-broadcast/scripts/cleanup_tts.py
定时任务配置示例:
python3 /root/.picoclaw/workspace/skills/audio-broadcast/scripts/cleanup_tts.py重要:上传音频文件前,必须检查文件是否包含图片信息(封面图、嵌入图片等),如果有则先去除!
# 使用 ffmpeg 查看元数据
ffmpeg -i 文件名.mp3
# 使用 eyeD3 查看(需要安装)
eyeD3 文件名.mp3
# 方法1: ffmpeg(推荐,保留音频质量)
ffmpeg -i input.mp3 -map 0:a -c:a copy -map_metadata -1 output.mp3
# 方法2: eyeD3(直接修改原文件)
eyeD3 --remove-images 文件名.mp3
xiaoboshu.py files 检查是否已存在同名文件上传文件前必须先检查是否已存在同名文件:
# 查看已有文件列表
python scripts/xiaoboshu.py files
如果发现重名文件,提示用户"已存在同名文件,是否需要替换?"
# 登录
python scripts/xiaoboshu.py login 127.0.0.1:12080 admin 123123123
# 查看设备
python scripts/xiaoboshu.py devices
# 查看文件
python scripts/xiaoboshu.py files
# 向所有设备播放文件 ID 37
python scripts/xiaoboshu.py play 37 all
# 向设备 35 和 36 播放
python scripts/xiaoboshu.py play 37 35|36
# 停止所有设备播放
python scripts/xiaoboshu.py stop all
# 设置设备音量为 50
python scripts/xiaoboshu.py volume 50 all
# TTS 广播 (默认语音)
python scripts/xiaoboshu.py tts "开饭了,请大家到餐厅用餐" all
# TTS 广播 (男声)
python scripts/xiaoboshu.py tts "注意,有快递到了" all --voice=yunxi
# TTS 广播 (女声,新闻风格)
python scripts/xiaoboshu.py tts "现在是北京时间十二点整" all --voice=xiaochen
详细 API 文档见 references/api.md。