Skip to content

02. 业务流程场景 (Workflow)

为了方便前端开发,以下是不同业务场景下的接口调用顺序流程:

1. 进入“消息中心” (统一聊天列表)

展示用户所有的最近联系人、未读数、最后一条消息。

  1. 建立连接:建立 WebSocket 连接(见 01_PROTOCOL.md)。
  2. 拉取列表:调用 GET /websocket/conversation/list/{userId}
  3. 渲染 UI:根据返回的 isPinned(置顶)、unreadCount(未读数)排序渲染。
  4. 实时更新:WebSocket 收到消息时,前端根据 senderId 找到对应项,更新 lastMessageContent 并增加 unreadCount

2. 私聊场景 (Private Chat)

  1. 拉取历史:进入界面,调用 GET /websocket/chat-history/private 拉取最近 50 条消息。
  2. 清空未读:调用 POST /websocket/conversation/clear-unread
  3. 实时交流:通过 ws.sendPOST /websocket/send-private-msg 发送。
  4. 回执确认:在聊天窗口内收到消息,调用 POST /websocket/mark-read 通知对方。

3. 群聊场景 (Group Chat)

  1. 拉取历史:调用 GET /websocket/chat-history/group/{chatRoomId}
  2. 发送消息:调用 POST /websocket/send-group-msg
  3. 成员查看:调用 GET /websocket/group-members/{chatRoomId}

4. 系统消息列表 (System Messages)

  1. 过滤获取:调用 GET /websocket/conversation/list/{userId} 时,过滤 conversationType = 'SYSTEM' 的项。
  2. 通知详情:点击进入,拉取历史记录。

Released under the MIT License.