message_handler.py 960 B

12345678910111213141516171819202122232425262728
  1. from .connect_manager import ConnectionManager
  2. from models import WebSocket
  3. import json
  4. # socket消息发送逻辑处理方法
  5. async def handlerSend(
  6. manager: ConnectionManager, receiveData: str, websocket: WebSocket
  7. ):
  8. receiveData = json.loads(receiveData)
  9. # 处理消息发送逻辑
  10. receiveData = json.loads(receiveData.get("text"))
  11. jsonType = receiveData.get("type")
  12. code = receiveData.get("code")
  13. msg = receiveData.get("msg")
  14. print("receiveData", receiveData)
  15. print("jsonType", jsonType)
  16. match jsonType:
  17. case "ping":
  18. """发送心跳"""
  19. data = manager.jsonMessage("pong")
  20. await manager.send_personal_message(data, websocket)
  21. case "pong":
  22. """发送心跳"""
  23. pass
  24. case "forward_message":
  25. data = receiveData.get("data")
  26. dictMsg = {"code":code,"msg":msg,"data":data}
  27. await manager.broadcast(dictMsg)