diff --git a/internal/msg_gateway/gate/batch_push.go b/internal/msg_gateway/gate/batch_push.go index 9e08c4ef4..7a21dde73 100644 --- a/internal/msg_gateway/gate/batch_push.go +++ b/internal/msg_gateway/gate/batch_push.go @@ -34,12 +34,12 @@ func (r *RPCServer) GenPullSeqList(currentSeq uint32, operationID string, userID return seqList, nil } -func (r *RPCServer) GetSingleUserMsgForPushPlatforms(operationID string, msgData *sdk_ws.MsgData, pushToUserID string, platformIDList []int) map[int][]*sdk_ws.MsgData { - user2PushMsg := make(map[int][]*sdk_ws.MsgData, 0) - for _, v := range platformIDList { - user2PushMsg[v] = r.GetSingleUserMsgForPush(operationID, msgData, pushToUserID, v) - log.Info(operationID, "GetSingleUserMsgForPush", msgData.Seq, pushToUserID, v, "len:", len(user2PushMsg[v])) - } +func (r *RPCServer) GetSingleUserMsgForPushPlatforms(operationID string, msgData *sdk_ws.MsgData, pushToUserID string, platformIDList []int) map[int]*sdk_ws.MsgDataList { + user2PushMsg := make(map[int]*sdk_ws.MsgDataList, 0) + //for _, v := range platformIDList { + //user2PushMsg[v] = r.GetSingleUserMsgForPush(operationID, msgData, pushToUserID, v) + //log.Info(operationID, "GetSingleUserMsgForPush", msgData.Seq, pushToUserID, v, "len:", len(user2PushMsg[v])) + //} return user2PushMsg } diff --git a/internal/msg_gateway/gate/rpc_server.go b/internal/msg_gateway/gate/rpc_server.go index a3a137f0e..6b851b8f0 100644 --- a/internal/msg_gateway/gate/rpc_server.go +++ b/internal/msg_gateway/gate/rpc_server.go @@ -210,15 +210,21 @@ func (r *RPCServer) OnlineBatchPushOneMsg(_ context.Context, req *pbRelay.Online log.Debug(req.OperationID, "GetSingleUserMsgForPushPlatforms end", req.MsgData.Seq, v, platformList, len(needPushMapList)) for platform, list := range needPushMapList { if list != nil { - log.Debug(req.OperationID, "needPushMapList ", "userID: ", v, "platform: ", platform, "push msg num:", len(list)) - for _, v := range list { - log.Debug(req.OperationID, "req.MsgData.MsgDataList begin", "len: ", len(req.MsgData.MsgDataList), v.String()) - req.MsgData.MsgDataList = append(req.MsgData.MsgDataList, v) - log.Debug(req.OperationID, "req.MsgData.MsgDataList end", "len: ", len(req.MsgData.MsgDataList)) + log.Debug(req.OperationID, "needPushMapList ", "userID: ", v, "platform: ", platform, "push msg num:") + //for _, v := range list { + // log.Debug(req.OperationID, "req.MsgData.MsgDataList begin", "len: ", len(req.MsgData.MsgDataList), v.String()) + // req.MsgData.MsgDataList = append(req.MsgData.MsgDataList, v) + // log.Debug(req.OperationID, "req.MsgData.MsgDataList end", "len: ", len(req.MsgData.MsgDataList)) + //} + msgBytes, err := proto.Marshal(list) + if err != nil { + log.Error(req.OperationID, "proto marshal err", err.Error()) + continue } - + req.MsgData.MsgDataList = msgBytes + //req.MsgData.MsgDataList = append(req.MsgData.MsgDataList, v) log.Debug(req.OperationID, "r.encodeWsData no string") - log.Debug(req.OperationID, "r.encodeWsData data0 list ", req.MsgData.MsgDataList[0].String()) + //log.Debug(req.OperationID, "r.encodeWsData data0 list ", req.MsgData.MsgDataList[0].String()) log.Debug(req.OperationID, "r.encodeWsData ", req.MsgData.String()) replyBytes, err := r.encodeWsData(req.MsgData, req.OperationID) diff --git a/pkg/proto/sdk_ws/ws.proto b/pkg/proto/sdk_ws/ws.proto index e7fbfe7c5..bb57752d1 100644 --- a/pkg/proto/sdk_ws/ws.proto +++ b/pkg/proto/sdk_ws/ws.proto @@ -238,7 +238,7 @@ message MsgData { map options = 18; OfflinePushInfo offlinePushInfo = 19; repeated string atUserIDList = 20; - repeated MsgData msgDataList = 21; + bytes msgDataList = 21; } message OfflinePushInfo{