mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-25 02:58:26 +08:00
batch push
This commit is contained in:
parent
5fd91e808a
commit
4f184a6723
@ -1,7 +1,13 @@
|
|||||||
package gate
|
package gate
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"Open_IM/pkg/common/config"
|
||||||
|
"Open_IM/pkg/common/log"
|
||||||
|
"Open_IM/pkg/grpc-etcdv3/getcdv3"
|
||||||
|
pbChat "Open_IM/pkg/proto/chat"
|
||||||
sdk_ws "Open_IM/pkg/proto/sdk_ws"
|
sdk_ws "Open_IM/pkg/proto/sdk_ws"
|
||||||
|
"context"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
var MaxPullMsgNum = 100
|
var MaxPullMsgNum = 100
|
||||||
@ -9,21 +15,34 @@ var MaxPullMsgNum = 100
|
|||||||
func (r *RPCServer) GenPullSeqList(currentSeq uint32, operationID string, userID string) ([]uint32, error) {
|
func (r *RPCServer) GenPullSeqList(currentSeq uint32, operationID string, userID string) ([]uint32, error) {
|
||||||
return nil, nil
|
return nil, nil
|
||||||
}
|
}
|
||||||
|
func (r *RPCServer) GetMergeSingleMsgForPush(operationID string, msgData *sdk_ws.MsgData, pushToUserID string, platformID int) []*sdk_ws.MsgData {
|
||||||
func (r *RPCServer) GetSingleMsgForPush(operationID string, msgData *sdk_ws.MsgData, pushToUserID string, platformID string) []*sdk_ws.MsgData {
|
|
||||||
//seqList, err := r.GenPullSeqList(msgData.Seq, operationID, pushToUserID)
|
|
||||||
//if err != nil {
|
|
||||||
// return nil
|
|
||||||
//}
|
|
||||||
//rpcReq := sdk_ws.PullMessageBySeqListReq{}
|
|
||||||
//rpcReq.SeqList = seqList
|
|
||||||
//rpcReq.UserID = pushToUserID
|
|
||||||
//rpcReq.OperationID = operationID
|
|
||||||
//grpcConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName)
|
|
||||||
//msgClient := pbChat.NewChatClient(grpcConn)
|
|
||||||
//reply, err := msgClient.PullMessageBySeqList(context.Background(), &rpcReq)
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
//ws.getUserConn(pushToUserID, platformID)
|
||||||
|
//msgData.Seq
|
||||||
|
//msgList := r.GetSingleMsgForPush(operationID, msgData, pushToUserID, platformID)
|
||||||
|
|
||||||
|
}
|
||||||
|
func (r *RPCServer) GetSingleMsgForPush(operationID string, msgData *sdk_ws.MsgData, pushToUserID string, platformID string) []*sdk_ws.MsgData {
|
||||||
|
seqList, err := r.GenPullSeqList(msgData.Seq, operationID, pushToUserID)
|
||||||
|
if err != nil {
|
||||||
|
log.Error(operationID, "GenPullSeqList failed ", err.Error(), msgData.Seq, pushToUserID)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
rpcReq := sdk_ws.PullMessageBySeqListReq{}
|
||||||
|
rpcReq.SeqList = seqList
|
||||||
|
rpcReq.UserID = pushToUserID
|
||||||
|
rpcReq.OperationID = operationID
|
||||||
|
grpcConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName)
|
||||||
|
msgClient := pbChat.NewChatClient(grpcConn)
|
||||||
|
reply, err := msgClient.PullMessageBySeqList(context.Background(), &rpcReq)
|
||||||
|
if err != nil {
|
||||||
|
log.Error(operationID, "PullMessageBySeqList failed ", err.Error(), rpcReq.String())
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
if len(reply.List) == 0 {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
return reply.List
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *RPCServer) GetBatchMsgForPush(operationID string, msgData *sdk_ws.MsgData, pushToUserIDList []string, platformID string) map[string][]*sdk_ws.MsgData {
|
func (r *RPCServer) GetBatchMsgForPush(operationID string, msgData *sdk_ws.MsgData, pushToUserIDList []string, platformID string) map[string][]*sdk_ws.MsgData {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user