腾讯云IM接口文档相当齐全,可以供开发者快速接入单聊、群聊功能到企业系统中。开发者可以根据自己的业务需求,利用相应的接口实现自己的业务需求。如群聊,自定义发言、自定义禁言、自定义在线状态等功能。
一、注册账号
1、注册好腾讯云账号,登录进行创建应用,获取到sdkappid、secretkey、userId。
二、引入依赖及获取userSign
1、引入依赖
<dependency> <groupId>com.github.tencentyun</groupId> <artifactId>tls-sig-api-v2</artifactId> <version>2.0</version> </dependency>
2、获取userSign(参考即时通信 IM 生成 UserSig - 服务端 API - 文档中心 - 腾讯云)
public String genUserSig(String userId) { TLSSigAPIv2 api = new TLSSigAPIv2(sdkAppId, secretKey); String userSig = api.genUserSig(userId, expireTime); return userSig; }
三、基本业务需要用到的接口
1、导入单个账号(即时通信 IM 导入单个帐号 - 服务端 API - 文档中心 - 腾讯云)。
2、导入多个账号。
3、查询账号。
4、删除账号。
5、创建群组。
6、解散群组。
7、导入群成员。
8、删除群成员。
9、设置资料(设置群成员昵称等)。
10、在群组中发送普通消息(自定义消息)。
11、群、单聊发言前、后回调接口(详见https://blog.csdn.net/wode3157695297/article/details/121063652)。
四、接口调用demo方法-导入单个账号
public Result<?> accountImport(JSONObject jsonObject) { String identifier = jsonObject.getString("identifier"); // 用户名,长度不超过32字节 String nick = jsonObject.getString("nick"); // 用户昵称 String faceUrl = jsonObject.getString("faceUrl"); // 用户头像 URL if (oConvertUtils.isEmpty(identifier)) { Result.Tips("用户名不能为空!"); } Long random = RandomUtil.genRandomNum(32); String accountImport= "https://console.tim.qq.com/v4/im_open_login_svc/account_import?sdkappid=%s&identifier=%s&usersig=%s&random=%s&contenttype=json"; try { String userSig = genUserSig(); String url = String.format(accountImport, sdkAppId, userId, userSig, random); JSONObject js = new JSONObject(); js.put("Identifier", identifier); js.put("Nick", nick); js.put("FaceUrl", faceUrl); String body = HttpUtil.post(url,js.toString()); log.info("导入单个账号应答包体报文:{}", body); if (StrUtil.isEmpty(body)) { return null; } //ErrorCode Integer 错误码,0表示成功,非0表示失败 Integer code = (Integer) JSONUtil.parseObj(body).get("ErrorCode"); if (code == 0) { //导入单个账号成功 return Result.OK("导入单个账号成功!"); } return Result.OK(body); } catch (Exception e) { log.error("导入单个账号异常", e); return Result.OK(e); } }
总结:由于接入腾讯云IM有一段时间了,才写这篇文章,所以只列举了一些关键接口,和一个demo,如有小白需要接入,可以多看腾讯云在线接口文档,里面有详细的说明,本文只是记录和引导小白去看文档开发作用。