非托管用户集成方案请教

唐睿 1月前 72

背景:目前自己的项目有用户体系,登录授权体系,已有业务运行,其中为了实现小程序,安卓,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端?还是实现用户同步?

最新回复 (3)
  • HeavyRain 29天前
    引用 2
    有2种办法处理用户信息:
    1,同步方案,当原系统中有用户信息变动同步到IM服务。这个方案的好处是客户端可以直接用,但缺点时同步可能不能及时同步。
    2,废弃IM用户托管功能,所有的用户信息获取都通过原有系统获取,缺点是需要修改页面上的代码把获取用户信息的方法从野火的方法改为客户自己的方法,这个可能是更好更彻底的方法
  • 唐睿 28天前
    引用 3
    感谢回复,综合考虑采用方案1去处理。
    产生一个新的问题,同步用户信息使用http://domain:18080/admin/user/update接口,更新头像时,参数传的什么?我看是String类型
  • x86 28天前
    引用 4
    是的,是 string,是头像图片对应的url 地址
返回