Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wecloud_im_server
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hewei
wecloud_im_server
Commits
c2cc8404
Commit
c2cc8404
authored
Nov 04, 2021
by
giaogiao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化文档, 增加不同类型的消息
parent
93557922
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
251 additions
and
20 deletions
+251
-20
docs/md/内部/wecloud-im前端Websocket对接文档.md
+194
-18
docs/md/客户/wecloud-im即时通讯聊天云服务_外部客户对接文档.md
+21
-1
开发记录.md
+36
-1
No files found.
docs/md/内部/wecloud-im前端Websocket对接文档.md
View file @
c2cc8404
# wec
loud-im 前端Websocket对接文档
# wec
loud-im 前端Websocket对接文档
...
...
@@ -10,9 +10,9 @@ HTTP协议的API以Swagger实时生成为准
## HTTP协议API文档
## HTTP协议API
接口
文档
Swagge文档地址:
Swagge
接口
文档地址:
**本地环境 api文档(实时更新 开发查看此文档):**
IP可能有变化 联系后端
...
...
@@ -25,10 +25,10 @@ http://192.168.1.89/api/doc.html#/home
**测试外网 api文档:**
```
https://
wstest.im199.com
/api/doc.html#/home
https://
imapitest.wecloud.cn
/api/doc.html#/home
```
只包含api接口文档
websocket对接说明在此文档中
只包含api接口文档
## 适用对象
...
...
@@ -150,7 +150,7 @@ ws://192.168.1.89:8899/ws?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ
**测试外网**
```
wss://
wstest.im199.com
/ws?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ3ZWIiLCJjbGllbnRJZCI6ImFiY2QxIiwiaXNzIjoid2VjbG91ZF9pbSIsImFwcEtleSI6IkpLdE5IZnJWVXdzaGF4ek4iLCJleHAiOjE2MjgzMjMxNDMsImlhdCI6MTYyMzEzOTE0MywianRpIjoiNWU3NzU5ZjM2ODQ3NDFiMzg4MGEyYjkwMjQ0OWZjZmYifQ.CC-iuGjNwQLH4VxFI2wZEPuP4AGabOUOiRh9snp3IB4
wss://
imapitest.wecloud.cn
/ws?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ3ZWIiLCJjbGllbnRJZCI6ImFiY2QxIiwiaXNzIjoid2VjbG91ZF9pbSIsImFwcEtleSI6IkpLdE5IZnJWVXdzaGF4ek4iLCJleHAiOjE2MjgzMjMxNDMsImlhdCI6MTYyMzEzOTE0MywianRpIjoiNWU3NzU5ZjM2ODQ3NDFiMzg4MGEyYjkwMjQ0OWZjZmYifQ.CC-iuGjNwQLH4VxFI2wZEPuP4AGabOUOiRh9snp3IB4
```
____
__
_
...
...
@@ -160,7 +160,7 @@ _______
**生产环境**
```
wss://
ws.im199.com
/ws?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ3ZWIiLCJjbGllbnRJZCI6ImFiY2QxIiwiaXNzIjoid2VjbG91ZF9pbSIsImFwcEtleSI6IkpLdE5IZnJWVXdzaGF4ek4iLCJleHAiOjE2MjgzMjMxNDMsImlhdCI6MTYyMzEzOTE0MywianRpIjoiNWU3NzU5ZjM2ODQ3NDFiMzg4MGEyYjkwMjQ0OWZjZmYifQ.CC-iuGjNwQLH4VxFI2wZEPuP4AGabOUOiRh9snp3IB4
wss://
imapi.wecloud.cn
/ws?token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdWQiOiJ3ZWIiLCJjbGllbnRJZCI6ImFiY2QxIiwiaXNzIjoid2VjbG91ZF9pbSIsImFwcEtleSI6IkpLdE5IZnJWVXdzaGF4ek4iLCJleHAiOjE2MjgzMjMxNDMsImlhdCI6MTYyMzEzOTE0MywianRpIjoiNWU3NzU5ZjM2ODQ3NDFiMzg4MGEyYjkwMjQ0OWZjZmYifQ.CC-iuGjNwQLH4VxFI2wZEPuP4AGabOUOiRh9snp3IB4
```
...
...
@@ -317,7 +317,7 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
| msgId | String | 否 | 消息唯一ID |
### 3. 接收方收到在线消息
### 3. 接收方收到在线
文本
消息
```
json
{
...
...
@@ -354,7 +354,7 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
| ------------------ | -------- | -------- | -------------- |
| cmd | String | 否 | 指令码 |
| data | Object | 否 | 除toConversation与type为固定的参数,其它参数皆可由使用方自定义 |
| attrs
| Object | 是 | 自定义拓展字段
|
| attrs
| Object | 是 | 用来给开发者存储拓展的自定义属性字段。
|
| toConversation | Long | 否 | 发送到会话id |
| diyParam自定义字段 | Object | 是 | 自定义拓展字段 |
| push | String | 否 | 客户端自定义系统推送内容 |
...
...
@@ -372,18 +372,22 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
已接收回执需参考API对接文档
## 发送图片
## 发送图片
消息
包含可选参数的完整例子
```
json
{
"reqId"
:
"123123123"
,
"cmd"
:
1
,
"data"
:{
"push"
:{
"title"
:
"收到一张新图片"
,
"subTitle"
:
"点击查看"
},
"toConversation"
:
1394188055950266368
,
"type"
:
-2
,
"file"
:
{
"url"
:
"http://ac-p2bpmgci.clouddn.com/246b8acc-2e12-4a9d-a255-8d17a3059d25"
,
//
必要参数
"objId"
:
"54699d87e4b0a56c64f470a4"
,
//
文件对应的AVFile.objectId
"metaData"
:
{
"name"
:
"IMG_20141223.jpeg"
,
//
图像的名称
"format"
:
"png"
,
//
图像的格式
...
...
@@ -397,8 +401,8 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
}
```
上面是完整的例子,如果只想简单的发送图像 URL:
必传参数示例
```
json
{
"reqId"
:
"123123123"
,
...
...
@@ -408,31 +412,203 @@ websocket是异步的 有可能你很快速的发送了几条消息,服务器响
"type"
:
-2
,
"file"
:
{
"url"
:
"http://ac-p2bpmgci.clouddn.com/246b8acc-2e12-4a9d-a255-8d17a3059d25"
,
//
必要参数
"objId"
:
"54699d87e4b0a56c64f470a4"
,
//
文件对应的AVFile.objectId
"metaData"
:
{
"name"
:
"IMG_20141223.jpeg"
,
//
图像的名称
"format"
:
"png"
,
//
图像的格式
"height"
:
768
,
//
单位:像素
"width"
:
1024
,
//
单位:像素
"size"
:
18
//
单位:b
"size"
:
18
//
占存储空间大小
单位:b
}
}
}
```
**参数描述**
| 字段名 | 字段类型 | 是否可空 | 说明 |
| ------------------ | -------- | -------- | -------------- |
| cmd | String | 否 | 指令码 |
| toConversation | Long | 否 | 会话id |
| type | int | 否 | 消息类型,-2为图片 |
| url | String | 否 | 图片地址,在云存储的 url,或在云存储的文件ID,可使用任意url,也可将小图片Base54编码发送 |
| attrs | Object | 是 | 用来给开发者存储拓展的自定义属性字段。 |
## 发送音频消息
```json
{
"reqId":"123123123",
"cmd":1,
"data":{
"push":{
"title":"收到一条新语言",
"subTitle":"点击收听"
},
"toConversation":1394188055950266368,
"type":-3,
"file": {
"url": "http://ac-p2bpmgci.clouddn.com/246b8acc-2e12-4a9d-a255-8d17a3059d25", // 必要参数
"metaData": {
"name": "IMG_20141223.jpeg", // 文件的名称
"duration": 60.3, //时长 单位秒 精确小数点后1位
"size": 18 // 占存储空间大小 单位:b
}
},
"attrs":{}
}
}
```
**参数描述**
| 字段名 | 字段类型 | 是否可空 | 说明 |
| ------------------ | -------- | -------- | -------------- |
| cmd | String | 否 | 指令码 |
| toConversation | Long | 否 | 会话id |
| type | int | 否 | 消息类型 |
| url | String | 否 | 地址,在云存储的 url,或在云存储的文件ID,可使用任意url,也可将小音频Base54编码发送 |
| attrs | Object | 是 | 用来给开发者存储拓展的自定义属性字段。 |
## 发送视频消息
```
json
{
"reqId"
:
"123123123"
,
"cmd"
:
1
,
"data"
:{
"push"
:{
"title"
:
"收到一条视频消息"
,
"subTitle"
:
"点击查看"
},
"toConversation"
:
1394188055950266368
,
"type"
:
-4
,
"file"
:
{
"url"
:
"http://ac-p2bpmgci.clouddn.com/246b8acc-2e12-4a9d-a255-8d17a3059d25"
,
//
必要参数
"metaData"
:
{
"name"
:
"IMG_20141223.mp4"
,
//
视频的名称
"format"
:
"mp4"
,
//
视频的格式
"height"
:
768
,
//
单位:像素
"width"
:
1024
,
//
单位:像素
"duration"
:
60.3
,
//时长
单位秒
精确小数点后
1
位
"size"
:
1800
//
占存储空间大小
单位:b
}
},
"attrs"
:{}
}
}
```
**参数描述**
| 字段名 | 字段类型 | 是否可空 | 说明 |
| ------------------ | -------- | -------- | -------------- |
| cmd | String | 否 | 指令码 |
| toConversation | Long | 否 | 会话id |
| type | int | 否 | 消息类型 |
| url | String | 否 | 地址,在云存储的 url,或在云存储的文件ID,可使用任意url |
## 发送位置消息
```
json
{
"reqId"
:
"123123123"
,
"cmd"
:
1
,
"data"
:{
"push"
:{
"title"
:
"收到一条新位置消息"
,
"subTitle"
:
"点击查看"
},
"toConversation"
:
1394188055950266368
,
"type"
:
-5
,
"metaData"
:
{
"longitude"
:
"1231231.123"
,
//
经度
"latitude"
:
"1231231.123"
//
纬度
}
},
"attrs"
:{}
}
}
```
**参数描述**
| 字段名 | 字段类型 | 是否可空 | 说明 |
| ------------------ | -------- | -------- | -------------- |
| cmd | String | 否 | 指令码 |
| toConversation | Long | 否 | 会话id |
| type | int | 否 | 消息类型 |
## 发送文件消息
```
json
{
"reqId"
:
"123123123"
,
"cmd"
:
1
,
"data"
:{
"push"
:{
"title"
:
"收到一个新文件"
,
"subTitle"
:
"点击查看"
},
"toConversation"
:
1394188055950266368
,
"type"
:
-6
,
"file"
:
{
"url"
:
"http://ac-p2bpmgci.clouddn.com/246b8acc-2e12-4a9d-a255-8d17a3059d25"
,
//
必要参数
"metaData"
:
{
"name"
:
"文档.doc"
,
//
视频的名称
"format"
:
"doc"
,
//
视频的格式
"size"
:
1800
//
占存储空间大小
单位:b
}
},
"attrs"
:{}
}
}
```
## 其他富媒体消息
如视频 位置 音频 发送红包 好友验证等等
可参考:https://leancloud.cn/docs/realtime_v2.html#hash939050100
**参数描述**
| 字段名 | 字段类型 | 是否可空 | 说明 |
| -------------- | -------- | -------- | ---------------------------------------------------- |
| cmd | String | 否 | 指令码 |
| toConversation | Long | 否 | 会话id |
| type | int | 否 | 消息类型 |
| url | String | 否 | 地址,在云存储的 url,或在云存储的文件ID,可使用任意url |
## 其他自定义类型消息
如发送红包 转账通知 好友验证等等
```
json
{
"reqId"
:
"123123123"
,
"cmd"
:
1
,
"data"
:{
"push"
:{
"title"
:
"收到一个红包/转账"
,
"subTitle"
:
"点击查看"
},
"toConversation"
:
1394188055950266368
,
"type"
:
由应用自定义
,
"type"
:
由应用自定义
,
为正数
,
"应用自定义参数"
:
应用自定义值
}
}
...
...
docs/md/客户/wecloud-im即时通讯聊天云服务_外部客户对接文档.md
View file @
c2cc8404
# wec
loud-im 即时通讯云对接文档
# wec
loud-im 即时通讯云对接文档
...
...
@@ -178,3 +178,23 @@ public static void main(String[] args) {
## 消息数据加密
#### 自定义加密算法
如果客户方对数据安全比较敏感, 建议对消息聊天中的字符串数据进行
**RSA不对称加密**
或
**AES对称加密**
等数据加密技术,客户方可以任意选择世界上任一种加密算法, 加密和解密都在客户方应用内进行, wecloud平台将无法得知明文数据.
例如: 客户端发送文本消息 : "给我银行卡账号汇款10万元,卡号是10101010",
客户方可以在自己系统内维护RSA或AES的密钥, 对本文中的内容进行加密 : "给我银行卡账号汇款10万元,卡号是10101010",加密后的消息数据在wecloud将不会以明文的方式存储,以保障数据安全.
业务方服务端需要保存生成的加密密钥, 否则数据将无法解密
#### wecloud提供的加密
wecloud为提供
**HTTPS**
,以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性,。HTTPS 在HTTP 的基础下加入
**SSL**
,HTTPS 的安全基础是 SSL,。保障终端设备到服务器传输时的数据安全,不被窃取.
开发记录.md
View file @
c2cc8404
...
...
@@ -17,6 +17,13 @@ aaaaa3
--
# 国内测试外网api文档
https://imapitest.wecloud.cn/api//doc.html#/home
# 国内测试外网web示例
https://imwebtest.wecloud.cn/
## 会话
1邀请2
1447818154184151040
...
...
@@ -306,3 +313,31 @@ imapitest.wecloud.cn
web示例:
imwebtest.wecloud.cn
## 多端在线 + 服务器集群
本地维护 uid 对应 channel_shortID
1123:{
channelId = ababab1 ,
deviceType = ios,
deviceToken = abdsbsn,
token = sjn321sdjfsdf
}
1123:{
channelId = ababab2 ,
deviceType = android,
deviceToken = abdsbsn,
token = sjnsdj123fsdf
}
1123:{
channelId = ababab3 ,
deviceType = web,
deviceToken = abdsb123sn,
token = null
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment