注意:以下文档只适用于TOP接口,请谨慎使用!

OpenIM服务端客户端交互图

服务端集成准备

OpenIM服务端提供了7个TOP接口,提供的功能点有:

  • IM账号管理(增、删、改、查)
  • 服务端向用户发送IM消息(支持自定义消息)
  • 聊天记录导出
  • 群的管理

 

在集成前你可能需要用到:

一、TOP API调用原理说明

 

二、API在线调用工具使用

 

三、服务端SDK下载

 

服务端开始集成

OpenIM账号数据结构说明

开发者在服务端,需要调用这些接口对用户信息进行相关操作,以便后续客户端登录时用户能够正常使用IM功能。

定义用户信息的结构体:

	Userinfos//账号管理场景需要用到
	{
		"userid": "test0", //用户名
		"password": "123456", //密码
		"nick": "书通", //用户昵称
		"mobile": "18958090000", //手机
		"email": "hehe@taobao.com",//邮箱
		"icon_url": "http://xxx.com/xxx"
	}
	OpenImUser//群管理、聊天记录导出场景需要用到
	{
		"app_key": "23018936",
		"taobao_account": false,
		"uid": "test0"
	}

字段限制

字段名 最大长度 是否必选 额外说明
userinfos 100 该入参为账号数组,最大长度限制为100个账号.
userid 64 只允许字符集为:所有小写字母(大写字母也会被转换成小写)以及符号(.@-_)
password 64 密码,可用任意编码方式进行编码处理,OpenIM不需要真正的密码
mobile 64 电话号码,可选
email 128 邮箱,可选
taobaoid 64 淘宝账号,可选

 

API在线工具使用示例

IM账号管理

开发者需要将自己的账号体系做一定的处理,再导入IM服务端。这些账号在IM这里用来做唯一标识符。因此可以不传真实的账号。

 API名称 功能 
 taobao.openim.users.add  批量将账号导入IM服务器 
 taobao.openim.users.get  批量查询账号
 taobao.openim.users.delete  批量将账号从IM服务器删除
 taobao.openim.users.update  批量更新账号

服务端向IM用户发消息

在服务端,支持给IM用户发送消息。

 API名称 功能 
 taobao.openim.custmsg.push IM用户推送消息,客户端能接到新消息 

聊天记录导出

开发者可以导出在IM里面所有的聊天记录数据。

 API名称 功能 
 taobao.openim.relations.get  获取聊天对象 
 taobao.openim.chatlogs.get  根据聊天对象查询具体的聊天内容 

群的管理

开发者可以在服务端,进行群相关的操作。包括群的增/减、群成员管理、群信息管理。

 

 API名称 功能 
 taobao.openim.tribe.create  创建群
 taobao.openim.tribe.getalltribes  获取当前账号群列表
 taobao.openim.tribe.gettribeinfo  获取单个群详情
 taobao.openim.tribe.quit  主动退出群
 taobao.openim.tribe.join  主动加入群
 taobao.openim.tribe.expel  踢出群成员
 taobao.openim.tribe.setmanager  设置群管理员
 taobao.openim.tribe.dismiss  解散群
 taobao.openim.tribe.invite  邀请加入群
 taobao.openim.tribe.getmembers  群成员获取
 taobao.openim.tribe.unsetmanager  取消管理员
 taobao.openim.tribe.modifytribeinfo  群信息修改

统一错误码

错误码分为两种:

  • ISV 错误: 这种错误产生于参数非法。需要调用方检查参数。
  • ISP 错误: 此类错误为服务内部错误。对于这种错误处理,一般采用稍后尝试。

demo:

	{
    "error_response": {
        "code": 15,
        "msg": "Remote service error",
        "sub_code": "isv.param-error",
        "sub_msg": "userid must in a-zA-Z0-9._-@"
    }
}
节点 含义
err_response 返回结构根节点
code 返回值。该值为top平台提供。 15 为后端服务返回错误。
msg 错误描述
sub_code 后端服务错误码。该错误码为真正的业务服务产生的错误。
sub_msg 具体服务错误原因

OPENIM 接口返回的sub_code 包括:

  • isv.param-error : 参数错误。 请检查程序代码。更正参数。
  • isv.data-duplicate-error:数据重复错误。这种错误发生在add接口调用时。如果数据库中已经存在该条记录,则会返回data-duplicate-error 错误。
  • isp.service-error: 服务内部错误。

 

FAQ

关于此文档暂时还没有FAQ
返回
顶部