diff --git a/service/natsService.go b/service/natsService.go index 8027d02..18bf0d8 100644 --- a/service/natsService.go +++ b/service/natsService.go @@ -132,6 +132,11 @@ func (s *NatsService) Send(topic string, msg *ipb.InternalMsg) error { return s.nats.Publish(topic, data) } +// 注册rpc响应方法,参数固定为func(*ipb.InternalMsg) +func (s *NatsService) RegisterRpcMessage(cmd int32, delegate any) { + s.rpcProcessor.RegisterMessage(cmd, ipb.InternalMsg{}, delegate) +} + func (s *NatsService) Call(rpcTopic string, msg *ipb.InternalMsg, cb func(msg *ipb.InternalMsg)) error { data, _ := proto.Marshal(ipb.MakeRpcMsg(msg.ServiceName, msg.ConnId, msg.UserId, msg.MsgId, msg.Msg)) err := s.nats.Publish(rpcTopic, data)