Skip to content
lewang edited this page Oct 17, 2023 · 1 revision

常见问题

1. 连不上自己的服务器

确认以下端口是否打开,如果主机服务商有防火墙或者访问规则的设置,这些端口也需要打开。

folotoy-server-self-hosting 默认的配置 docker-compose.yml 中,使用了 1883/tcp,8082/tcp,18083/tcp,8085/udp 这几个端口:

  • 1883/tcp : 必选, 玩具通过 MQTT(1883/tcp) 连接服务器
  • 8082/tcp : 必选, 玩具下载开机语音流和对话语音流的 HTTP 服务端口
  • 8085/udp : 必选, 玩具实时上传语音流的 UDP 端口
  • 18083/tcp: 可选, EMQX 的 Web 管理后台的 HTTP 端口

2. 连接刷机 USB 线后,看不到串口设备

  • 请确认玩具是否已经开机,刷机需要在通电开机状态下进行
  • 请确认刷机线是否为玩具配套的数据线,有些 USB 线只有充电功能,没有数据功能,需要使用有数据功能的 USB 线
  • 如果是 Windows 系统,如果插入 USB 线后无法找到串口设备,请尝试安装驱动
  • MacOS 不需要安装驱动,MacOS 刷机波特率可以选择 460800 或者更低
  • 请使用最新版 Chrome 或者 Edge 浏览器访问刷机工具来刷机

3. 修改 roles.json 后如何生效

在 folotoy-server-self-hosting 目录下执行 sudo docker compose restart 重启服务。

注意: 重启服务之后,玩具也需要关机重开或者按一次任意角色切换键来重新连接服务器

4. 修改 docker-compose.yml 后如何生效

在 folotoy-server-self-hosting 目录下执行 sudo docker compose up -d 重启服务。

注意: 重启服务之后,玩具也需要关机重开或者按一次任意角色切换键来重新连接服务器

5. 对话不支持上下文

修改 roles.json 里面 max_message_count 这个参数为一个大于0的数值,比如改成 50,这样表示上下文支持 50 次对话

在修改好 roles.json 之后,参考第 3 条使修改生效

6. 语音对话间隔时间长或者出现丢失

可以通过 AWS CloudFront CDN 加速来改善这种情况,最好的方式是换网速快的主机,如果 ping 值 200ms 以下,可以不用配置 CDN

配置 CDN 视频教程:

7. EMQX 后台看到未知客户端登录

需要对 EMQX 做一些安全配置,视频教程

8. 如何查看服务器日志

在部署目录下执行 sudo docker compose logs -f,按 Ctrl+C 退出。

日志文件所在位置:/var/lib/docker/containers/{container-id}/{container-id}-json.log , 执行命令 sudo docker ps 查看 container-id 前 12 个字符

9. 如何修改服务程序日志级别为 DEBUG

修改 docker-compose.yml 配置,修改之后需要参考前面步骤重启容器:

LOG_LEVEL: INFO

LOG_LEVEL: DEBUG