上传接口格式优化

This commit is contained in:
liwei1dao 2022-06-28 17:11:00 +08:00
parent 73a8d59ebe
commit 09ecaa3207
4 changed files with 29 additions and 13 deletions

View File

@ -54,6 +54,7 @@ type IUserSession interface {
Bind(uid string, wokerId string) (err error) Bind(uid string, wokerId string) (err error)
UnBind() (err error) UnBind() (err error)
SendMsg(mainType, subType string, msg proto.Message) (err error) SendMsg(mainType, subType string, msg proto.Message) (err error)
Polls() []*pb.UserMessage
Close() (err error) Close() (err error)
ToString() string ToString() string
} }

View File

@ -89,17 +89,24 @@ func (this *UserSession) UnBind() (err error) {
//向用户发送消息 //向用户发送消息
func (this *UserSession) SendMsg(mainType, subType string, msg proto.Message) (err error) { func (this *UserSession) SendMsg(mainType, subType string, msg proto.Message) (err error) {
reply := &pb.RPCMessageReply{}
data, _ := anypb.New(msg)
log.Debugf("SendMsg to SessionId:[%s] UserId:[%s] Data: %v", this.UserId, msg) log.Debugf("SendMsg to SessionId:[%s] UserId:[%s] Data: %v", this.UserId, msg)
if err := this.service.RpcCall(context.Background(), fmt.Sprintf("%s/%s", Service_Gateway, this.GatewayServiceId), string(Rpc_GatewayAgentSendMsg), &pb.AgentSendMessageReq{ data, _ := anypb.New(msg)
UserSessionId: this.SessionId, this.msgqueue = append(this.msgqueue, &pb.UserMessage{
MainType: mainType, MainType: mainType,
SubType: subType, SubType: subType,
Data: data, Data: data,
}, reply); err != nil { })
log.Errorf("SendMsg:%s UserSession:%s UserId:%s err:%v", mainType, this.SessionId, this.UserId, err) // reply := &pb.RPCMessageReply{}
} // data, _ := anypb.New(msg)
// log.Debugf("SendMsg to SessionId:[%s] UserId:[%s] Data: %v", this.UserId, msg)
// if err := this.service.RpcCall(context.Background(), fmt.Sprintf("%s/%s", Service_Gateway, this.GatewayServiceId), string(Rpc_GatewayAgentSendMsg), &pb.AgentSendMessageReq{
// UserSessionId: this.SessionId,
// MainType: mainType,
// SubType: subType,
// Data: data,
// }, reply); err != nil {
// log.Errorf("SendMsg:%s UserSession:%s UserId:%s err:%v", mainType, this.SessionId, this.UserId, err)
// }
return return
} }
@ -114,6 +121,13 @@ func (this *UserSession) Close() (err error) {
return return
} }
//清空消息队列
func (this *UserSession) Polls() []*pb.UserMessage {
msgs := this.msgqueue
this.msgqueue = this.msgqueue[:0]
return msgs
}
//打印日志需要 //打印日志需要
func (this *UserSession) ToString() string { func (this *UserSession) ToString() string {
return fmt.Sprintf("SessionId:%s UserId:%s GatewayServiceId:%s", this.SessionId, this.UserId, this.GatewayServiceId) return fmt.Sprintf("SessionId:%s UserId:%s GatewayServiceId:%s", this.SessionId, this.UserId, this.GatewayServiceId)

View File

@ -18,12 +18,12 @@ const (
) )
type apiComp struct { type apiComp struct {
modules.MComp_GateComp modules.MCompGate
module *Friend module *Friend
} }
func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) { func (this *apiComp) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
this.MComp_GateComp.Init(service, module, comp, options) this.MCompGate.Init(service, module, comp, options)
this.module = module.(*Friend) this.module = module.(*Friend)
return return
} }

View File

@ -143,8 +143,9 @@ func (this *SCompGateRoute) ReceiveMsg(ctx context.Context, args *pb.AgentMessag
reply.Code = errcode reply.Code = errcode
reply.ErrorMessage = pb.GetErrorCodeMsg(errcode) reply.ErrorMessage = pb.GetErrorCodeMsg(errcode)
return nil return nil
} else {
reply.Reply = session.Polls()
} }
} else { //未找到消息处理函数 } else { //未找到消息处理函数
reply.Code = pb.ErrorCode_ReqParameterError reply.Code = pb.ErrorCode_ReqParameterError
} }