# 《分布式IM系统》大后端平台-用户服务-第04节:用户微服务整合即时通讯SDK

作者:冰河
星球:http://m6z.cn/6aeFbs (opens new window)
博客:https://binghe.gitcode.host (opens new window)
文章汇总:https://binghe.gitcode.host/md/all/all.html (opens new window)
源码获取地址:https://t.zsxq.com/0dhvFs5oR (opens new window)
课程视频:https://t.zsxq.com/17RnYp82j (opens new window)

沉淀,成长,突破,帮助他人,成就自我。

  • 本节难度:★★☆☆☆
  • 本节重点:实现大后端平台中用户微服务整合即时通讯SDK,通过即时通讯SDK获取用户的在线状态和终端设备信息,掌握业务系统整合即时通讯SDK的方式方法,并能够将其灵活应用到自身实际项目中。
  • 课程视频:https://t.zsxq.com/17RnYp82j (opens new window)

大家好,我是冰河~~

在分布式IM即时通讯系统中,大后端平台的用户微服务最核心的功能就是对用户基本信息的管理,在对用户基本信息进行管理时,会涉及到用户在线状态的展示,以及用户目前使用的终端设备展示,那这些展示信息从哪里获取呢?此时,就需要通过我们已经封装好的即时通讯SDK来实现。

# 一、前言

在前面的章节中,我们已经实现了用户微服务的基础功能,并且在实现用户微服务的基础功能时,预留出一些需要通过即时通讯SDK来完成的功能。例如,查询用户列表、获取用户详情信息和获取当前用户信息时,都需要通过即时通讯SDK来获取用户的在线状态,而查询用户的在线终端设备则需要通过即时通讯SDK来获取用户的在线设备数据。

# 二、本节诉求

实现用户微服务整合即时通讯SDK,通过即时通讯SDK获取用户的在线状态和终端设备信息,掌握业务系统整合即时通讯SDK的方式方法,并能够将其灵活应用到自身实际项目中。

# 三、整合流程

在用户微服务中,获取用户的基本信息时,需要通过即时通讯SDK来获取用户的在线状态以及终端设备信息,大体示意图如图4-1所示。


可以看到,客户端调用大后端平台中用户微服务的接口来获取用户的基本信息数据时,用户微服务会通过即时通讯SDK从分布式缓存中获取与用户终端建立连接的即时通讯后端服务的ID,以此判断用户的在线状态,并获取用户的在线终端设备信息。

# 四、整合SDK

整个整合过程也比较简单,具体步骤如下所示。

(1)引入SDK依赖

首先,在bh-im-platform工程下的pom.xml文件的依赖管理配置中,引入即时通讯SDK的依赖,如下所示。

<dependency>
    <groupId>io.binghe.im</groupId>
    <artifactId>bh-im-sdk-core</artifactId>
    <version>${project.version}</version>
</dependency>
1
2
3
4
5

# 查看完整文章

加入冰河技术 (opens new window)知识星球,解锁完整技术文章与完整代码