Skip to content

收款播报收不到消息排查 ​

更新时间:2026/11/6 21:13:23

现象 ​

收款播报 APP 激活成功(或激活时报错),收款成功后手机不播报、不打印;或设备时而在线时而掉线、偶发漏播报。

原因 ​

播报消息由平台经 MQTT over WebSocket(wss) 长连接推送到手机,链路是:

收款成功 → 平台 → 消息服务(Artemis 61614)→ wss 域名(外层网关/负载均衡)→ 手机 APP

激活成功只说明手机与平台 API 之间畅通;上面这条消息管道任何一环不通,播报都不会到达,而 APP 侧往往只表现为"安静地收不到",没有明确报错。九成问题出在管道未打通或配置不一致。

排查顺序 ​

从平台侧往手机侧逐环检查:

  1. 平台 MQTT 配置是否已填:管理端「系统管理 → 系统配置 → 平台配置 → MQTT 接入」三项(接入地址 / 接入账号 / 接入密码)是否都已填写保存。未填写时激活下发的接入地址为空,手机根本无处可连;
  2. 接入地址是否正确:地址须为 wss:// 开头的完整域名(如 wss://mqtt.example.com),与面板「网关管理 → MQTT 接入」绑定的接入域名(或自建反代域名)一致;改过平台配置的,已激活设备要重新激活一次才用新地址;
  3. 订阅主题形态是否正确:激活响应里下发的 topic 必须是斜杠形式 daxpay/device/audio/{设备号}。若仍是点号 daxpay.device.audio.{设备号},说明设备未重新激活或后端仍是旧版本;点号订阅在 Artemis 2.33+ 会落到转义单段地址,不命中 daxpay.device.# 权限段,订阅会被拒(SUBACK 0x80)。不要用「放宽 # 段」绕过,应按手动部署的主题契约核对;
  4. 消息服务是否就绪:面板用户看「Artemis MQTT 接入」状态卡是否全绿(含 61614 接入端口);自建用户对照手动部署片段逐项核对——尤其 security-setting 权限是否列全、61616 是否已把 MQTT 摘除;
  5. 证书是否有效:wss:// 需要域名的 HTTPS 证书有效且与访问域名匹配,证书过期或域名不符会导致连接被手机系统拒绝;
  6. 账号密码是否一致:平台配置的接入账号密码必须与 broker 侧 app-device 账号一致;改过 broker 侧密码的,平台侧要同步修改并重新激活设备;
  7. 是否套了 CDN:接入域名经多数 CDN 代理会因长连接超时被掐断,表现为频繁掉线、漏播报——接入域名应单独解析到源站,或经支持 WebSocket 长连接的外层网关终结 HTTPS;
  8. 应用开关与订单来源:设备归属应用的「语音播报」「小票打印」开关是否开启(两端应用管理中配置);线上 API / 易支付来源的订单默认不播不印,属设计行为;
  9. 设备状态:商户端「收款设备」页设备是否启用、是否显示在线(长期离线说明手机被系统清理或管道断开,先重新打开 APP)。

处置 ​

  • 面板用户:状态卡未全绿就点一次「一键应用配置」;域名 / 证书 / CDN 按网关管理 - MQTT 接入核对;
  • 自建用户:按手动部署补齐配置并重启 Artemis;反代层确认 WebSocket 升级头与空闲超时(不小于心跳间隔的两倍);
  • 配置改动后:在 APP 里重新激活设备,再验证。

自查 ​

不发起真实收款也能验证整条管道:运营端或商户端设备行的「试播」入口会推送一条测试语音——能听到说明管道与开关全部正常,收款不播时再回到第 8 步查订单来源与开关;试播也收不到,则是第 1~7 步的管道问题。


返回 FAQ