golang-im聊天
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

32 lines
873 B

  1. @startuml
  2. participant c1
  3. participant c2
  4. participant c3
  5. participant connect
  6. participant logic
  7. c1 -> logic: 发送消息到群组
  8. logic --> c1: 消息发送成功
  9. logic -> logic: 查询群组所有成员
  10. logic -> logic: 将消息持久化到c1的消息列表
  11. logic -> connect: 发送消息给c1的其他在线设备
  12. connect -> c1: 发送消息给c1的其他在线设备
  13. c1 -> connect: 消息ack
  14. connect -> logic: 消息ack
  15. logic -> logic: 将消息持久化到c2的消息列表
  16. logic -> connect: 发送消息给c2的其他在线设备
  17. connect -> c2: 发送消息给c2的其他在线设备
  18. c2 -> connect: 消息ack
  19. connect -> logic: 消息ack
  20. logic -> logic: 将消息持久化到c3的消息列表
  21. logic -> connect: 发送消息给c3的其他在线设备
  22. connect -> c3: 发送消息给c3的其他在线设备
  23. c3 -> connect: 消息ack
  24. connect -> logic: 消息ack
  25. @enduml