背景:目前自己的项目有用户体系,登录授权体系,已有业务运行,其中为了实现小程序,安卓,IOS跨平台采用的是uni-app实现。目前想在项目中集成野火组件实现IM功能并且已经学习了一段时间野火资料还是碰到一些问题请大神指教。
现状:IMServer已部署成功,并且使用Demo测试了功能可用,现在将uni-app的demo和插件都已集成到应用,调试可用,但是是两套用户体系,如何能只用自己应用的用户体系使用IM?看了资料是可以选择非托管用户,但需要改造。我们做了如下尝试:
1、我们在自己应用中后端登录成功后通过野火SDK返回前端token,然后前端在登录成功后通过自有系统用户ID和token连接到IMServer,并将配置文件改为非好友也能通讯。(已实现)
2、在客户端获取用户信息时候,使用的是wfc插件,发现是查询IMServer的用户信息,因此返回的数据都为空(用户头像,用户名称等信息)
3、如果使用api同步用户信息也能做到,但是太麻烦,每次应用系统用户信息变化都要同步。
4、如果不用wfc插件,自己编写接口调用工作量有点大。
5、如果修改IMServer相关UderAdmin等类,后续版本更新,或者想更新为专业版又存在再次修改。
现在面临的问题是想用户非托管情况下,有没有更好的实现方案?是放弃前端wfc插件,重写调用?还是更改IMServer端?还是实现用户同步?