1
0
mirror of https://github.com/hanxi/xiaomusic.git synced 2025-12-11 15:38:14 +08:00

Auto-Generate docs 🤖

This commit is contained in:
Issues Docs [BOT]
2025-01-18 01:42:12 +00:00
parent bf2642c469
commit 45a7d65c07

View File

@@ -4,188 +4,192 @@ title: 💬 FAQ问题集合
# 💬 FAQ问题集合 # 💬 FAQ问题集合
> [!NOTE] > [!NOTE]
> 这个 issue 用来总结报错日志和对应的解决方法。 > 这个 issue 用来总结报错日志和对应的解决方法。
## ❓ XIAOMUSIC_HOSTNAME 怎么填 ## ❓ XIAOMUSIC_HOSTNAME 怎么填
填写 docker 主机的 ip **不是小爱音箱的ip**,一般就是网页访问的后台地址里的 ip ,只要确保 ip 和小爱音箱在一个局域网内就行。 填写 docker 主机的 ip **不是小爱音箱的ip**,一般就是网页访问的后台地址里的 ip ,只要确保 ip 和小爱音箱在一个局域网内就行。
同时也支持 xx.xx.com 的域名格式,用于配置反代供外网访问,比如小爱音箱和 docker 主机不在同一个局域网内。 同时也支持 xx.xx.com 的域名格式,用于配置反代供外网访问,比如小爱音箱和 docker 主机不在同一个局域网内。
## ❓ Login Failed 登陆失败 ## ❓ Login Failed 登陆失败
表现就是 **后台看不到设备列表** ,日志中会有对应的报错。 表现就是 **后台看不到设备列表** ,日志中会有对应的报错。
这个有专门的讨论,见 </issues/16.html> 一般是因为开了加速代理关代理再尝试即可。也可以试试在局域网设备里的米家app上退出再重新登录一下。 这个有专门的讨论,见 </issues/16.html> 一般是因为开了加速代理关代理再尝试即可。也可以试试在局域网设备里的米家app上退出再重新登录一下。
在小米官网 www.mi.com 登陆过人脸或滑块验证基本上能解决 99%的 login failed 问题。 在小米官网 www.mi.com 登陆过人脸或滑块验证基本上能解决 99%的 login failed 问题。
来自 @yilikun 的友情提示: 来自 @yilikun 的友情提示:
> 1. 关闭本地代理。 > 1. 关闭本地代理。
> 2. 如果是nas运行的网络由bridge改为host。 > 2. 如果是nas运行的网络由bridge改为host。
> 3. 米家app重新登陆。 > 3. 米家app重新登陆。
> 4. mi.com官网重新登陆。 > 4. mi.com官网重新登陆。
> 5. 检查 setting.json 文件里的账号密码是否正确。 > 5. 检查 setting.json 文件里的账号密码是否正确。
## ❓ 网页后台可以播放,语音控制无效 ## ❓ 网页后台可以播放,语音控制无效
这种情况是拉取不到对话记录导致的。 这种情况是拉取不到对话记录导致的。
如果是首次在网页后台保存 did 后需要重启一次容器。 如果是首次在网页后台保存 did 后需要重启一次容器。
其他情况可能是被限制拉取对话记录次数,也可以尝试重启容器。 其他情况可能是被限制拉取对话记录次数,也可以尝试重启容器。
还有一种情况是配错了唤醒口令可以在小爱音箱app里查看对话记录也可以查看 xiaomusic 的日志。默认口令前缀是【播放歌曲】,没有这个前缀是无法识别的,说播放音乐是没用的,除非自己设置其他口令词。 还有一种情况是配错了唤醒口令可以在小爱音箱app里查看对话记录也可以查看 xiaomusic 的日志。默认口令前缀是【播放歌曲】,没有这个前缀是无法识别的,说播放音乐是没用的,除非自己设置其他口令词。
已知 `M01/XMYX01JY 小米小爱音箱HD` 获取对话记录的接口比较特殊,需要开启【特殊型号获取对话记录:】开关才能正常语音控制。 已知 `M01/XMYX01JY 小米小爱音箱HD` 获取对话记录的接口比较特殊,需要开启【特殊型号获取对话记录:】开关才能正常语音控制。
## ❓ 日志显示正在播放,却没有声音 ## ❓ 日志显示正在播放,却没有声音
可以点击播放链接按钮,看看默认的那个链接能否播放。 可以点击播放链接按钮,看看默认的那个链接能否播放。
已知部分触屏版不能播放可以在后台设置 【型号兼容模式】为 true 试试。 已知部分触屏版不能播放可以在后台设置 【型号兼容模式】为 true 试试。
其他情况可能是 XIAOMUSIC_HOSTNAME 配错了地址,不是 docker 主机地址会导致小爱音箱无法访问到,而且需要和小爱音箱在同一个**局域网**下的地址。还有可能是端口配错了,**修改了默认 8090 端口映射**,需要同步修改其他参数,可以翻阅端口修改的文档。 其他情况可能是 XIAOMUSIC_HOSTNAME 配错了地址,不是 docker 主机地址会导致小爱音箱无法访问到,而且需要和小爱音箱在同一个**局域网**下的地址。还有可能是端口配错了,**修改了默认 8090 端口映射**,需要同步修改其他参数,可以翻阅端口修改的文档。
如果端口不是8090首次启动没配好端口的话需要手动修改setting.json文件里的端口或者把setting.json文件删除重新配置或者在后台修改监听端口后重启。 如果端口不是8090首次启动没配好端口的话需要手动修改setting.json文件里的端口或者把setting.json文件删除重新配置或者在后台修改监听端口后重启。
可以点击播放歌曲后查看日志里的歌曲链接放到浏览器里打开试试不能访问说明是端口或者hostname问题如果是异地访问需要把 hostname 修改为外网ip或者域名需要注意音箱只支持访问ipv4不能是ipv6的公网。 可以点击播放歌曲后查看日志里的歌曲链接放到浏览器里打开试试不能访问说明是端口或者hostname问题如果是异地访问需要把 hostname 修改为外网ip或者域名需要注意音箱只支持访问ipv4不能是ipv6的公网。
如果是配了公网反代端口,注意区分是 http 还是 https ,如果是 https 的,配置 XIAOMUSIC_HOSTNAME 时需要加上 `https:// ` 前缀。 如果是配了公网反代端口,注意区分是 http 还是 https ,如果是 https 的,配置 XIAOMUSIC_HOSTNAME 时需要加上 `https:// ` 前缀。
## ❓ 无法播放 flac 格式歌曲 ## ❓ 无法播放 flac 格式歌曲
因设备差异和文件格式差异,已知部分设备不支持 flac 格式,比如 L05B L05C 。 因设备差异和文件格式差异,已知部分设备不支持 flac 格式,比如 L05B L05C 。
## ❓ docker 镜像拉取失败 ## ❓ docker 镜像拉取失败
请更换镜像源或者使用代理。不同环境更换镜像源的方式不一样,可以网上搜索自己的 NAS 如何更换镜像源。 请更换镜像源或者使用代理。不同环境更换镜像源的方式不一样,可以网上搜索自己的 NAS 如何更换镜像源。
已经可以通过 [DaoCloud](https://github.com/DaoCloud/public-image-mirror) 拉取镜像。 已经可以通过 [DaoCloud](https://github.com/DaoCloud/public-image-mirror) 拉取镜像。
``` ```
docker pull m.daocloud.io/docker.io/hanxi/xiaomusic:latest docker pull m.daocloud.io/docker.io/hanxi/xiaomusic:latest
docker tag m.daocloud.io/docker.io/hanxi/xiaomusic:latest hanxi/xiaomusic:latest docker tag m.daocloud.io/docker.io/hanxi/xiaomusic:latest hanxi/xiaomusic:latest
``` ```
## ❓ 启动失败,日志中出现 RuntimeError: can't start new thread ## ❓ 启动失败,日志中出现 RuntimeError: can't start new thread
一般是 docker 版本太低,或者系统限制了 docker 使用的 cpu 数量,可以尝试升级 docker 到最新版本。 一般是 docker 版本太低,或者系统限制了 docker 使用的 cpu 数量,可以尝试升级 docker 到最新版本。
## ❓ DNS 解析错误 ## ❓ DNS 解析错误
一般会出现下面这样的日志,表现就是设置页面看不到设备列表。 一般会出现下面这样的日志,表现就是设置页面看不到设备列表。
``` ```
aiohttp.client_ _exceptions. ClientConnectorError: Cannot connect to host account.xiaomi.com:443 ssl:False [Temporary failure in name resolution] aiohttp.client_ _exceptions. ClientConnectorError: Cannot connect to host account.xiaomi.com:443 ssl:False [Temporary failure in name resolution]
``` ```
可以尝试把主机的 DNS 设为 223.5.5.5 之后重启 docker 主机。 可以尝试把主机的 DNS 设为 223.5.5.5 之后重启 docker 主机。
如果还是不行可以把 docker 的网络模式改成 host 模式。 如果还是不行可以把 docker 的网络模式改成 host 模式。
## ❓ 点击播放后需要很久才开始播放的问题 ## ❓ 点击播放后需要很久才开始播放的问题
这个问题新版本已经解决,如果还存在请反馈。 这个问题新版本已经解决,如果还存在请反馈。
~目前0.3.x版本还存在这个问题没有完全解决可以暂时回退到0.2.0版本继续使用。~ ~目前0.3.x版本还存在这个问题没有完全解决可以暂时回退到0.2.0版本继续使用。~
## ❓ 如何配置多个歌曲目录 ## ❓ 如何配置多个歌曲目录
```yaml ```yaml
services: services:
xiaomusic: xiaomusic:
image: hanxi/xiaomusic image: hanxi/xiaomusic
container_name: xiaomusic container_name: xiaomusic
restart: unless-stopped restart: unless-stopped
ports: ports:
- 8090:8090 - 8090:8090
volumes: volumes:
- /data/music1:/app/music/music1 - /data/music1:/app/music/music1
- /data/music2:/app/music/music2 - /data/music2:/app/music/music2
- /data/download:/app/music/download - /data/download:/app/music/download
- /data/xiaomusic/conf:/app/conf - /data/xiaomusic/conf:/app/conf
``` ```
冒号左边的 `/data/music1``/data/music2` 改成你的目录即可。如果你是 windows 的 docker ,可以改成 `D:/music1``D:/music2`,盘符号开头,用 `/` 分割。 冒号左边的 `/data/music1``/data/music2` 改成你的目录即可。如果你是 windows 的 docker ,可以改成 `D:/music1``D:/music2`,盘符号开头,用 `/` 分割。
如果是 docker 部署的,建议不要去修改 web 后台里的音乐路径和配置路径等等所有路径除非你熟悉 docker 的目录映射机制。 如果是 docker 部署的,建议不要去修改 web 后台里的音乐路径和配置路径等等所有路径除非你熟悉 docker 的目录映射机制。
## ❓ 能不能中文名 ## ❓ 能不能中文名
```yaml ```yaml
services: services:
xiaomusic: xiaomusic:
image: hanxi/xiaomusic image: hanxi/xiaomusic
container_name: xiaomusic container_name: xiaomusic
restart: unless-stopped restart: unless-stopped
ports: ports:
- 8090:8090 - 8090:8090
volumes: volumes:
- /data/music1:/app/music/歌曲目录1 - /data/music1:/app/music/歌曲目录1
- /data/music2:/app/music/歌曲目录2 - /data/music2:/app/music/歌曲目录2
- /data/download:/app/music/download - /data/download:/app/music/download
- /data/xiaomusic/conf:/app/conf - /data/xiaomusic/conf:/app/conf
``` ```
## ❓ 能不能多层目录 ## ❓ 能不能多层目录
可以,每层的每个目录会识别为一个播放列表。 可以,每层的每个目录会识别为一个播放列表。
## ❓ 是否需要手动获取 did ## ❓ 是否需要手动获取 did
新版本不需要手动获取配置 did不需要配置环境变量直接在 web 后台填入小米账号密码保存后会自动获取到 did ,然后勾选对应的设备即可。 新版本不需要手动获取配置 did不需要配置环境变量直接在 web 后台填入小米账号密码保存后会自动获取到 did ,然后勾选对应的设备即可。
## ❓ 报错 601 ## ❓ 报错 601
报错日志大致如下: 报错日志大致如下:
```txt ```txt
Exception: Error https://api2.mina.mi.com/remote/ubus: {"code":601,"message":"illegal argument exception","data":"IllegalArgumentException: ubus call format illegal!"} Exception: Error https://api2.mina.mi.com/remote/ubus: {"code":601,"message":"illegal argument exception","data":"IllegalArgumentException: ubus call format illegal!"}
``` ```
原因是没有配置 did ,或者 did 配置错误。可以到设置页面选择正确的设备类型和 did 然后保存。 原因是没有配置 did ,或者 did 配置错误。可以到设置页面选择正确的设备类型和 did 然后保存。
## ❓ 新功能没有生效 ## ❓ 新功能没有生效
在设置页面重新保存一下,或者删除 setting.json 文件,重新在后台设置一次。 在设置页面重新保存一下,或者删除 setting.json 文件,重新在后台设置一次。
## ❓ 为什么会先说小爱音箱自带的回答,再说下载中或者过一会儿才播放本地歌曲 ## ❓ 为什么会先说小爱音箱自带的回答,再说下载中或者过一会儿才播放本地歌曲
设计原理就是每秒不停的抓取对话记录,然后再打断小爱音箱自带的处理流程。整个过程下来会有延时,所以打断不会很及时,做不到无缝衔接。 设计原理就是每秒不停的抓取对话记录,然后再打断小爱音箱自带的处理流程。整个过程下来会有延时,所以打断不会很及时,做不到无缝衔接。
## ❓ 云服务器上能否安装 ## ❓ 云服务器上能否安装
可以安装,登录 mi.com 这个步骤可以使用终端里的浏览器 [carbonyl](https://github.com/fathyb/carbonyl) 来操作: 可以安装,登录 mi.com 这个步骤可以使用终端里的浏览器 [carbonyl](https://github.com/fathyb/carbonyl) 来操作:
```shell ```shell
docker run --rm -ti fathyb/carbonyl https://mi.com docker run --rm -ti fathyb/carbonyl https://mi.com
``` ```
或者使用 [browsh](https://github.com/browsh-org/browsh) 或者使用 [browsh](https://github.com/browsh-org/browsh)
```shell ```shell
docker run --rm -it browsh/browsh --startup-url https://mi.com docker run --rm -it browsh/browsh --startup-url https://mi.com
``` ```
## 在播放歌曲时,问小爱查询天气,小爱查询天气时,中途会断掉。 ## 在播放歌曲时,问小爱查询天气,小爱查询天气时,中途会断掉。
播放中会被xiaomusic接管会跟原有功能冲突需要先说关机来关闭xiaomusic的功能再问小爱查询天气。 播放中会被xiaomusic接管会跟原有功能冲突需要先说关机来关闭xiaomusic的功能再问小爱查询天气。
## 我家有个奇怪的问题,你给它暂停了,它过一会儿又自己开始唱了,不勘其扰。小爱重启都没用。 ## 我家有个奇怪的问题,你给它暂停了,它过一会儿又自己开始唱了,不勘其扰。小爱重启都没用。
要说【关机】才能关掉 xiaomusic ,否则下一曲定时器到了会继续播放下一曲。 要说【关机】才能关掉 xiaomusic ,否则下一曲定时器到了会继续播放下一曲。
## 为什么播放进度条不能拖动 ## 为什么播放进度条不能拖动
没有接口,目前做不到。 没有接口,目前做不到。
## 本机有声音,小爱音箱没声音,请问什么原因? ## 小爱触屏能不能显示本地的歌名歌词封面
排查步骤: 可以,设置页面打开【继续播放】开关。
1. 测试链接是否能播放,能播放说明小爱音箱控制没问题,继续下一步排查。不能播放说明控制不了你的小爱音箱,一般是【型号兼容模式】设置问题。 ## 本机有声音,小爱音箱没声音,请问什么原因?
3. 小爱音箱和 NAS 是否在同一个局域网,检查 NAS 的 IP 和音箱的 IP 是否在同一个网段,不在同一个网段会导致音箱无法访问到 NAS 。如果在同一个局域网,检查 NAS 上的防火墙配置,关闭防火墙再测试,如果还是不行就继续下一步。
4. 查看容器日志中的歌曲链接是否正常,点击后台页面上的播放歌曲时,容器中会有歌曲链接,一般是 http 开头的链接,复制完整链接到浏览器试试看能否打开,能打开说明网络没问题,继续下一步排查。不能打开有可能是 ip 和端口配置错误,请使用设置页面的自动填按钮自动填 ip 和端口。 排查步骤:
1. 测试链接是否能播放,能播放说明小爱音箱控制没问题,继续下一步排查。不能播放说明控制不了你的小爱音箱,一般是【型号兼容模式】设置问题。
3. 小爱音箱和 NAS 是否在同一个局域网,检查 NAS 的 IP 和音箱的 IP 是否在同一个网段,不在同一个网段会导致音箱无法访问到 NAS 。如果在同一个局域网,检查 NAS 上的防火墙配置,关闭防火墙再测试,如果还是不行就继续下一步。
4. 查看容器日志中的歌曲链接是否正常,点击后台页面上的播放歌曲时,容器中会有歌曲链接,一般是 http 开头的链接,复制完整链接到浏览器试试看能否打开,能打开说明网络没问题,继续下一步排查。不能打开有可能是 ip 和端口配置错误,请使用设置页面的自动填按钮自动填 ip 和端口。
5. 歌曲文件格式是否是 mp3 格式,有些型号无法播放 flac 格式的歌曲,请使用 mp3 格式的歌曲文件测试,一个不行就多找几个文件测试。 5. 歌曲文件格式是否是 mp3 格式,有些型号无法播放 flac 格式的歌曲,请使用 mp3 格式的歌曲文件测试,一个不行就多找几个文件测试。
## 评论 ## 评论