Commit c2cc8404 by giaogiao

优化文档, 增加不同类型的消息

parent 93557922
# wecloud-im 前端Websocket对接文档
# wecloud-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":由应用自定义,为正数,
"应用自定义参数": 应用自定义值
}
}
......
# wecloud-im 即时通讯云对接文档
# wecloud-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,。保障终端设备到服务器传输时的数据安全,不被窃取.
......@@ -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
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment