跳转到主要内容
POST
/
channel
/
messagesync
curl -X POST "http://localhost:5001/channel/messagesync" \
  -H "Content-Type: application/json" \
  -d '{
    "login_uid": "user123",
    "channel_id": "group123",
    "channel_type": 2,
    "start_message_seq": 1000,
    "end_message_seq": 1100,
    "limit": 50,
    "pull_mode": 0
  }'
[
  {
    "message_id": 123456789,
    "message_seq": 1001,
    "client_msg_no": "client_msg_123",
    "from_uid": "user123",
    "channel_id": "group123",
    "channel_type": 2,
    "timestamp": 1640995200,
    "payload": "SGVsbG8gV29ybGQ="
  },
  {
    "message_id": 123456790,
    "message_seq": 1002,
    "client_msg_no": "client_msg_124",
    "from_uid": "user456",
    "channel_id": "group123",
    "channel_type": 2,
    "timestamp": 1640995260,
    "payload": "SGkgdGhlcmU="
  }
]

概述

同步指定频道的消息,支持按消息序号范围获取消息列表。

请求体

必传参数

login_uid
string
required
当前登录用户 ID
channel_id
string
required
频道 ID
channel_type
integer
required
频道类型 (1=个人频道, 2=群组频道)

可选参数

start_message_seq
integer
起始消息序号(包含)
end_message_seq
integer
结束消息序号(不包含)
limit
integer
返回消息数量限制,最大 10000
pull_mode
integer
拉取模式 (0=向下拉取, 1=向上拉取)
curl -X POST "http://localhost:5001/channel/messagesync" \
  -H "Content-Type: application/json" \
  -d '{
    "login_uid": "user123",
    "channel_id": "group123",
    "channel_type": 2,
    "start_message_seq": 1000,
    "end_message_seq": 1100,
    "limit": 50,
    "pull_mode": 0
  }'
[
  {
    "message_id": 123456789,
    "message_seq": 1001,
    "client_msg_no": "client_msg_123",
    "from_uid": "user123",
    "channel_id": "group123",
    "channel_type": 2,
    "timestamp": 1640995200,
    "payload": "SGVsbG8gV29ybGQ="
  },
  {
    "message_id": 123456790,
    "message_seq": 1002,
    "client_msg_no": "client_msg_124",
    "from_uid": "user456",
    "channel_id": "group123",
    "channel_type": 2,
    "timestamp": 1640995260,
    "payload": "SGkgdGhlcmU="
  }
]

响应字段

响应是一个消息对象数组,每个消息对象包含:
message_id
integer
required
消息 ID
message_seq
integer
required
消息序列号
client_msg_no
string
required
客户端消息编号
from_uid
string
required
发送者用户 ID
channel_id
string
required
频道 ID
channel_type
integer
required
频道类型
timestamp
integer
required
消息时间戳
payload
string
required
Base64 编码的消息内容

状态码

状态码说明
200消息同步成功
400请求参数错误
403没有访问权限
500服务器内部错误

最佳实践

  1. 合理设置范围:避免一次性同步过多消息
  2. 分页处理:使用 limit 参数控制返回数量
  3. 错误处理:处理网络错误和权限错误
  4. 缓存策略:合理缓存已同步的消息
  5. 性能优化:根据实际需求调整同步频率