实时获取历史记录

云通讯平台为开发者提供了实时获取IM历史记录接口,调用该接口可以实时获取单聊或群组消息的记录。该接口目前仅供专有云使用。
1、请求地址
  • POST /2013-12-26/Application/{appId}/IM/GetIMHistoryMsg
2、请求包头
请参阅《鉴权说明
3、请求包体

属性

类型

约束

说明

sender

String

必选

用户账号

receiver

String

必选

接收者账号appId#userName,获取群组消息时receiver为群组id

pageSize

String

可选

获取消息条数,最多100条,缺省10

time

String

可选

时间戳,第一次获取可以为空,后续使用上一次获取返回的时间,例:2018-01-01 12:00:00.123

msgDecompressionString可选0、不解压 1、解压  缺省0
设置为1则获取的消息自动解压缩
注:发送消息长度超过256个字符则sdk会进行压缩,获取历史记录时可选择自行解压缩或服务器自动解压缩。
4、请求示例
  • POST /2013-12-26/Application/{appId}/IM/GetIMHistoryMsg?sig=C1F20E7A9733CABCDE 
  • HTTP/1.1
  • Host: 192.168.0.1:8883
  • Accept:application/json;
  • Content-Type:application/json;charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyMDExNTABCDE=
  •  
  • {
  •  " sender":"1234356","receiver":"23456789wertyu#12345"
  • }
5、响应包体

属性

类型

约束

说明

statusCode

String

必选

状态码 成功000000

time

String

必选

查询时间戳

result

String

必选

消息节点

msgId

String

必选

消息id

msgContent

String

可选

消息内容 
说明:
1)如果请求参数不设置msgDecompression为1,
则根据msgCompressLen来判断是否为长消息,
当msgCompressLen=0则为短消息,只需baser64解码的,
当msgCompressLen>0则为长消息需先base64解码并进行zlib解压缩。
2)如果请求参数设置msgDecompression为1,
则获取的所有消息只需base64解码即可。

msgReceiver

String

必选

接收者

msgDateCreated

String

必选

消息时间

msgSender

String

必选

发送者

msgType

String

必选

消息类型  msgType,目前只返回这些类型消息

1     文本类型

2     语音消息

3     视频消息

4     图片消息

5     位置消息

6     文件(压缩)

7     文件(非压缩)

8     链接消息

9     群组通知消息

10    未接来电消息通知

11    @消息通知

msgFileName

String

可选

文件名称

msgFileUrl

String

可选

文件地址

msgFileSize

String

可选

文件大小

msgDomain

String

可选

扩展字段

6、响应示例
  • HTTP/1.1 200 OK 
  • Content-Length: 641 
  •  
  • {
  •  "statusCode":"000000", 
  •  "time":"2018-01-01 12:00:00.123",
  •  “result":[{
  •  “msgId":"***"",
  •  “msgContent":"***",
  •  “msgReceiver":"***",
  •  “msgDateCreated":"***", 
  •  “msgSender":"***",
  •  “msgType":"***",
  •  “msgCompressLen":"***",
  •  “msgFileName":"***",
  •  “msgFileUrl":"***",
  •  “msgFileSize":"***",
  •  “msgDomain ":"***"
  •  }
  • ]
  • }