历史消息

参数列表

Variable Meanings
$appId 小米开放平台申请的AppId
$token 查询方的token(使用user.getToken()获取)
$account 查询方在APP系统内唯一ID
$fromAccount 消息发送方在APP帐号系统内唯一ID
$toAccount 消息接收方在APP帐号系统内唯一ID
$topicId 表示群ID
$utcFromTime 表示查询开始时间,UTC时间,单位毫秒
$utcToTime 表示查询结束时间,UTC时间,单位毫秒
$startSeq 表示查询开始序列号
$stopSeq 表示查询结束序列号
$count 表示查询的消息条数
$row 表示返回的消息条数
$timestamp 表示返回的消息中最早的时间戳
$messages 表示返回的消息集合
$sequence sequence主要用来做消息的排序和去重,全局唯一
$payload 表示经过Base64编码的消息体,app端需要进行Base64解码
$ts 表示消息时间戳

备注:

  1. 消息漫游为用户保存最近半年的历史消息

拉取单聊消息记录

  1. 指的是拉取从utcFromTimeutcToTime的时间范围内的AB之间的聊天记录,单聊是相对于群聊而言的一对一聊天。

如下为拉取[utcFromTime, utcToTime)的单聊消息记录

  • HTTPS请求(POST)
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2p/query/ -XPOST
  2. -d '{"appId":$appId,"toAccount":$toAccount,"fromAccount":$fromAccount,"utcFromTime":$utcFromTime,"utcToTime":$utcToTime}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2p/queryOnTime -XPOST
  2. -d '{"appId":$appId,"toAccount":$toAccount,"fromAccount":$fromAccount,"utcFromTime":$utcFromTime,"utcToTime":$utcToTime}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  • JSON结果示例
  1. {
  2. "code": 200,
  3. "message": "success",
  4. "data": {
  5. "appId": $appId,
  6. "messages": [
  7. {
  8. "sequence": $sequence,
  9. "payload": $payload,
  10. "ts": $ts,
  11. "fromAccount":$fromAccount,
  12. "toAccount": $toAccount,
  13. }
  14. ],
  15. "row": $row
  16. }
  17. }

备注

  1. utcFromTimeutcToTime的时间间隔不能超过24小时,查询状态为[utcFromTime,utcToTime);
  2. timestamp字段在这个请求的响应中没有意义。

拉取指定数目单聊消息记录

  1. 指的是拉取从指定的时间戳utcToTime(不包含utcToTime)向前count条的AB之间的聊天记录。

如下为拉取utcToTime向前count条的单聊消息记录

  • HTTPS请求(POST)
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2p/queryOnCount/ -XPOST
  2. -d '{"appId":$appId,"toAccount":$toAccount,"fromAccount":$fromAccount,"utcToTime":$utcToTime,"count":$count}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  • JSON结果示例
  1. {
  2. "code": 200,
  3. "message": "success",
  4. "data": {
  5. "appId": $appId,
  6. "messages": [
  7. {
  8. "sequence": $sequence,
  9. "payload": $payload,
  10. "ts": $ts,
  11. "fromAccount":$fromAccount,
  12. "toAccount": $toAccount,
  13. }
  14. ],
  15. "row": $row,
  16. "timestamp":$timestamp
  17. }
  18. }

备注

  1. timestamp字段在这个请求的响应中表示当前的聊天记录最早的时间戳(单位:毫秒)。

拉取指定序列号单聊消息记录

  1. 指的是拉取从startSeqstopSeq之间的AB之间的聊天记录。

如下为拉取[startSeq, stopSeq)的单聊消息记录

  • HTTPS请求(POST)
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2p/queryOnSequence/ -XPOST
  2. -d '{"appId":$appId,"toAccount":$toAccount,"fromAccount":$fromAccount,"startSeq":$startSeq,"stopSeq":$stopSeq}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  • JSON结果示例
  1. {
  2. "code": 200,
  3. "message": "success",
  4. "data": {
  5. "appId": $appId,
  6. "messages": [
  7. {
  8. "sequence": $sequence,
  9. "payload": $payload,
  10. "ts": $ts,
  11. "fromAccount":$fromAccount,
  12. "toAccount": $toAccount,
  13. }
  14. ],
  15. "row": $row,
  16. "timestamp":$timestamp
  17. }
  18. }

