【自研IM系统Talk00】 --- 接口说明

                  Talk00接口文档


一、目录 

概述6

1.权限验证8

1.1登录接口8

1.2验证接口9

2.负载均衡10

2.1负载接口10

3.消息转发11

3.1发送消息接口11

3.2接收消息接口12

3.3客户端心跳接口13

4.配置服务13

4.1获取静态服务接口14

4.2获取动态服务接口15

5.客户端管理16

5.1注册客户端接口16

5.2去注册客户端接口17

5.3获取用户所有在线客户端接口18

5.4获取在线客户端详细信息接口19

6.用户管理20

6.1注册用户接口21

6.2获取用户Token接口22

6.3去注册用户接口23

6.4获取用户信息接口24

6.5更新用户接口25

6.6更新用户状态接口27

6.7更新用户被加好友方式接口27

6.8更新用户被加群组方式接口28

6.9更新用户标签接口29

6.10判断是否可以聊天接口30

6.11获取用户系统信息接口(加好友,群组等系统消息)31

6.12刷新用户系统消息状态接口33

6.13更新用户设置信息接口34

7.好友管理35

7.1申请加好友接口35

7.2增加好友接口36

7.3删除好友接口37

7.4更新好友接口37

7.5更新好友备注名称接口38

7.6更新好友设置信息接口39

7.7获取好友列表接口40

7.8拉黑好友接口41

7.9取消拉黑好友接口42

7.10获取用户拉黑列表接口43

7.11获取好友状态接口44

8.群组管理45

8.1创建群组接口45

8.2刷新群组接口46

8.3刷新群组名称接口47

8.4刷新群组描述接口48

8.5刷新群组级别接口49

8.6刷新群组图片接口50

8.7刷新群组公告接口50

8.8刷新群组成员最大上限接口51

8.9刷新群组加入方式接口52

8.10刷新群组标签接口53

8.11刷新聊天室禁言时间接口54

8.12获取用户所有群组接口55

8.13申请加入群组接口56

8.14管理员批准进入群组接口57

8.15用户愿意进入群组接口58

8.16退出群组接口59

8.17拉黑群组成员接口60

8.18取消拉黑群组成员接口60

8.19获取群组拉黑成员列表接口61

8.20禁言群组成员接口62

8.21取消禁言群组成员接口63

8.22获取群组禁言成员列表接口64

8.23踢出群组成员接口65

8.24邀请用户加入群组接口66

8.25搜索群组接口67

8.26刷新群组成员备注名称接口68

8.27获取群组成员列表接口69

8.28增加群组管理员接口70

8.29删除群组管理员接口71

8.30获取群组管理员列表接口72

8.31增加群组逻辑组接口73

8.32删除群组逻辑组接口74

8.33移动群组逻辑组接口75

8.34更新群组逻辑组接口75

8.35获取群组逻辑组接口76

9.讨论组管理77

9.1创建讨论组接口77

9.2更新讨论组接口77

9.3更新讨论组名称接口77

9.4更新讨论组描述接口77

9.5更新讨论组图片接口78

9.6更新讨论组公告接口78

9.7更新讨论组成员最大上限接口78

9.8更新讨论组标签接口78

9.9获取讨论组列表接口78

9.10退出讨论组接口78

9.11踢出讨论组接口78

9.12邀请加入讨论组接口78

9.13获取讨论组成员列表接口79

10.聊天室管理79

10.1创建聊天室接口79

10.2进入聊天室接口80

10.3退出聊天室接口81

10.4刷新聊天室接口82

10.5刷新聊天室名称接口83

10.6刷新聊天室描述接口83

10.7刷新聊天室级别接口84

10.8刷新聊天室图片接口85

10.9刷新聊天室公告接口86

10.10刷新聊天室禁言时间接口87

10.11刷新聊天室标签接口87

10.12获取所有聊天室接口88

10.13获取用户创建的聊天室接口90

10.14拉黑聊天室成员接口91

10.15取消拉黑聊天室成员接口92

10.16获取聊天室拉黑列表接口93

10.17禁言聊天室成员接口94

10.18取消禁言聊天室成员接口95

10.19获取聊天室禁言列表接口95

10.20踢出聊天室成员接口96

10.21获取聊天室成员列表接口97

10.22增加聊天室管理员接口98

10.23删除聊天室管理员接口99

10.24获取聊天室管理员列表接口100

10.25搜索聊天室接口100

10.26获取聊天室人数接口102

10.27获取指定聊天室信息接口102

11.会话管理104

11.1创建会话接口104

11.2删除用户指定会话ID接口105

11.3增加用户指定会话ID接口106

11.4追加会话消息接口106

11.5获取会话列表接口107

11.6获取会话消息接口108

11.7判断会话ID是否存在接口109

12.文件传输110

12.1概述110

12.2文件上传接口111

12.3下载文件接口111

13.内部消息112

13.1心跳接口112

13.2服务注册接口112

14.异步消息113

14.1用户状态通知114

14.2增加好友通知114

14.3删除好友通知115

14.4拉黑好友通知116

14.5聊天室进入通知116

14.6聊天室退出通知117

14.7聊天室踢出通知118

14.8聊天室拉黑通知119

14.9聊天室禁言通知119

14.10聊天室增加管理员通知120

14.11聊天室删除管理员通知121

14.12群组进入通知122

14.13群组退出通知122

14.14群组踢出通知123

14.15群组拉黑通知124

14.16群组禁言通知125

14.17群组增加管理员通知125

14.18群组删除管理员通知126

14.19讨论组加入通知127

14.20讨论组退出通知128

14.21讨论组踢出通知128

14.22系统消息通知129

15.推送服务130

15.1推送特定用户130

15.2推送特定群组130

15.3推送特定讨论组131

15.4推送特定聊天室132

15.5推送所以在线用户132

16. 游客管理133

16.1获取一个游客接口133

17.错误码描述134



二、概述

(1)Talk00协议方式:TCP+json,并且以 \n 为协议结束符。语言集编码格式为utf-8

传输的业务信息中包含 双引号(")或者换行符\n)的字符串,需要先使用base64编码,具体参考下面接口。

 

(2)Talk00 请求报文中有固定的格式 

{"head":{"cmd":"Talk00_register_user", "time":111111, "req_id":"xxxxxx","channel":"bx", "peer":"127.0.0.1:5500"}, "body":{} }

有协议头字段head”(必选项)和协议包体字段“body”(可选项。body可以设置json对象或者字符串,根据业务需要)。Talk00请求报文最大20KB

 

协议头head”包含几个固定字段,具体描述如下:

参数

必要

数据类型

描述

cmd

Y

字符串

请求报文命令字。

time

 

无符号64整数

请求报文unix时间戳。

req_id

Y

字符串

请求唯一的id。长连接必须设置,建议为uuid,用于对应响应消息。

channel

 

字符串

请求来自的渠道信息。

peer

 

字符串

请求来自的源Socket信息,格式为ip:port。




(3)Talk00响应报文中有固定的格式 

{"head":{"cmd":"Talk00_register_user", "time":111111, "req_id":"xxxxxx","msg_id":"yyyyy", "err":0, "err_msg":"It is invalid request."}, "body":{} }

有协议头字段head”(必选项)和协议包体字段“body”(可选项。body可以设置json对象或者字符串,根据业务需要)。

 

协议头head”包含几个固定字段,具体描述如下:

参数

必要

数据类型

描述

cmd

Y

字符串

响应报文命令字。(同请求报文的一致)

time

Y

无符号64整数

响应报文unix时间戳。

req_id

Y

字符串

回填请求唯一的id。

msg_id

Y

字符串

Talk00系统内部为每个请求分配的唯一ID, 用作日志染色。

err

Y

有符号32整数

错误码。

err_info

Y

字符串

错误描述信息。

 

接口列表:

分类

数量

描述

权限验证

2

 

负载均衡

1

 

消息转发

3

 

配置服务

2

 

客户端管理

4

 

用户管理

13

 

好友管理

11

 

群组管理

35

 

讨论组管理

13

 

聊天室管理

27

 

会话管理

7

 

文件传输

3

 

内部消息

2

 

异步消息

22

 

推送服务

5

 

游客管理

1

 

总共

151

 





三、接口说明

1.权限验证

1.1登录接口

接口描述: 用户在使用Talk00系统前,通过user id先验证, 判断该用户是否已经注册到Talk00系统中。

对外接口:Y

命令字: login

请求串:

{"head":{"cmd":"login", "time":111111, "req_id":"xxxxxx", "channel":"bx", "peer":"127.0.0.1:5500"}, "body":{"user_id":4444, "token":"4hu_1472630582_808424"} }

参数说明:

参数

必要

数据类型

描述

user_id

Y

无符号64整数

用户ID。

token

Y

字符串

用户token。普通用户必须设置用户token,游客token为空字符串。

 

响应串:

{"head":{"cmd":"login", "time":1468567441, "req_id":"xxxxxx", "msg_id":"", "err":0, "err_info":"login success"}, "body":{"user_id":3, "client_id":"ClientID_3_127.0.0.1_6610_1468567441_19_1468567441_497607", "token":"920805"}}

参数说明:

参数

必要

数据类型

最大长度

描述

user_id

Y

无符号64整数

 

用户ID

client_id

Y

字符串

 

客户端ID

token

Y

字符串

 

客户端Token

 

。。。 。。。





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值