0.0.1. Q. 我部署完成Demo服务后,客户端能登录,但一只显示连接中

A. 请按照如下步骤检查:

  1. 确保只有一个IM服务实例在运行。社区版是单机单实例版本,如果启动多个实例会有异常,请确保只有一个实例启动。查询实例个数方法请百度,或者直接重启机器。 如果是商业版,每台服务器上也只能运行一个IM服务实例,且集群内每个IM服务实例的节点号不能重复。
  2. 检查端口是否绑定失败。查看logs/wildfirechat.log 看里面是不是有异常抛出,看一下异常原因。异常原因里有bind失败就是端口被占用。需要找到使用该端口的应用并停止掉,然后重启IM服务。或者换一台服务器。
  3. 检查服务器配置中的server.ip是否配置正确。server.ip应该是服务器的对外提供服务的IP地址。如果是专业版,需要使用正确的节点域名。
  4. 检查安全组是否将1883,80开放。如果有Web/小程序客户端,检查8083/8084端口是否开放。如果是专业版,需要确保每个节点都要开放这几个端口。
  5. 检查端口是否对外开放。在服务器上使用curl http://localhost/api/version或使用浏览器打开http://localhost/api/version看看是否返回一个json。然后再在另外一台电脑上用浏览器打开http://{server.ip}/api/version。 看看是否返回同样的json。
  6. 检查客户端配置是否正确。确保客户端配置正确,IM HOST 只支持一级域名和im二级域名,比如im.example.com,也可以是IP,建议用域名,注意不能带http头和端口。如果是商业版,客户端IM服务host只能配置为授权域名,不能使用IP地址或节点域名。
  7. 检查客户端连接状态值,如果总是kConnectionStatusSecretKeyMismatch,说明请求token使用的clientId不是从协议栈获取的,或者部署多个环境,请求token的环境和客户端实际使用的环境不一致。
  8. 如果客户端的连接状态是kConnectionStatusRejected,需要查看用户的状态,是不是被禁止登录。
  9. 如果一直是好用的,突然某个客户端一直连接中,可能是被禁用,也可能是多端登录而客户端又没有处理好对应的错误码,请检查错误码,查看是不是通用问题的问题8.

如果上述步骤全部排查完毕还不能解决问题,请抓取客户端协议栈日志,发送邮件到 support@wildfirechat.cn,我们会抽空分析,如果是付费客户,请注明公司信息。

2018 © wildfirechat.cn 京ICP备18060403号-1 all right reserved,powered by Gitbook该文件修订时间: 2020-11-17 16:43:02

results matching ""

    No results matching ""