备注

  1. timestamp字段表示当前的聊天记录最早的时间戳(单位:毫秒)。

拉取群聊消息记录

如下为拉取群聊消息记录

  • HTTPS请求(POST)
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2t/query/ -XPOST
  2. -d '{"appId":$appId,"account":$account,"topicId":$topicId,"utcFromTime":$utcFromTime,"utcToTime":$utcToTime}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  6. curl https://mimc.chat.xiaomi.net/api/msg/p2t/queryOnTime/ -XPOST
  7. -d '{"appId":$appId,"account":$account,"topicId":$topicId,"utcFromTime":$utcFromTime,"utcToTime":$utcToTime}'
  8. -H "Content-Type: application/json;charset=UTF-8"
  9. -H "Accept:application/json;charset=UTF-8"
  10. -H "token:$token"
  1. PSURL中的$account$token需要相匹配(即$token应该是$account用户的token信息)。
  • JSON结果示例
  1. {
  2. "code": 200,
  3. "message": "success",
  4. "data": {
  5. "appId": $appId,
  6. "topicId": $topicId,
  7. "row": $row,
  8. "messages": [
  9. {
  10. "sequence": $sequence,
  11. "fromAccount": $fromAccount,
  12. "payload": $payload,
  13. "ts": $ts
  14. },
  15. {
  16. "sequence": $sequence,
  17. "fromAccount": $fromAccount,
  18. "payload": $payload,
  19. "ts": $ts
  20. }
  21. ]
  22. }
  23. }

备注

  1. timestamp字段在这个请求的响应中没有意义。

拉取指定数目群聊消息记录

  1. 指的是拉取从指定的时间戳utcToTime(不包含utcToTime)向前count条的指定的topicId的群聊天记录。

如下为拉取utcToTime向前count条的群聊消息记录

  • HTTPS请求(POST)
  1. curl https://mimc.chat.xiaomi.net/api/msg/p2t/queryOnCount/ -XPOST
  2. -d '{"appId":$appId,"account":$account,"topicId":$topicId,"utcToTime":$utcToTime,"count":$count}'
  3. -H "Content-Type: application/json;charset=UTF-8"
  4. -H "Accept:application/json;charset=UTF-8"
  5. -H "token:$token"
  1. PSURL中的$account$token需要相匹配(即$token应该是$account用户的token信息)。
  • JSON结果示例
    1. {
    2. "code": 200,
    3. "message": "success",
    4. "data": {
    5. "appId": $appId,
    6. "messages": [
    7. {
    8. "sequence": $sequence,
    9. "payload": $payload,
    10. "ts": $ts,
    11. "fromAccount":$fromAccount,
    12. }
    13. ],
    14. "row": $row,
    15. "timestamp":$timestamp
    16. }
    17. }

    备注

    1. timestamp字段在这个请求的响应中表示当前的聊天记录最早的时间戳(单位:毫秒)。

拉取指定序列号群聊消息记录

  1. 指的是拉取从startSeqstopSeq之间的指定的topicId的群聊天记录。

如下为拉取[startSeq, stopSeq)的群聊消息记录

  • HTTPS请求(POST)

    1. curl https://mimc.chat.xiaomi.net/api/msg/p2t/queryOnSequence/ -XPOST
    2. -d '{"appId":$appId,"account":$account,"topicId":$topicId,"startSeq":$startSeq,"stopSeq":$stopSeq}'
    3. -H "Content-Type: application/json;charset=UTF-8"
    4. -H "Accept:application/json;charset=UTF-8"
    5. -H "token:$token"
    1. PSURL中的$account$token需要相匹配(即$token应该是$account用户的token信息)。
  • JSON结果示例

    1. {
    2. "code": 200,
    3. "message": "success",
    4. "data": {
    5. "appId": $appId,
    6. "messages": [
    7. {
    8. "sequence": $sequence,
    9. "payload": $payload,
    10. "ts": $ts,
    11. "fromAccount":$fromAccount,
    12. "toAccount": $toAccount,
    13. }
    14. ],
    15. "row": $row,
    16. "timestamp":$timestamp
    17. }
    18. }

备注

  1. timestamp字段表示当前的聊天记录最早的时间戳(单位:毫秒);
  2. fromAccount字段表示当前消息所在群的topicId