atomicoke / chat

即时聊天demo (由于不可抗力终止)
http://114.132.249.192
Apache License 2.0
4 stars 0 forks source link

:sparkles: 好友关系以及群聊 #13

Open fzdwx opened 2 years ago

fzdwx commented 2 years ago

Describe the effect you want to achieve

  1. 提供一个接口根据uname搜索能查找到用户.
  2. 通过后两人能互相聊天
  3. 查看好友信息

Describe the solution you'd like 语雀

fzdwx commented 2 years ago

Solution

  1. 向单聊一样发送消息到服务端,然后服务端进行路由到具体被添加的成员
  2. 服务端先保存到mysql中(根据randomId做幂等),然后保存到mongo中
  3. 用户同意或拒绝后,发送消息到申请人
  4. 如果不在线? 用户上线后调用API拉取所有未处理的好友申请信息。
  5. 如果消息丢失? 同聊天,seq直接拉取
oneIdler commented 2 years ago
  1. 添加一个系统消息、系统消息可以发送给任何人
  2. 系统消息区分消息类别,前端根据消息类别进行不同的用户交互
  3. 系统消息类别分为大类和小类 例:大类:通讯录 小类:添加/拒绝好友请求等 lQLPDhteE0Uq0V7NARLNApWwammyyXSYy6YCas5e7gA5AA_661_274

todo...

fzdwx commented 2 years ago

新思路:

  1. 提供接口搜索人
  2. A发起加好友申请(HTTP)到服务端,服务端然后用websocket通知到B
  3. B同意或拒绝(HTTP)到服务端,服务端用websocket通知到A

@oneIdler