mirror of
https://github.com/openimsdk/open-im-server.git
synced 2026-05-01 07:35:58 +08:00
Merge remote-tracking branch 'origin/v2.3.0release' into v2.3.0release
This commit is contained in:
@@ -52,6 +52,7 @@ type ManagementSendMsg struct {
|
||||
ContentType int32 `json:"contentType" binding:"required"`
|
||||
SessionType int32 `json:"sessionType" binding:"required"`
|
||||
IsOnlineOnly bool `json:"isOnlineOnly"`
|
||||
NotOfflinePush bool `json:"notOfflinePush"`
|
||||
OfflinePushInfo *open_im_sdk.OfflinePushInfo `json:"offlinePushInfo"`
|
||||
}
|
||||
|
||||
@@ -73,10 +74,16 @@ type ManagementBatchSendMsgReq struct {
|
||||
type ManagementBatchSendMsgResp struct {
|
||||
CommResp
|
||||
Data struct {
|
||||
ResultList []server_api_params.UserSendMsgResp `json:"resultList"`
|
||||
ResultList []*SingleReturnResult `json:"resultList"`
|
||||
FailedIDList []string
|
||||
} `json:"data"`
|
||||
}
|
||||
type SingleReturnResult struct {
|
||||
ServerMsgID string `json:"serverMsgID"`
|
||||
ClientMsgID string `json:"clientMsgID"`
|
||||
SendTime int64 `json:"sendTime"`
|
||||
RecvID string `json:"recvID" `
|
||||
}
|
||||
|
||||
type CheckMsgIsSendSuccessReq struct {
|
||||
OperationID string `json:"operationID"`
|
||||
|
||||
@@ -12,6 +12,7 @@ type MiniostorageCredentialResp struct {
|
||||
SessionToken string `json:"sessionToken"`
|
||||
BucketName string `json:"bucketName"`
|
||||
StsEndpointURL string `json:"stsEndpointURL"`
|
||||
StorageTime int `json:"storageTime"`
|
||||
}
|
||||
|
||||
type MinioUploadFileReq struct {
|
||||
|
||||
@@ -25,10 +25,19 @@ type CommonCallbackResp struct {
|
||||
OperationID string `json:"operationID"`
|
||||
}
|
||||
|
||||
type UserStatusCallbackReq struct {
|
||||
type UserStatusBaseCallback struct {
|
||||
CallbackCommand string `json:"callbackCommand"`
|
||||
OperationID string `json:"operationID"`
|
||||
UserID string `json:"userID"`
|
||||
PlatformID int32 `json:"platformID"`
|
||||
Platform string `json:"platform"`
|
||||
}
|
||||
|
||||
type UserStatusCallbackReq struct {
|
||||
UserStatusBaseCallback
|
||||
UserID string `json:"userID"`
|
||||
}
|
||||
|
||||
type UserStatusBatchCallbackReq struct {
|
||||
UserStatusBaseCallback
|
||||
UserIDList []string `json:"userIDList"`
|
||||
}
|
||||
|
||||
@@ -2,18 +2,33 @@ package call_back_struct
|
||||
|
||||
import commonPb "Open_IM/pkg/proto/sdk_ws"
|
||||
|
||||
type CallbackOfflinePushReq struct {
|
||||
UserStatusCallbackReq
|
||||
type CallbackBeforePushReq struct {
|
||||
UserStatusBatchCallbackReq
|
||||
*commonPb.OfflinePushInfo
|
||||
//CommonCallbackReq
|
||||
SendID string `json:"sendID"`
|
||||
GroupID string `json:"groupID"`
|
||||
ContentType int32 `json:"contentType"`
|
||||
SessionType int32 `json:"sessionType"`
|
||||
AtUserIDList []string `json:"atUserIDList"`
|
||||
Content string `json`
|
||||
Content string `json:"content"`
|
||||
}
|
||||
|
||||
type CallbackOfflinePushResp struct {
|
||||
type CallbackBeforePushResp struct {
|
||||
*CommonCallbackResp
|
||||
}
|
||||
|
||||
type CallbackBeforeSuperGroupOnlinePushReq struct {
|
||||
*commonPb.OfflinePushInfo
|
||||
UserStatusBaseCallback
|
||||
SendID string `json:"sendID"`
|
||||
GroupID string `json:"groupID"`
|
||||
ContentType int32 `json:"contentType"`
|
||||
SessionType int32 `json:"sessionType"`
|
||||
AtUserIDList []string `json:"atUserIDList"`
|
||||
Content string `json:"content"`
|
||||
}
|
||||
|
||||
type CallbackBeforeSuperGroupOnlinePushResp struct {
|
||||
*CommonCallbackResp
|
||||
UserIDList []string `json:"userIDList"`
|
||||
}
|
||||
|
||||
@@ -71,6 +71,7 @@ type config struct {
|
||||
SecretAccessKey string `yaml:"secretAccessKey"`
|
||||
EndpointInner string `yaml:"endpointInner"`
|
||||
EndpointInnerEnable bool `yaml:"endpointInnerEnable"`
|
||||
StorageTime int `yaml:"storageTime"`
|
||||
} `yaml:"minio"`
|
||||
}
|
||||
|
||||
@@ -253,15 +254,17 @@ type config struct {
|
||||
}
|
||||
|
||||
Callback struct {
|
||||
CallbackUrl string `yaml:"callbackUrl"`
|
||||
CallbackBeforeSendSingleMsg callBackConfig `yaml:"callbackBeforeSendSingleMsg"`
|
||||
CallbackAfterSendSingleMsg callBackConfig `yaml:"callbackAfterSendSingleMsg"`
|
||||
CallbackBeforeSendGroupMsg callBackConfig `yaml:"callbackBeforeSendGroupMsg"`
|
||||
CallbackAfterSendGroupMsg callBackConfig `yaml:"callbackAfterSendGroupMsg"`
|
||||
CallbackWordFilter callBackConfig `yaml:"callbackWordFilter"`
|
||||
CallbackUserOnline callBackConfig `yaml:"callbackUserOnline"`
|
||||
CallbackUserOffline callBackConfig `yaml:"callbackUserOffline"`
|
||||
CallbackOfflinePush callBackConfig `yaml:"callbackOfflinePush"`
|
||||
CallbackUrl string `yaml:"callbackUrl"`
|
||||
CallbackBeforeSendSingleMsg callBackConfig `yaml:"callbackBeforeSendSingleMsg"`
|
||||
CallbackAfterSendSingleMsg callBackConfig `yaml:"callbackAfterSendSingleMsg"`
|
||||
CallbackBeforeSendGroupMsg callBackConfig `yaml:"callbackBeforeSendGroupMsg"`
|
||||
CallbackAfterSendGroupMsg callBackConfig `yaml:"callbackAfterSendGroupMsg"`
|
||||
CallbackWordFilter callBackConfig `yaml:"callbackWordFilter"`
|
||||
CallbackUserOnline callBackConfig `yaml:"callbackUserOnline"`
|
||||
CallbackUserOffline callBackConfig `yaml:"callbackUserOffline"`
|
||||
CallbackOfflinePush callBackConfig `yaml:"callbackOfflinePush"`
|
||||
CallbackOnlinePush callBackConfig `yaml:"callbackOnlinePush"`
|
||||
CallbackBeforeSuperGroupOnlinePush callBackConfig `yaml:"callbackSuperGroupOnlinePush"`
|
||||
} `yaml:"callback"`
|
||||
Notification struct {
|
||||
///////////////////////group/////////////////////////////
|
||||
|
||||
@@ -28,25 +28,25 @@ const (
|
||||
|
||||
///ContentType
|
||||
//UserRelated
|
||||
Text = 101
|
||||
Picture = 102
|
||||
Voice = 103
|
||||
Video = 104
|
||||
File = 105
|
||||
AtText = 106
|
||||
Merger = 107
|
||||
Card = 108
|
||||
Location = 109
|
||||
Custom = 110
|
||||
Revoke = 111
|
||||
HasReadReceipt = 112
|
||||
Typing = 113
|
||||
Quote = 114
|
||||
GroupHasReadReceipt = 116
|
||||
AdvancedText = 117
|
||||
AdvancedRevoke = 118 //影响前者消息
|
||||
CustomMsgNotTriggerConversation = 119
|
||||
CustomMsgOnlineOnly = 120
|
||||
Text = 101
|
||||
Picture = 102
|
||||
Voice = 103
|
||||
Video = 104
|
||||
File = 105
|
||||
AtText = 106
|
||||
Merger = 107
|
||||
Card = 108
|
||||
Location = 109
|
||||
Custom = 110
|
||||
Revoke = 111
|
||||
HasReadReceipt = 112
|
||||
Typing = 113
|
||||
Quote = 114
|
||||
GroupHasReadReceipt = 116
|
||||
AdvancedText = 117
|
||||
AdvancedRevoke = 118 //影响前者消息
|
||||
CustomNotTriggerConversation = 119
|
||||
CustomOnlineOnly = 120
|
||||
|
||||
Common = 200
|
||||
GroupMsg = 201
|
||||
@@ -192,14 +192,16 @@ const (
|
||||
VerificationCodeForResetSuffix = "_forReset"
|
||||
|
||||
//callbackCommand
|
||||
CallbackBeforeSendSingleMsgCommand = "callbackBeforeSendSingleMsgCommand"
|
||||
CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand"
|
||||
CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand"
|
||||
CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand"
|
||||
CallbackWordFilterCommand = "callbackWordFilterCommand"
|
||||
CallbackUserOnlineCommand = "callbackUserOnlineCommand"
|
||||
CallbackUserOfflineCommand = "callbackUserOfflineCommand"
|
||||
CallbackOfflinePushCommand = "callbackOfflinePushCommand"
|
||||
CallbackBeforeSendSingleMsgCommand = "callbackBeforeSendSingleMsgCommand"
|
||||
CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand"
|
||||
CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand"
|
||||
CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand"
|
||||
CallbackWordFilterCommand = "callbackWordFilterCommand"
|
||||
CallbackUserOnlineCommand = "callbackUserOnlineCommand"
|
||||
CallbackUserOfflineCommand = "callbackUserOfflineCommand"
|
||||
CallbackOfflinePushCommand = "callbackOfflinePushCommand"
|
||||
CallbackOnlinePushCommand = "callbackOnlinePushCommand"
|
||||
CallbackSuperGroupOnlinePushCommand = "callbackSuperGroupOnlinePushCommand"
|
||||
//callback actionCode
|
||||
ActionAllow = 0
|
||||
ActionForbidden = 1
|
||||
|
||||
@@ -88,7 +88,7 @@ func (d *DataBases) GetUserMinSeq(uid string) (uint64, error) {
|
||||
return uint64(utils.StringToInt(seq)), err
|
||||
}
|
||||
|
||||
func (d *DataBases) SetGroupUserMinSeq(groupID, userID string, minSeq uint32) (err error) {
|
||||
func (d *DataBases) SetGroupUserMinSeq(groupID, userID string, minSeq uint64) (err error) {
|
||||
key := groupUserMinSeq + "g:" + groupID + "u:" + userID
|
||||
return d.RDB.Set(context.Background(), key, minSeq, 0).Err()
|
||||
}
|
||||
@@ -221,6 +221,19 @@ func (d *DataBases) SetMessageToCache(msgList []*pbChat.MsgDataToMQ, uid string,
|
||||
_, err := pipe.Exec(ctx)
|
||||
return err
|
||||
}
|
||||
func (d *DataBases) DeleteMessageFromCache(msgList []*pbChat.MsgDataToMQ, uid string, operationID string) error {
|
||||
ctx := context.Background()
|
||||
var keys []string
|
||||
for _, msg := range msgList {
|
||||
key := messageCache + uid + "_" + strconv.Itoa(int(msg.MsgData.Seq))
|
||||
keys = append(keys, key)
|
||||
}
|
||||
err := d.RDB.Del(ctx, keys...).Err()
|
||||
if err != nil {
|
||||
log2.NewWarn(operationID, utils.GetSelfFuncName(), "redis failed", "args:", keys, uid, err.Error(), msgList)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (d *DataBases) CleanUpOneUserAllMsgFromRedis(userID string, operationID string) error {
|
||||
ctx := context.Background()
|
||||
|
||||
+2
-12
@@ -147,21 +147,11 @@ func init() {
|
||||
}
|
||||
}
|
||||
// 强一致性缓存,当一个key被标记删除,其他请求线程会被锁住轮询直到新的key生成,适合各种同步的拉取, 如果弱一致可能导致拉取还是老数据,毫无意义
|
||||
DB.Rc = rockscache.NewClient(go_redis.NewClient(&go_redis.Options{
|
||||
Addr: config.Config.Redis.DBAddress[0],
|
||||
Password: config.Config.Redis.DBPassWord, // no password set
|
||||
DB: 0, // use default DB
|
||||
PoolSize: 100, // 连接池大小
|
||||
}), rockscache.NewDefaultOptions())
|
||||
DB.Rc = rockscache.NewClient(DB.RDB, rockscache.NewDefaultOptions())
|
||||
DB.Rc.Options.StrongConsistency = true
|
||||
|
||||
// 弱一致性缓存,当一个key被标记删除,其他请求线程直接返回该key的value,适合高频并且生成很缓存很慢的情况 如大群发消息缓存的缓存
|
||||
DB.WeakRc = rockscache.NewClient(go_redis.NewClient(&go_redis.Options{
|
||||
Addr: config.Config.Redis.DBAddress[0],
|
||||
Password: config.Config.Redis.DBPassWord, // no password set
|
||||
DB: 0, // use default DB
|
||||
PoolSize: 100, // 连接池大小
|
||||
}), rockscache.NewDefaultOptions())
|
||||
DB.WeakRc = rockscache.NewClient(DB.RDB, rockscache.NewDefaultOptions())
|
||||
DB.WeakRc.Options.StrongConsistency = false
|
||||
}
|
||||
|
||||
|
||||
+10
-10
@@ -908,8 +908,8 @@ func (d *DataBases) GetUserWorkMoments(opUserID, userID string, showNumber, page
|
||||
result, err := c.Find(ctx, bson.D{ // 等价条件: select * from
|
||||
{"user_id", userID},
|
||||
{"$or", bson.A{
|
||||
bson.D{{"permission", constant.WorkMomentPermissionCantSee}, {"permission_user_id_list", bson.D{{"$nin", bson.A{userID}}}}},
|
||||
bson.D{{"permission", constant.WorkMomentPermissionCanSee}, {"permission_user_id_list", bson.D{{"$in", bson.A{userID}}}}},
|
||||
bson.D{{"permission", constant.WorkMomentPermissionCantSee}, {"permission_user_id_list", bson.D{{"$nin", bson.A{opUserID}}}}},
|
||||
bson.D{{"permission", constant.WorkMomentPermissionCanSee}, {"permission_user_id_list", bson.D{{"$in", bson.A{opUserID}}}}},
|
||||
bson.D{{"permission", constant.WorkMomentPublic}},
|
||||
}},
|
||||
}, findOpts)
|
||||
@@ -970,7 +970,7 @@ func (d *DataBases) CreateSuperGroup(groupID string, initMemberIDList []string,
|
||||
}
|
||||
_, err = c.InsertOne(sCtx, superGroup)
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
var users []UserToSuperGroup
|
||||
@@ -992,7 +992,7 @@ func (d *DataBases) CreateSuperGroup(groupID string, initMemberIDList []string,
|
||||
for _, userID := range initMemberIDList {
|
||||
_, err = c.UpdateOne(sCtx, bson.M{"user_id": userID}, bson.M{"$addToSet": bson.M{"group_id_list": groupID}}, opts)
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
|
||||
@@ -1022,7 +1022,7 @@ func (d *DataBases) AddUserToSuperGroup(groupID string, userIDList []string) err
|
||||
}
|
||||
_, err = c.UpdateOne(sCtx, bson.M{"group_id": groupID}, bson.M{"$addToSet": bson.M{"member_id_list": bson.M{"$each": userIDList}}})
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
c = d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cUserToSuperGroup)
|
||||
@@ -1039,11 +1039,11 @@ func (d *DataBases) AddUserToSuperGroup(groupID string, userIDList []string) err
|
||||
for _, userID := range userIDList {
|
||||
_, err = c.UpdateOne(sCtx, bson.M{"user_id": userID}, bson.M{"$addToSet": bson.M{"group_id_list": groupID}}, opts)
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
}
|
||||
session.CommitTransaction(ctx)
|
||||
_ = session.CommitTransaction(ctx)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -1058,15 +1058,15 @@ func (d *DataBases) RemoverUserFromSuperGroup(groupID string, userIDList []strin
|
||||
sCtx := mongo.NewSessionContext(ctx, session)
|
||||
_, err = c.UpdateOne(ctx, bson.M{"group_id": groupID}, bson.M{"$pull": bson.M{"member_id_list": bson.M{"$in": userIDList}}})
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
err = d.RemoveGroupFromUser(ctx, sCtx, groupID, userIDList)
|
||||
if err != nil {
|
||||
session.AbortTransaction(ctx)
|
||||
_ = session.AbortTransaction(ctx)
|
||||
return utils.Wrap(err, "transaction failed")
|
||||
}
|
||||
session.CommitTransaction(ctx)
|
||||
_ = session.CommitTransaction(ctx)
|
||||
return err
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package rocksCache
|
||||
|
||||
import (
|
||||
"Open_IM/pkg/common/constant"
|
||||
"Open_IM/pkg/common/db"
|
||||
imdb "Open_IM/pkg/common/db/mysql_model/im_mysql_model"
|
||||
"Open_IM/pkg/common/log"
|
||||
@@ -12,18 +13,19 @@ import (
|
||||
)
|
||||
|
||||
const (
|
||||
userInfoCache = "USER_INFO_CACHE:"
|
||||
friendRelationCache = "FRIEND_RELATION_CACHE:"
|
||||
blackListCache = "BLACK_LIST_CACHE:"
|
||||
groupCache = "GROUP_CACHE:"
|
||||
groupInfoCache = "GROUP_INFO_CACHE:"
|
||||
groupOwnerIDCache = "GROUP_OWNER_ID:"
|
||||
joinedGroupListCache = "JOINED_GROUP_LIST_CACHE:"
|
||||
groupMemberInfoCache = "GROUP_MEMBER_INFO_CACHE:"
|
||||
groupAllMemberInfoCache = "GROUP_ALL_MEMBER_INFO_CACHE:"
|
||||
allFriendInfoCache = "ALL_FRIEND_INFO_CACHE:"
|
||||
allDepartmentCache = "ALL_DEPARTMENT_CACHE:"
|
||||
allDepartmentMemberCache = "ALL_DEPARTMENT_MEMBER_CACHE:"
|
||||
userInfoCache = "USER_INFO_CACHE:"
|
||||
friendRelationCache = "FRIEND_RELATION_CACHE:"
|
||||
blackListCache = "BLACK_LIST_CACHE:"
|
||||
groupCache = "GROUP_CACHE:"
|
||||
groupInfoCache = "GROUP_INFO_CACHE:"
|
||||
groupOwnerIDCache = "GROUP_OWNER_ID:"
|
||||
joinedGroupListCache = "JOINED_GROUP_LIST_CACHE:"
|
||||
groupMemberInfoCache = "GROUP_MEMBER_INFO_CACHE:"
|
||||
groupAllMemberInfoCache = "GROUP_ALL_MEMBER_INFO_CACHE:"
|
||||
allFriendInfoCache = "ALL_FRIEND_INFO_CACHE:"
|
||||
allDepartmentCache = "ALL_DEPARTMENT_CACHE:"
|
||||
allDepartmentMemberCache = "ALL_DEPARTMENT_MEMBER_CACHE:"
|
||||
joinedSuperGroupListCache = "JOINED_SUPER_GROUP_LIST_CACHE:"
|
||||
)
|
||||
|
||||
func init() {
|
||||
@@ -41,13 +43,7 @@ func init() {
|
||||
panic(err.Error())
|
||||
}
|
||||
n += len(keys)
|
||||
//fmt.Printf("\n %s key found %d keys: %v, current cursor %d\n", key, n, keys, cursor)
|
||||
//if len(keys) > 0 {
|
||||
// err = db.DB.RDB.Del(context.Background(), keys...).Err()
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
//}
|
||||
// for each for redis cluster
|
||||
for _, key := range keys {
|
||||
if err = db.DB.RDB.Del(context.Background(), key).Err(); err != nil {
|
||||
log.NewError("", fName, key, err.Error())
|
||||
@@ -132,15 +128,28 @@ func DelJoinedGroupIDListFromCache(userID string) error {
|
||||
}
|
||||
|
||||
func GetGroupMemberIDListFromCache(groupID string) ([]string, error) {
|
||||
getGroupMemberIDList := func() (string, error) {
|
||||
groupMemberIDList, err := imdb.GetGroupMemberIDListByGroupID(groupID)
|
||||
f := func() (string, error) {
|
||||
groupInfo, err := GetGroupInfoFromCache(groupID)
|
||||
if err != nil {
|
||||
return "", utils.Wrap(err, "")
|
||||
return "", utils.Wrap(err, "GetGroupInfoFromCache failed")
|
||||
}
|
||||
var groupMemberIDList []string
|
||||
if groupInfo.GroupType == constant.SuperGroup {
|
||||
superGroup, err := db.DB.GetSuperGroup(groupID)
|
||||
if err != nil {
|
||||
return "", utils.Wrap(err, "")
|
||||
}
|
||||
groupMemberIDList = superGroup.MemberIDList
|
||||
} else {
|
||||
groupMemberIDList, err = imdb.GetGroupMemberIDListByGroupID(groupID)
|
||||
if err != nil {
|
||||
return "", utils.Wrap(err, "")
|
||||
}
|
||||
}
|
||||
bytes, err := json.Marshal(groupMemberIDList)
|
||||
return string(bytes), utils.Wrap(err, "")
|
||||
}
|
||||
groupIDListStr, err := db.DB.Rc.Fetch(groupCache+groupID, time.Second*30*60, getGroupMemberIDList)
|
||||
groupIDListStr, err := db.DB.Rc.Fetch(groupCache+groupID, time.Second*30*60, f)
|
||||
if err != nil {
|
||||
return nil, utils.Wrap(err, "")
|
||||
}
|
||||
@@ -149,8 +158,8 @@ func GetGroupMemberIDListFromCache(groupID string) ([]string, error) {
|
||||
return groupMemberIDList, utils.Wrap(err, "")
|
||||
}
|
||||
|
||||
func DelGroupMemberIDListFromCache(userID string) error {
|
||||
err := db.DB.Rc.TagAsDeleted(groupCache + userID)
|
||||
func DelGroupMemberIDListFromCache(groupID string) error {
|
||||
err := db.DB.Rc.TagAsDeleted(groupCache + groupID)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -307,3 +316,31 @@ func GetAllDepartmentMembersFromCache() ([]db.DepartmentMember, error) {
|
||||
func DelAllDepartmentMembersFromCache() error {
|
||||
return db.DB.Rc.TagAsDeleted(allDepartmentMemberCache)
|
||||
}
|
||||
|
||||
func GetJoinedSuperGroupListFromCache(userID string) ([]string, error) {
|
||||
getJoinedSuperGroupIDList := func() (string, error) {
|
||||
userToSuperGroup, err := db.DB.GetSuperGroupByUserID(userID)
|
||||
if err != nil {
|
||||
return "", utils.Wrap(err, "")
|
||||
}
|
||||
bytes, err := json.Marshal(userToSuperGroup.GroupIDList)
|
||||
return string(bytes), utils.Wrap(err, "")
|
||||
}
|
||||
joinedSuperGroupListStr, err := db.DB.Rc.Fetch(joinedSuperGroupListCache+userID, time.Second, getJoinedSuperGroupIDList)
|
||||
var joinedSuperGroupList []string
|
||||
err = json.Unmarshal([]byte(joinedSuperGroupListStr), &joinedSuperGroupList)
|
||||
return joinedSuperGroupList, err
|
||||
}
|
||||
|
||||
func DelJoinedSuperGroupIDListFromCache(userID string) error {
|
||||
err := db.DB.Rc.TagAsDeleted(joinedSuperGroupListCache + userID)
|
||||
return err
|
||||
}
|
||||
|
||||
func GetSuperGroupMemberIDListFromCache(groupID string) ([]string, error) {
|
||||
return GetGroupMemberIDListFromCache(groupID)
|
||||
}
|
||||
|
||||
func DelSuperGroupMemberIDListFromCache(groupID string) error {
|
||||
return DelGroupMemberIDListFromCache(groupID)
|
||||
}
|
||||
|
||||
+216
-69
@@ -37,7 +37,7 @@ func (m *MsgDataToMQ) Reset() { *m = MsgDataToMQ{} }
|
||||
func (m *MsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
||||
func (*MsgDataToMQ) ProtoMessage() {}
|
||||
func (*MsgDataToMQ) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{0}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{0}
|
||||
}
|
||||
func (m *MsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_MsgDataToMQ.Unmarshal(m, b)
|
||||
@@ -90,7 +90,7 @@ func (m *MsgDataToDB) Reset() { *m = MsgDataToDB{} }
|
||||
func (m *MsgDataToDB) String() string { return proto.CompactTextString(m) }
|
||||
func (*MsgDataToDB) ProtoMessage() {}
|
||||
func (*MsgDataToDB) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{1}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{1}
|
||||
}
|
||||
func (m *MsgDataToDB) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_MsgDataToDB.Unmarshal(m, b)
|
||||
@@ -137,7 +137,7 @@ func (m *PushMsgDataToMQ) Reset() { *m = PushMsgDataToMQ{} }
|
||||
func (m *PushMsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
||||
func (*PushMsgDataToMQ) ProtoMessage() {}
|
||||
func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{2}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{2}
|
||||
}
|
||||
func (m *PushMsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_PushMsgDataToMQ.Unmarshal(m, b)
|
||||
@@ -192,7 +192,7 @@ func (m *MsgDataToMongoByMQ) Reset() { *m = MsgDataToMongoByMQ{} }
|
||||
func (m *MsgDataToMongoByMQ) String() string { return proto.CompactTextString(m) }
|
||||
func (*MsgDataToMongoByMQ) ProtoMessage() {}
|
||||
func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{3}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{3}
|
||||
}
|
||||
func (m *MsgDataToMongoByMQ) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_MsgDataToMongoByMQ.Unmarshal(m, b)
|
||||
@@ -272,7 +272,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} }
|
||||
func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*GetMaxAndMinSeqReq) ProtoMessage() {}
|
||||
func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{4}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{4}
|
||||
}
|
||||
func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b)
|
||||
@@ -320,7 +320,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} }
|
||||
func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*GetMaxAndMinSeqResp) ProtoMessage() {}
|
||||
func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{5}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{5}
|
||||
}
|
||||
func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b)
|
||||
@@ -381,7 +381,7 @@ func (m *SendMsgReq) Reset() { *m = SendMsgReq{} }
|
||||
func (m *SendMsgReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*SendMsgReq) ProtoMessage() {}
|
||||
func (*SendMsgReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{6}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{6}
|
||||
}
|
||||
func (m *SendMsgReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SendMsgReq.Unmarshal(m, b)
|
||||
@@ -437,7 +437,7 @@ func (m *SendMsgResp) Reset() { *m = SendMsgResp{} }
|
||||
func (m *SendMsgResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*SendMsgResp) ProtoMessage() {}
|
||||
func (*SendMsgResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{7}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{7}
|
||||
}
|
||||
func (m *SendMsgResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SendMsgResp.Unmarshal(m, b)
|
||||
@@ -505,7 +505,7 @@ func (m *ClearMsgReq) Reset() { *m = ClearMsgReq{} }
|
||||
func (m *ClearMsgReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*ClearMsgReq) ProtoMessage() {}
|
||||
func (*ClearMsgReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{8}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{8}
|
||||
}
|
||||
func (m *ClearMsgReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ClearMsgReq.Unmarshal(m, b)
|
||||
@@ -558,7 +558,7 @@ func (m *ClearMsgResp) Reset() { *m = ClearMsgResp{} }
|
||||
func (m *ClearMsgResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*ClearMsgResp) ProtoMessage() {}
|
||||
func (*ClearMsgResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{9}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{9}
|
||||
}
|
||||
func (m *ClearMsgResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_ClearMsgResp.Unmarshal(m, b)
|
||||
@@ -607,7 +607,7 @@ func (m *SetMsgMinSeqReq) Reset() { *m = SetMsgMinSeqReq{} }
|
||||
func (m *SetMsgMinSeqReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*SetMsgMinSeqReq) ProtoMessage() {}
|
||||
func (*SetMsgMinSeqReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{10}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{10}
|
||||
}
|
||||
func (m *SetMsgMinSeqReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SetMsgMinSeqReq.Unmarshal(m, b)
|
||||
@@ -674,7 +674,7 @@ func (m *SetMsgMinSeqResp) Reset() { *m = SetMsgMinSeqResp{} }
|
||||
func (m *SetMsgMinSeqResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*SetMsgMinSeqResp) ProtoMessage() {}
|
||||
func (*SetMsgMinSeqResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{11}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{11}
|
||||
}
|
||||
func (m *SetMsgMinSeqResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SetMsgMinSeqResp.Unmarshal(m, b)
|
||||
@@ -719,7 +719,7 @@ func (m *SetSendMsgFailedFlagReq) Reset() { *m = SetSendMsgFailedFlagReq
|
||||
func (m *SetSendMsgFailedFlagReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*SetSendMsgFailedFlagReq) ProtoMessage() {}
|
||||
func (*SetSendMsgFailedFlagReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{12}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{12}
|
||||
}
|
||||
func (m *SetSendMsgFailedFlagReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SetSendMsgFailedFlagReq.Unmarshal(m, b)
|
||||
@@ -758,7 +758,7 @@ func (m *SetSendMsgFailedFlagResp) Reset() { *m = SetSendMsgFailedFlagRe
|
||||
func (m *SetSendMsgFailedFlagResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*SetSendMsgFailedFlagResp) ProtoMessage() {}
|
||||
func (*SetSendMsgFailedFlagResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{13}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{13}
|
||||
}
|
||||
func (m *SetSendMsgFailedFlagResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_SetSendMsgFailedFlagResp.Unmarshal(m, b)
|
||||
@@ -803,7 +803,7 @@ func (m *GetSendMsgStatusReq) Reset() { *m = GetSendMsgStatusReq{} }
|
||||
func (m *GetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*GetSendMsgStatusReq) ProtoMessage() {}
|
||||
func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{14}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{14}
|
||||
}
|
||||
func (m *GetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_GetSendMsgStatusReq.Unmarshal(m, b)
|
||||
@@ -843,7 +843,7 @@ func (m *GetSendMsgStatusResp) Reset() { *m = GetSendMsgStatusResp{} }
|
||||
func (m *GetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*GetSendMsgStatusResp) ProtoMessage() {}
|
||||
func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_b3ce531eb8197ddf, []int{15}
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{15}
|
||||
}
|
||||
func (m *GetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_GetSendMsgStatusResp.Unmarshal(m, b)
|
||||
@@ -884,6 +884,114 @@ func (m *GetSendMsgStatusResp) GetStatus() int32 {
|
||||
return 0
|
||||
}
|
||||
|
||||
type DelSuperGroupMsgReq struct {
|
||||
OpUserID string `protobuf:"bytes,1,opt,name=opUserID" json:"opUserID,omitempty"`
|
||||
UserID string `protobuf:"bytes,2,opt,name=userID" json:"userID,omitempty"`
|
||||
GroupID string `protobuf:"bytes,3,opt,name=groupID" json:"groupID,omitempty"`
|
||||
OperationID string `protobuf:"bytes,4,opt,name=operationID" json:"operationID,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgReq) Reset() { *m = DelSuperGroupMsgReq{} }
|
||||
func (m *DelSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
|
||||
func (*DelSuperGroupMsgReq) ProtoMessage() {}
|
||||
func (*DelSuperGroupMsgReq) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{16}
|
||||
}
|
||||
func (m *DelSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DelSuperGroupMsgReq.Unmarshal(m, b)
|
||||
}
|
||||
func (m *DelSuperGroupMsgReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
return xxx_messageInfo_DelSuperGroupMsgReq.Marshal(b, m, deterministic)
|
||||
}
|
||||
func (dst *DelSuperGroupMsgReq) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_DelSuperGroupMsgReq.Merge(dst, src)
|
||||
}
|
||||
func (m *DelSuperGroupMsgReq) XXX_Size() int {
|
||||
return xxx_messageInfo_DelSuperGroupMsgReq.Size(m)
|
||||
}
|
||||
func (m *DelSuperGroupMsgReq) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_DelSuperGroupMsgReq.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_DelSuperGroupMsgReq proto.InternalMessageInfo
|
||||
|
||||
func (m *DelSuperGroupMsgReq) GetOpUserID() string {
|
||||
if m != nil {
|
||||
return m.OpUserID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgReq) GetUserID() string {
|
||||
if m != nil {
|
||||
return m.UserID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgReq) GetGroupID() string {
|
||||
if m != nil {
|
||||
return m.GroupID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgReq) GetOperationID() string {
|
||||
if m != nil {
|
||||
return m.OperationID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type DelSuperGroupMsgResp struct {
|
||||
ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"`
|
||||
ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"`
|
||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||
XXX_unrecognized []byte `json:"-"`
|
||||
XXX_sizecache int32 `json:"-"`
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgResp) Reset() { *m = DelSuperGroupMsgResp{} }
|
||||
func (m *DelSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
|
||||
func (*DelSuperGroupMsgResp) ProtoMessage() {}
|
||||
func (*DelSuperGroupMsgResp) Descriptor() ([]byte, []int) {
|
||||
return fileDescriptor_msg_110411abaacf415d, []int{17}
|
||||
}
|
||||
func (m *DelSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
|
||||
return xxx_messageInfo_DelSuperGroupMsgResp.Unmarshal(m, b)
|
||||
}
|
||||
func (m *DelSuperGroupMsgResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||
return xxx_messageInfo_DelSuperGroupMsgResp.Marshal(b, m, deterministic)
|
||||
}
|
||||
func (dst *DelSuperGroupMsgResp) XXX_Merge(src proto.Message) {
|
||||
xxx_messageInfo_DelSuperGroupMsgResp.Merge(dst, src)
|
||||
}
|
||||
func (m *DelSuperGroupMsgResp) XXX_Size() int {
|
||||
return xxx_messageInfo_DelSuperGroupMsgResp.Size(m)
|
||||
}
|
||||
func (m *DelSuperGroupMsgResp) XXX_DiscardUnknown() {
|
||||
xxx_messageInfo_DelSuperGroupMsgResp.DiscardUnknown(m)
|
||||
}
|
||||
|
||||
var xxx_messageInfo_DelSuperGroupMsgResp proto.InternalMessageInfo
|
||||
|
||||
func (m *DelSuperGroupMsgResp) GetErrCode() int32 {
|
||||
if m != nil {
|
||||
return m.ErrCode
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (m *DelSuperGroupMsgResp) GetErrMsg() string {
|
||||
if m != nil {
|
||||
return m.ErrMsg
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func init() {
|
||||
proto.RegisterType((*MsgDataToMQ)(nil), "msg.MsgDataToMQ")
|
||||
proto.RegisterType((*MsgDataToDB)(nil), "msg.MsgDataToDB")
|
||||
@@ -901,6 +1009,8 @@ func init() {
|
||||
proto.RegisterType((*SetSendMsgFailedFlagResp)(nil), "msg.SetSendMsgFailedFlagResp")
|
||||
proto.RegisterType((*GetSendMsgStatusReq)(nil), "msg.GetSendMsgStatusReq")
|
||||
proto.RegisterType((*GetSendMsgStatusResp)(nil), "msg.GetSendMsgStatusResp")
|
||||
proto.RegisterType((*DelSuperGroupMsgReq)(nil), "msg.DelSuperGroupMsgReq")
|
||||
proto.RegisterType((*DelSuperGroupMsgResp)(nil), "msg.DelSuperGroupMsgResp")
|
||||
}
|
||||
|
||||
// Reference imports to suppress errors if they are not otherwise used.
|
||||
@@ -918,6 +1028,7 @@ type MsgClient interface {
|
||||
PullMessageBySeqList(ctx context.Context, in *sdk_ws.PullMessageBySeqListReq, opts ...grpc.CallOption) (*sdk_ws.PullMessageBySeqListResp, error)
|
||||
SendMsg(ctx context.Context, in *SendMsgReq, opts ...grpc.CallOption) (*SendMsgResp, error)
|
||||
DelMsgList(ctx context.Context, in *sdk_ws.DelMsgListReq, opts ...grpc.CallOption) (*sdk_ws.DelMsgListResp, error)
|
||||
DelSuperGroupMsg(ctx context.Context, in *DelSuperGroupMsgReq, opts ...grpc.CallOption) (*DelSuperGroupMsgResp, error)
|
||||
ClearMsg(ctx context.Context, in *ClearMsgReq, opts ...grpc.CallOption) (*ClearMsgResp, error)
|
||||
SetMsgMinSeq(ctx context.Context, in *SetMsgMinSeqReq, opts ...grpc.CallOption) (*SetMsgMinSeqResp, error)
|
||||
SetSendMsgFailedFlag(ctx context.Context, in *SetSendMsgFailedFlagReq, opts ...grpc.CallOption) (*SetSendMsgFailedFlagResp, error)
|
||||
@@ -968,6 +1079,15 @@ func (c *msgClient) DelMsgList(ctx context.Context, in *sdk_ws.DelMsgListReq, op
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *msgClient) DelSuperGroupMsg(ctx context.Context, in *DelSuperGroupMsgReq, opts ...grpc.CallOption) (*DelSuperGroupMsgResp, error) {
|
||||
out := new(DelSuperGroupMsgResp)
|
||||
err := grpc.Invoke(ctx, "/msg.msg/DelSuperGroupMsg", in, out, c.cc, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *msgClient) ClearMsg(ctx context.Context, in *ClearMsgReq, opts ...grpc.CallOption) (*ClearMsgResp, error) {
|
||||
out := new(ClearMsgResp)
|
||||
err := grpc.Invoke(ctx, "/msg.msg/ClearMsg", in, out, c.cc, opts...)
|
||||
@@ -1011,6 +1131,7 @@ type MsgServer interface {
|
||||
PullMessageBySeqList(context.Context, *sdk_ws.PullMessageBySeqListReq) (*sdk_ws.PullMessageBySeqListResp, error)
|
||||
SendMsg(context.Context, *SendMsgReq) (*SendMsgResp, error)
|
||||
DelMsgList(context.Context, *sdk_ws.DelMsgListReq) (*sdk_ws.DelMsgListResp, error)
|
||||
DelSuperGroupMsg(context.Context, *DelSuperGroupMsgReq) (*DelSuperGroupMsgResp, error)
|
||||
ClearMsg(context.Context, *ClearMsgReq) (*ClearMsgResp, error)
|
||||
SetMsgMinSeq(context.Context, *SetMsgMinSeqReq) (*SetMsgMinSeqResp, error)
|
||||
SetSendMsgFailedFlag(context.Context, *SetSendMsgFailedFlagReq) (*SetSendMsgFailedFlagResp, error)
|
||||
@@ -1093,6 +1214,24 @@ func _Msg_DelMsgList_Handler(srv interface{}, ctx context.Context, dec func(inte
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Msg_DelSuperGroupMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(DelSuperGroupMsgReq)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(MsgServer).DelSuperGroupMsg(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/msg.msg/DelSuperGroupMsg",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(MsgServer).DelSuperGroupMsg(ctx, req.(*DelSuperGroupMsgReq))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Msg_ClearMsg_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(ClearMsgReq)
|
||||
if err := dec(in); err != nil {
|
||||
@@ -1185,6 +1324,10 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
|
||||
MethodName: "DelMsgList",
|
||||
Handler: _Msg_DelMsgList_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "DelSuperGroupMsg",
|
||||
Handler: _Msg_DelSuperGroupMsg_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "ClearMsg",
|
||||
Handler: _Msg_ClearMsg_Handler,
|
||||
@@ -1206,58 +1349,62 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
|
||||
Metadata: "msg/msg.proto",
|
||||
}
|
||||
|
||||
func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_b3ce531eb8197ddf) }
|
||||
func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_110411abaacf415d) }
|
||||
|
||||
var fileDescriptor_msg_b3ce531eb8197ddf = []byte{
|
||||
// 793 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcf, 0x6e, 0xfb, 0x44,
|
||||
0x10, 0x96, 0x9b, 0x7f, 0xbf, 0x8c, 0x5b, 0x25, 0x2c, 0xa1, 0x18, 0xab, 0x48, 0xa9, 0x05, 0x28,
|
||||
0x02, 0x94, 0x48, 0x01, 0x89, 0x43, 0x2f, 0x90, 0xa6, 0xad, 0x2a, 0xd5, 0xb4, 0xb5, 0xcb, 0x85,
|
||||
0x4b, 0x6a, 0x9a, 0xd5, 0xd6, 0xaa, 0xff, 0x6c, 0x3c, 0x0e, 0x6d, 0xe1, 0x19, 0x78, 0x00, 0x4e,
|
||||
0xdc, 0x78, 0x33, 0xde, 0x03, 0xed, 0xae, 0x93, 0xd8, 0x89, 0xa1, 0x51, 0x0e, 0xbf, 0xe3, 0xf7,
|
||||
0x79, 0x76, 0xe6, 0xfb, 0x66, 0x67, 0x27, 0x81, 0x83, 0x10, 0xd9, 0x20, 0x44, 0xd6, 0xe7, 0x49,
|
||||
0x9c, 0xc6, 0xa4, 0x12, 0x22, 0x33, 0x8f, 0xaf, 0x39, 0x8d, 0x26, 0x97, 0xf6, 0x80, 0x3f, 0xb1,
|
||||
0x81, 0xe4, 0x07, 0x38, 0x7d, 0x9a, 0x3c, 0xe3, 0xe0, 0x19, 0x55, 0x9c, 0xf5, 0x3b, 0xe8, 0x36,
|
||||
0xb2, 0xb1, 0x97, 0x7a, 0x77, 0xb1, 0x7d, 0x4b, 0x3a, 0x50, 0x4b, 0xe3, 0x27, 0x1a, 0x19, 0x5a,
|
||||
0x57, 0xeb, 0x35, 0x1d, 0x05, 0x48, 0x17, 0xf4, 0x98, 0xd3, 0xc4, 0x4b, 0xfd, 0x38, 0xba, 0x1c,
|
||||
0x1b, 0x7b, 0xf2, 0x5b, 0x9e, 0x22, 0xdf, 0x42, 0x23, 0x54, 0x69, 0x8c, 0x4a, 0x57, 0xeb, 0xe9,
|
||||
0x43, 0xb3, 0x8f, 0x34, 0xf9, 0x95, 0x26, 0x13, 0x8f, 0xfb, 0x13, 0xee, 0x25, 0x5e, 0x88, 0xfd,
|
||||
0xac, 0x90, 0xb3, 0x08, 0xb5, 0x68, 0xae, 0xf8, 0x78, 0x94, 0x4f, 0xa2, 0x6d, 0x9d, 0xe4, 0x6d,
|
||||
0x71, 0xd6, 0x1f, 0x1a, 0xb4, 0x6e, 0xe6, 0xf8, 0x98, 0x37, 0xda, 0x05, 0xfd, 0x3a, 0x77, 0x4a,
|
||||
0xd9, 0xcd, 0x53, 0x79, 0x35, 0x7b, 0xdb, 0xab, 0xb1, 0x60, 0x9f, 0xcf, 0xf1, 0xf1, 0x2e, 0xfe,
|
||||
0x09, 0x69, 0x72, 0x39, 0x96, 0xdd, 0x68, 0x3a, 0x05, 0xce, 0xfa, 0x5b, 0x03, 0xb2, 0xd2, 0x12,
|
||||
0x47, 0x2c, 0x1e, 0xbd, 0xda, 0xb7, 0xc4, 0x80, 0x46, 0xe0, 0x61, 0xea, 0xd2, 0x99, 0x94, 0x53,
|
||||
0x75, 0x16, 0x90, 0x7c, 0x06, 0x07, 0x1e, 0x63, 0x09, 0x65, 0x45, 0x93, 0x45, 0x92, 0x0c, 0x41,
|
||||
0x0f, 0x29, 0xa2, 0xc7, 0xe8, 0x95, 0x8f, 0xa9, 0x51, 0xe9, 0x56, 0x7a, 0xfa, 0xb0, 0xdd, 0x17,
|
||||
0x33, 0x91, 0x73, 0xee, 0xe4, 0x83, 0xc8, 0x11, 0x34, 0xd3, 0xc4, 0x67, 0x4c, 0x6a, 0xad, 0xca,
|
||||
0xac, 0x2b, 0xc2, 0xfa, 0x11, 0xc8, 0x05, 0x4d, 0x6d, 0xef, 0xe5, 0x87, 0x68, 0x6a, 0xfb, 0x91,
|
||||
0x4b, 0x67, 0x0e, 0x9d, 0x91, 0x43, 0xa8, 0x67, 0xe6, 0x54, 0xd7, 0x32, 0xb4, 0xde, 0xd2, 0xbd,
|
||||
0x8d, 0x96, 0x5a, 0xcf, 0xf0, 0xe1, 0x46, 0x3e, 0xe4, 0xc2, 0xf8, 0x59, 0x92, 0x9c, 0xc6, 0x53,
|
||||
0x2a, 0x33, 0xd6, 0x9c, 0x05, 0x14, 0xa5, 0xce, 0x92, 0xc4, 0x46, 0x96, 0x65, 0xcb, 0x90, 0xe0,
|
||||
0x6d, 0xef, 0x45, 0x74, 0x4a, 0xf4, 0xf7, 0xc0, 0xc9, 0x90, 0xe4, 0x65, 0x5e, 0xe9, 0x45, 0xf0,
|
||||
0x12, 0x59, 0xbf, 0x01, 0xb8, 0x34, 0x9a, 0xda, 0xc8, 0x84, 0x81, 0xf7, 0x3b, 0xe4, 0x7f, 0x69,
|
||||
0xa0, 0x2f, 0x8b, 0x2b, 0xb7, 0xb4, 0xe8, 0x96, 0xae, 0xdc, 0xd2, 0x82, 0x5b, 0x85, 0x84, 0x32,
|
||||
0x55, 0xc7, 0x46, 0xb6, 0xbc, 0xa6, 0x3c, 0x25, 0x22, 0x1e, 0x02, 0x9f, 0x46, 0xa9, 0x8a, 0xa8,
|
||||
0xa9, 0x88, 0x1c, 0x45, 0x4c, 0x78, 0x87, 0x34, 0x9a, 0xde, 0xf9, 0x21, 0x35, 0xea, 0x5d, 0xad,
|
||||
0x57, 0x71, 0x96, 0xd8, 0x7a, 0x00, 0xfd, 0x34, 0xa0, 0x5e, 0x92, 0xb5, 0xe7, 0x10, 0xea, 0xf3,
|
||||
0xc2, 0xfd, 0x2a, 0x24, 0x52, 0xc4, 0x3c, 0xbb, 0x79, 0x25, 0x70, 0x89, 0xd7, 0x9b, 0x57, 0xd9,
|
||||
0x7c, 0x84, 0xdf, 0xc3, 0xfe, 0xaa, 0xc8, 0x2e, 0x6d, 0xb0, 0xfe, 0xd4, 0xa0, 0xe5, 0x52, 0xe1,
|
||||
0xa7, 0x30, 0x8b, 0xa5, 0x5a, 0x0d, 0x68, 0xb0, 0x24, 0x9e, 0xf3, 0xa5, 0xd4, 0x05, 0x14, 0x27,
|
||||
0x42, 0x35, 0x22, 0xd9, 0xe8, 0x28, 0xb4, 0xee, 0xa0, 0xba, 0x79, 0xfd, 0x79, 0xff, 0xb5, 0xa2,
|
||||
0x7f, 0x6b, 0x0c, 0xed, 0xa2, 0xb4, 0x9d, 0x1c, 0x9e, 0xc0, 0xc7, 0x2e, 0x4d, 0xb3, 0x61, 0x39,
|
||||
0xf7, 0xfc, 0x80, 0x4e, 0xcf, 0x03, 0x4f, 0x5e, 0xca, 0x9a, 0x3c, 0x6d, 0xb3, 0xc1, 0x57, 0x60,
|
||||
0x94, 0x1f, 0xde, 0x49, 0xca, 0x77, 0xf2, 0xa9, 0x66, 0xd9, 0xdc, 0xd4, 0x4b, 0xe7, 0xb8, 0x9d,
|
||||
0x8c, 0x7b, 0xe8, 0x6c, 0x1e, 0xdc, 0x69, 0xec, 0x0f, 0xa1, 0x8e, 0xf2, 0xbc, 0xbc, 0xa9, 0x9a,
|
||||
0x93, 0xa1, 0xe1, 0x3f, 0x55, 0x10, 0xbf, 0x6e, 0xe4, 0x1e, 0x5a, 0x6b, 0xdb, 0x84, 0x7c, 0x5e,
|
||||
0xf2, 0x20, 0x37, 0x37, 0x98, 0xf9, 0xc5, 0x36, 0x61, 0xc8, 0x49, 0x0c, 0x9d, 0x9b, 0x79, 0x10,
|
||||
0xd8, 0x6a, 0x61, 0x8e, 0x5e, 0x5d, 0x3a, 0x93, 0x5b, 0xf3, 0xcb, 0x92, 0xf3, 0x65, 0x81, 0xa2,
|
||||
0xd6, 0x57, 0x5b, 0xc7, 0x22, 0x27, 0x5f, 0x43, 0x23, 0xeb, 0x1c, 0x69, 0xc9, 0xc5, 0xbd, 0xda,
|
||||
0x5a, 0x66, 0xbb, 0x48, 0x20, 0x27, 0xb7, 0x00, 0x63, 0x1a, 0xd8, 0xc8, 0xa4, 0xa8, 0x6e, 0x49,
|
||||
0xa1, 0xd5, 0x67, 0x91, 0xe1, 0xf8, 0x8d, 0x08, 0xe4, 0x64, 0x00, 0xef, 0x16, 0xaf, 0x94, 0xa8,
|
||||
0x82, 0xb9, 0xcd, 0x60, 0x7e, 0xb0, 0xc6, 0x20, 0x27, 0x27, 0xb0, 0x9f, 0x1f, 0x7c, 0xd2, 0xc9,
|
||||
0x54, 0x16, 0x9e, 0xa9, 0xf9, 0x51, 0x09, 0x8b, 0x9c, 0xb8, 0xd0, 0x29, 0x1b, 0x59, 0x72, 0xb4,
|
||||
0x08, 0x2f, 0x7b, 0x0a, 0xe6, 0xa7, 0xff, 0xf3, 0x15, 0x39, 0xb9, 0x80, 0xf6, 0xfa, 0x00, 0x12,
|
||||
0x43, 0x1e, 0x29, 0x19, 0x68, 0xf3, 0x93, 0xff, 0xf8, 0x82, 0x7c, 0xa4, 0xff, 0xdc, 0xec, 0x8b,
|
||||
0x7f, 0x54, 0x27, 0x21, 0xb2, 0x5f, 0xea, 0xf2, 0xef, 0xd2, 0x37, 0xff, 0x06, 0x00, 0x00, 0xff,
|
||||
0xff, 0x01, 0x7d, 0x7b, 0xe8, 0x67, 0x09, 0x00, 0x00,
|
||||
var fileDescriptor_msg_110411abaacf415d = []byte{
|
||||
// 850 bytes of a gzipped FileDescriptorProto
|
||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xcd, 0x6f, 0x1b, 0x55,
|
||||
0x10, 0xd7, 0xc6, 0xb1, 0xd3, 0xcc, 0x26, 0xb2, 0x79, 0x35, 0x61, 0x59, 0x15, 0xc9, 0x5d, 0x01,
|
||||
0xb2, 0x00, 0xd9, 0x92, 0x41, 0xe2, 0x90, 0x0b, 0xb8, 0x6e, 0x43, 0xa4, 0x2e, 0x6d, 0x76, 0xc3,
|
||||
0x85, 0x8b, 0xbb, 0xd4, 0x4f, 0xaf, 0xab, 0xec, 0xc7, 0xf3, 0xce, 0x9a, 0xb4, 0x70, 0xe6, 0xc8,
|
||||
0x1f, 0xc0, 0x89, 0x1b, 0x47, 0xfe, 0x46, 0xf4, 0x3e, 0x6c, 0xef, 0x57, 0x88, 0xe5, 0x43, 0x8f,
|
||||
0x33, 0x3b, 0x6f, 0xe6, 0xf7, 0x9b, 0xf9, 0xbd, 0x79, 0x0b, 0xa7, 0x31, 0xb2, 0x71, 0x8c, 0x6c,
|
||||
0xc4, 0xb3, 0x34, 0x4f, 0x49, 0x2b, 0x46, 0x66, 0x3f, 0x7e, 0xc1, 0x69, 0x32, 0xbf, 0x74, 0xc7,
|
||||
0xfc, 0x86, 0x8d, 0xa5, 0x7f, 0x8c, 0x8b, 0x9b, 0xf9, 0x2d, 0x8e, 0x6f, 0x51, 0xc5, 0x39, 0xbf,
|
||||
0x83, 0xe9, 0x22, 0x9b, 0x05, 0x79, 0x70, 0x9d, 0xba, 0x57, 0xa4, 0x0f, 0xed, 0x3c, 0xbd, 0xa1,
|
||||
0x89, 0x65, 0x0c, 0x8c, 0xe1, 0xb1, 0xa7, 0x0c, 0x32, 0x00, 0x33, 0xe5, 0x34, 0x0b, 0xf2, 0x30,
|
||||
0x4d, 0x2e, 0x67, 0xd6, 0x81, 0xfc, 0x56, 0x74, 0x91, 0x6f, 0xe0, 0x28, 0x56, 0x69, 0xac, 0xd6,
|
||||
0xc0, 0x18, 0x9a, 0x13, 0x7b, 0x84, 0x34, 0xfb, 0x95, 0x66, 0xf3, 0x80, 0x87, 0x73, 0x1e, 0x64,
|
||||
0x41, 0x8c, 0x23, 0x5d, 0xc8, 0x5b, 0x87, 0x3a, 0xb4, 0x50, 0x7c, 0x36, 0x2d, 0x26, 0x31, 0x76,
|
||||
0x4e, 0x72, 0x3f, 0x38, 0xe7, 0x4f, 0x03, 0xba, 0x2f, 0x57, 0xf8, 0xa6, 0x48, 0x74, 0x00, 0xe6,
|
||||
0x8b, 0xc2, 0x29, 0x45, 0xb7, 0xe8, 0x2a, 0xa2, 0x39, 0xd8, 0x1d, 0x8d, 0x03, 0x27, 0x7c, 0x85,
|
||||
0x6f, 0xae, 0xd3, 0x9f, 0x90, 0x66, 0x97, 0x33, 0xd9, 0x8d, 0x63, 0xaf, 0xe4, 0x73, 0xfe, 0x31,
|
||||
0x80, 0x6c, 0xb1, 0xa4, 0x09, 0x4b, 0xa7, 0xef, 0xdc, 0x2b, 0x62, 0xc1, 0x51, 0x14, 0x60, 0xee,
|
||||
0xd3, 0xa5, 0x84, 0x73, 0xe8, 0xad, 0x4d, 0xf2, 0x29, 0x9c, 0x06, 0x8c, 0x65, 0x94, 0x95, 0x49,
|
||||
0x96, 0x9d, 0x64, 0x02, 0x66, 0x4c, 0x11, 0x03, 0x46, 0x9f, 0x87, 0x98, 0x5b, 0xad, 0x41, 0x6b,
|
||||
0x68, 0x4e, 0x7a, 0x23, 0xa1, 0x89, 0x02, 0x73, 0xaf, 0x18, 0x44, 0x1e, 0xc1, 0x71, 0x9e, 0x85,
|
||||
0x8c, 0x49, 0xac, 0x87, 0x32, 0xeb, 0xd6, 0xe1, 0xfc, 0x08, 0xe4, 0x82, 0xe6, 0x6e, 0xf0, 0xf6,
|
||||
0xfb, 0x64, 0xe1, 0x86, 0x89, 0x4f, 0x97, 0x1e, 0x5d, 0x92, 0x33, 0xe8, 0x68, 0x72, 0xaa, 0x6b,
|
||||
0xda, 0xaa, 0xb6, 0xf4, 0xa0, 0xd6, 0x52, 0xe7, 0x16, 0x1e, 0xd6, 0xf2, 0x21, 0x17, 0xc4, 0x9f,
|
||||
0x66, 0xd9, 0x93, 0x74, 0x41, 0x65, 0xc6, 0xb6, 0xb7, 0x36, 0x45, 0xa9, 0xa7, 0x59, 0xe6, 0x22,
|
||||
0xd3, 0xd9, 0xb4, 0x25, 0xfc, 0x6e, 0xf0, 0x56, 0x74, 0x4a, 0xf4, 0xf7, 0xd4, 0xd3, 0x96, 0xf4,
|
||||
0xcb, 0xbc, 0x92, 0x8b, 0xf0, 0x4b, 0xcb, 0xf9, 0x0d, 0xc0, 0xa7, 0xc9, 0xc2, 0x45, 0x26, 0x08,
|
||||
0xbc, 0x5f, 0x91, 0xff, 0x6d, 0x80, 0xb9, 0x29, 0xae, 0xd8, 0xd2, 0x32, 0x5b, 0xba, 0x65, 0x4b,
|
||||
0x4b, 0x6c, 0x95, 0x25, 0x90, 0xa9, 0x3a, 0x2e, 0xb2, 0xcd, 0x98, 0x8a, 0x2e, 0x11, 0xf1, 0x3a,
|
||||
0x0a, 0x69, 0x92, 0xab, 0x88, 0xb6, 0x8a, 0x28, 0xb8, 0x88, 0x0d, 0x0f, 0x90, 0x26, 0x8b, 0xeb,
|
||||
0x30, 0xa6, 0x56, 0x67, 0x60, 0x0c, 0x5b, 0xde, 0xc6, 0x76, 0x5e, 0x83, 0xf9, 0x24, 0xa2, 0x41,
|
||||
0xa6, 0xdb, 0x73, 0x06, 0x9d, 0x55, 0x69, 0xbe, 0xca, 0x12, 0x29, 0x52, 0xae, 0x27, 0xaf, 0x00,
|
||||
0x6e, 0xec, 0x6a, 0xf3, 0x5a, 0xf5, 0x4b, 0xf8, 0x1d, 0x9c, 0x6c, 0x8b, 0xec, 0xd3, 0x06, 0xe7,
|
||||
0x2f, 0x03, 0xba, 0x3e, 0x15, 0x7c, 0x4a, 0x5a, 0x6c, 0xc4, 0x6a, 0xc1, 0x11, 0xcb, 0xd2, 0x15,
|
||||
0xdf, 0x40, 0x5d, 0x9b, 0xe2, 0x44, 0xac, 0x24, 0xa2, 0xa5, 0xa3, 0xac, 0x2a, 0x83, 0xc3, 0xfa,
|
||||
0xf8, 0x8b, 0xfc, 0xdb, 0x65, 0xfe, 0xce, 0x0c, 0x7a, 0x65, 0x68, 0x7b, 0x31, 0x3c, 0x87, 0x8f,
|
||||
0x7c, 0x9a, 0x6b, 0xb1, 0x3c, 0x0b, 0xc2, 0x88, 0x2e, 0x9e, 0x45, 0x81, 0x1c, 0x4a, 0x05, 0x9e,
|
||||
0x51, 0x6f, 0xf0, 0x73, 0xb0, 0x9a, 0x0f, 0xef, 0x05, 0xe5, 0x5b, 0x79, 0x55, 0x75, 0x36, 0x3f,
|
||||
0x0f, 0xf2, 0x15, 0xee, 0x06, 0xe3, 0x15, 0xf4, 0xeb, 0x07, 0xf7, 0x92, 0xfd, 0x19, 0x74, 0x50,
|
||||
0x9e, 0x97, 0x93, 0x6a, 0x7b, 0xda, 0x72, 0xfe, 0x30, 0xe0, 0xe1, 0x8c, 0x46, 0xfe, 0x8a, 0xd3,
|
||||
0xec, 0x42, 0x4c, 0x55, 0xeb, 0xb6, 0x38, 0x1f, 0xa3, 0xa2, 0xcf, 0xad, 0x4e, 0x0e, 0xee, 0xd2,
|
||||
0x49, 0xab, 0xac, 0x93, 0x7b, 0xf5, 0xe0, 0xfc, 0x00, 0xfd, 0x3a, 0x8c, 0x7d, 0x98, 0x4e, 0xfe,
|
||||
0x6d, 0x83, 0x78, 0xaf, 0xc9, 0x2b, 0xe8, 0x56, 0xf6, 0x23, 0xf9, 0xac, 0x61, 0xc5, 0xd4, 0x77,
|
||||
0xb2, 0xfd, 0xf9, 0x2e, 0x61, 0xc8, 0x49, 0x0a, 0xfd, 0x97, 0xab, 0x28, 0x72, 0xd5, 0x13, 0x30,
|
||||
0x7d, 0xe7, 0xd3, 0xa5, 0x7c, 0x07, 0xbe, 0x68, 0x38, 0xdf, 0x14, 0x28, 0x6a, 0x7d, 0xb9, 0x73,
|
||||
0x2c, 0x72, 0xf2, 0x15, 0x1c, 0x69, 0x2d, 0x90, 0xae, 0x7c, 0x8a, 0xb6, 0x7b, 0xd8, 0xee, 0x95,
|
||||
0x1d, 0xc8, 0xc9, 0x15, 0xc0, 0x8c, 0x46, 0x2e, 0x32, 0x09, 0x6a, 0xd0, 0x50, 0x68, 0xfb, 0x59,
|
||||
0x64, 0x78, 0x7c, 0x4f, 0x04, 0x72, 0x72, 0x01, 0xbd, 0xea, 0x94, 0x88, 0x25, 0x0b, 0x37, 0x68,
|
||||
0xc8, 0xfe, 0xf8, 0x8e, 0x2f, 0xc8, 0xc9, 0x18, 0x1e, 0xac, 0x17, 0x18, 0x51, 0xc8, 0x0b, 0x4b,
|
||||
0xd3, 0xfe, 0xa0, 0xe2, 0x41, 0x4e, 0xce, 0xe1, 0xa4, 0xb8, 0x13, 0x48, 0x5f, 0xd3, 0x2d, 0x6d,
|
||||
0x30, 0xfb, 0xc3, 0x06, 0x2f, 0x72, 0xe2, 0x43, 0xbf, 0xe9, 0x36, 0x93, 0x47, 0xeb, 0xf0, 0xa6,
|
||||
0x2d, 0x61, 0x7f, 0xf2, 0x3f, 0x5f, 0x55, 0x2f, 0xaa, 0x77, 0x53, 0xf7, 0xa2, 0xe1, 0xae, 0xeb,
|
||||
0x5e, 0x34, 0x5d, 0xe6, 0xa9, 0xf9, 0xf3, 0xf1, 0x48, 0xfc, 0x6c, 0x9e, 0xc7, 0xc8, 0x7e, 0xe9,
|
||||
0xc8, 0x3f, 0xc9, 0xaf, 0xff, 0x0b, 0x00, 0x00, 0xff, 0xff, 0xa9, 0xcc, 0x3b, 0xac, 0x82, 0x0a,
|
||||
0x00, 0x00,
|
||||
}
|
||||
|
||||
+11
-1
@@ -120,12 +120,22 @@ message GetSendMsgStatusResp{
|
||||
string errMsg = 2;
|
||||
int32 status = 3;
|
||||
}
|
||||
|
||||
message DelSuperGroupMsgReq{
|
||||
string opUserID = 1;
|
||||
string userID = 2;
|
||||
string groupID = 3;
|
||||
string operationID = 4;
|
||||
}
|
||||
message DelSuperGroupMsgResp{
|
||||
int32 errCode = 1;
|
||||
string errMsg = 2;
|
||||
}
|
||||
service msg {
|
||||
rpc GetMaxAndMinSeq(server_api_params.GetMaxAndMinSeqReq) returns(server_api_params.GetMaxAndMinSeqResp);
|
||||
rpc PullMessageBySeqList(server_api_params.PullMessageBySeqListReq) returns(server_api_params.PullMessageBySeqListResp);
|
||||
rpc SendMsg(SendMsgReq) returns(SendMsgResp);
|
||||
rpc DelMsgList(server_api_params.DelMsgListReq) returns(server_api_params.DelMsgListResp);
|
||||
rpc DelSuperGroupMsg(DelSuperGroupMsgReq) returns(DelSuperGroupMsgResp);
|
||||
rpc ClearMsg(ClearMsgReq) returns(ClearMsgResp);
|
||||
rpc SetMsgMinSeq(SetMsgMinSeqReq) returns(SetMsgMinSeqResp);
|
||||
rpc SetSendMsgFailedFlag(SetSendMsgFailedFlagReq) returns(SetSendMsgFailedFlagResp);
|
||||
|
||||
Reference in New Issue
Block a user