hanxi/xiaomusic

FAQ问题集合

hanxi opened this issue · 25 comments

这个 issue 用来总结报错日志和对应的解决方法。

报错 601

报错日志大致如下:

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 后需要重启一次容器。
其他情况可能是被限制拉取对话记录次数,也可以尝试重启容器。
还有一种情况是配错了唤醒口令,可以在小爱音箱app里查看对话记录,也可以查看 xiaomusic 的日志。

日志显示正在播放,却没有声音

可以点击播放链接按钮,看看默认的那个链接能否播放。

已知部分触屏版不能播放可以设置 XIAOMUSIC_USE_MUSIC_API 为 true 试试。

其他版本可能是 XIAOMUSIC_HOSTNAME 配错了地址,不是 docker 主机地址会导致小爱音箱无法访问到。还有可能是端口配错了,修改了默认 8090 端口映射,需要同步修改其他参数,可以翻阅端口修改的文档。

如果端口不是8090,首次启动没配好端口的话,需要手动修改setting.json文件里的端口,或者把setting.json文件删除重新配置。

可以点击播放歌曲后,查看日志里的歌曲链接,放到浏览器里打开试试,不能访问说明是端口或者hostname问题,如果是异地访问,需要把 hostname 修改为外网ip或者域名,需要注意音箱只支持访问ipv4,不能是ipv6的公网。

无法播放 flac 格式歌曲

因设备差异和文件格式差异,已知部分设备不支持 flac 格式,比如 L05B L05C 。

docker 镜像拉取失败

请更换镜像源或者使用代理。不同环境更换镜像源的方式不一样,可以网上搜索自己的 NAS 如何更换镜像源。

启动失败,日志中出现 RuntimeError: can't start new thread

一般是 docker 版本太低,或者系统限制了 docker 使用的 cpu 数量,可以尝试升级 docker 到最新版本。

DNS 解析错误

一般会出现下面这样的日志,表现就是设置页面看不到设备列表。

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 主机。

如果还是不行可以把 docker 的网络模式改成 host 模式。

Login Failed 登陆失败

这个有专门的讨论,见 #16 ,一般是因为开了加速代理,关代理再尝试即可。也可以试试在局域网设备里的米家app上退出再重新登录一下。

点击播放后需要很久才开始播放的问题

目前0.3.x版本还存在这个问题没有完全解决,可以暂时回退到0.2.0版本继续使用。

安装的最新版本,即使没有使用,日志一直在不停的刷新,示例:
[10:20:36] [0.1.101] [DEBUG] Polling_event, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a': 1720430457236}
[10:20:36] [0.1.101] [DEBUG] Sleep 0.0003166699898429215, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a': 1720430457236}
[10:20:37] [0.1.101] [DEBUG] Listening new message, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a

之前的版本没有这个问题,这个是设置错误?还是本来就如此呢?

安装的最新版本,即使没有使用,日志一直在不停的刷新,示例: [10:20:36] [0.1.101] [DEBUG] Polling_event, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a': 1720430457236} [10:20:36] [0.1.101] [DEBUG] Sleep 0.0003166699898429215, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a': 1720430457236} [10:20:37] [0.1.101] [DEBUG] Listening new message, timestamp: {'eeb70da5-baa9-4b56-b2f3-7ee01276a18a

之前的版本没有这个问题,这个是设置错误?还是本来就如此呢?

正常现象,现在默认把调试日志打开了,可以在后台设置关闭调试日志的。

大佬,docker安装提示缺少很多module,我一个个在dockerfilie里加上,最后卡在miservice装不上了~

@Dx0123 其实不用手动安装依赖的,直接一行应该就行。

RUN pip install -U xiaomusic

@Dx0123 其实不用手动安装依赖的,直接一行应该就行。

RUN pip install -U xiaomusic

我直接用pip安装好之后,执行仍然有缺少的依赖,和docker里缺的一样。截图的module安装了之后还会有其他依赖缺失
image

@Dx0123 你的python版本是不是有问题?你参考下项目里的Dockerfile,用同一个From镜像试试。

有时候指令已停止,可是一会儿,又自动播放下一首,根本就停不下来。需要重启容器才能正常

有时候指令已停止,可是一会儿,又自动播放下一首,根本就停不下来。需要重启容器才能正常

点关机按钮也不行吗?

有时候指令已停止,可是一会儿,又自动播放下一首,根本就停不下来。需要重启容器才能正常

点关机按钮也不行吗?

是的,说关机,点关机,暂停都不行。只能重启容器。

有时候指令已停止,可是一会儿,又自动播放下一首,根本就停不下来。需要重启容器才能正常

点关机按钮也不行吗?

是的,说关机,点关机,暂停都不行。只能重启容器。

有没有日志看看?

有时候指令已停止,可是一会儿,又自动播放下一首,根本就停不下来。需要重启容器才能正常

点关机按钮也不行吗?

是的,说关机,点关机,暂停都不行。只能重启容器。

有没有日志看看?

[12:20:55] [0.3.13] [INFO] xiaomusic.py:1193: stop now
[12:21:03] [0.3.13] [INFO] xiaomusic.py:1162: get_volume. playing_info:{'code': 0, 'message': "Msg has been successfully proxy to the device, this service is a simple proxy, if you encounter any problems pls contact ROM's developers directly!!!", 'data': {'code': 0, 'info': '{ "status": 3, "volume": 20, "loop_type": 1 }'}}
[12:21:03] [0.3.13] [INFO] xiaomusic.py:1167: get_volume. volume:20
[12:21:57] [0.3.13] [INFO] httpserver.py:182: getsetting device_list: [{'deviceID': '0116bbc9-',
[12:23:08] [0.3.13] [INFO] xiaomusic.py:1162: get_volume. playing_info:{'code': 0, 'message': "Msg has been successfully proxy to the device, this service is a simple proxy, if you encounter any problems pls contact ROM's developers directly!!!", 'data': {'code': 0, 'info': '{ "status": 3, "volume": 20, "loop_type": 1 }'}}
[12:23:08] [0.3.13] [INFO] xiaomusic.py:1167: get_volume. volume:20
[12:24:41] [0.3.13] [INFO] xiaomusic.py:882: 开始播放下一首