ntf.go 617 B

12345678910111213141516171819202122232425262728293031
  1. package mq
  2. import (
  3. "errors"
  4. "mtp20access/client"
  5. "mtp20access/model/mq/request"
  6. "mtp20access/rabbitmq"
  7. )
  8. // SendNtfMQ 向总线发送通知类信息
  9. func SendNtfMQ(req *request.MQNtfReq, sessionID int) (err error) {
  10. // 将请求的数据转换成总线使用的Protobuf
  11. bytes, err := req.GetProtoBytes()
  12. if err != nil {
  13. return
  14. }
  15. if bytes == nil {
  16. err = errors.New("请求信息序列化失败")
  17. return
  18. }
  19. // 向总线发送业务信息
  20. packet := &client.MQPacket{
  21. FunCode: req.FunCode,
  22. SessionId: uint32(sessionID),
  23. Data: bytes,
  24. }
  25. go rabbitmq.Publish(req.Topic, packet)
  26. return
  27. }