单聊的业务比较简单,就像微信的聊天功能。其业务流程具体如下:
- 当用户A登录成功后,按照单聊的消息格式,发送消息。这里的消息格式为:userId:content。其中userId就是消息接目标用户B的userId;其中content,标识聊天的内容。
- 服务器端收到消息后,根据目标userId进行消息的转发,发送到用户B所在的客户端。
- 客户端用户B收到用户A发来的消息,在自己的控制台显式出来。
这里服务端的路由转发不是根据sessionId,而是根据userId。其原因是因为用不B可能登录了多个会话(桌面会话、移动端会话、网页端会话),这时发给用户B的聊天消息必须转发到多个会话,所以需要根据userId进行转发。