mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-06 04:15:46 +08:00
Merge branch 'v2.3.0release'
# Conflicts: # README.md # config/config.yaml
This commit is contained in:
commit
094911bab2
@ -1 +1 @@
|
|||||||
Subproject commit e731cb86ec9314a0b30b4f8331d53854c2c9d858
|
Subproject commit e7bf4b2a2066e8836dccd908d11b4d37c1c6a4ce
|
@ -175,8 +175,10 @@ func main() {
|
|||||||
conversationGroup.POST("/get_all_conversations", conversation.GetAllConversations)
|
conversationGroup.POST("/get_all_conversations", conversation.GetAllConversations)
|
||||||
conversationGroup.POST("/get_conversation", conversation.GetConversation)
|
conversationGroup.POST("/get_conversation", conversation.GetConversation)
|
||||||
conversationGroup.POST("/get_conversations", conversation.GetConversations)
|
conversationGroup.POST("/get_conversations", conversation.GetConversations)
|
||||||
|
//deprecated
|
||||||
conversationGroup.POST("/set_conversation", conversation.SetConversation)
|
conversationGroup.POST("/set_conversation", conversation.SetConversation)
|
||||||
conversationGroup.POST("/batch_set_conversation", conversation.BatchSetConversations)
|
conversationGroup.POST("/batch_set_conversation", conversation.BatchSetConversations)
|
||||||
|
//deprecated
|
||||||
conversationGroup.POST("/set_recv_msg_opt", conversation.SetRecvMsgOpt)
|
conversationGroup.POST("/set_recv_msg_opt", conversation.SetRecvMsgOpt)
|
||||||
conversationGroup.POST("/modify_conversation_field", conversation.ModifyConversationField)
|
conversationGroup.POST("/modify_conversation_field", conversation.ModifyConversationField)
|
||||||
}
|
}
|
||||||
|
@ -133,14 +133,14 @@ credential: #腾讯cos,发送图片、视频、文件时需要,请自行申
|
|||||||
isDistributedMod: false # 是否分布式多硬盘部署 默认docker-compose中为false
|
isDistributedMod: false # 是否分布式多硬盘部署 默认docker-compose中为false
|
||||||
ali: # ali oss
|
ali: # ali oss
|
||||||
regionID:
|
regionID:
|
||||||
accessKeyID: ""
|
accessKeyID:
|
||||||
accessKeySecret: ""
|
accessKeySecret:
|
||||||
stsEndpoint:
|
stsEndpoint:
|
||||||
ossEndpoint:
|
ossEndpoint:
|
||||||
bucket:
|
bucket:
|
||||||
finalHost:
|
finalHost:
|
||||||
stsDurationSeconds: 3600
|
stsDurationSeconds:
|
||||||
OssRoleArn: "acs:ram::xxx:role/xxx"
|
OssRoleArn:
|
||||||
aws:
|
aws:
|
||||||
accessKeyID: #AssumeRole用户关联的accessKeyID
|
accessKeyID: #AssumeRole用户关联的accessKeyID
|
||||||
accessKeySecret: #AssumeRole用户关联的accessKeySecrect
|
accessKeySecret: #AssumeRole用户关联的accessKeySecrect
|
||||||
@ -219,8 +219,8 @@ push:
|
|||||||
accessID:
|
accessID:
|
||||||
secretKey:
|
secretKey:
|
||||||
android:
|
android:
|
||||||
accessID: 111
|
accessID:
|
||||||
secretKey: 111
|
secretKey:
|
||||||
enable: false # true or false (bool)
|
enable: false # true or false (bool)
|
||||||
jpns: #极光推送 在极光后台申请后,修改以下四项,必须修改
|
jpns: #极光推送 在极光后台申请后,修改以下四项,必须修改
|
||||||
appKey:
|
appKey:
|
||||||
|
@ -38,6 +38,7 @@ func SetOptions(options map[string]bool, value bool) {
|
|||||||
|
|
||||||
func newUserSendMsgReq(params *api.ManagementSendMsgReq) *pbChat.SendMsgReq {
|
func newUserSendMsgReq(params *api.ManagementSendMsgReq) *pbChat.SendMsgReq {
|
||||||
var newContent string
|
var newContent string
|
||||||
|
options := make(map[string]bool, 5)
|
||||||
var err error
|
var err error
|
||||||
switch params.ContentType {
|
switch params.ContentType {
|
||||||
case constant.Text:
|
case constant.Text:
|
||||||
@ -57,12 +58,13 @@ func newUserSendMsgReq(params *api.ManagementSendMsgReq) *pbChat.SendMsgReq {
|
|||||||
case constant.CustomOnlineOnly:
|
case constant.CustomOnlineOnly:
|
||||||
fallthrough
|
fallthrough
|
||||||
case constant.AdvancedRevoke:
|
case constant.AdvancedRevoke:
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsUnreadCount, false)
|
||||||
newContent = utils.StructToJsonString(params.Content)
|
newContent = utils.StructToJsonString(params.Content)
|
||||||
case constant.Revoke:
|
case constant.Revoke:
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsUnreadCount, false)
|
||||||
newContent = params.Content["revokeMsgClientID"].(string)
|
newContent = params.Content["revokeMsgClientID"].(string)
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
options := make(map[string]bool, 5)
|
|
||||||
if params.IsOnlineOnly {
|
if params.IsOnlineOnly {
|
||||||
SetOptions(options, false)
|
SetOptions(options, false)
|
||||||
}
|
}
|
||||||
|
@ -17,8 +17,8 @@ import (
|
|||||||
|
|
||||||
func SetMessageReactionExtensions(c *gin.Context) {
|
func SetMessageReactionExtensions(c *gin.Context) {
|
||||||
var (
|
var (
|
||||||
req api.SetMessageReactionExtensionsCallbackReq
|
req api.SetMessageReactionExtensionsReq
|
||||||
resp api.SetMessageReactionExtensionsCallbackResp
|
resp api.SetMessageReactionExtensionsResp
|
||||||
reqPb rpc.SetMessageReactionExtensionsReq
|
reqPb rpc.SetMessageReactionExtensionsReq
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ func GetMessageListReactionExtensions(c *gin.Context) {
|
|||||||
reqPb rpc.GetMessageListReactionExtensionsReq
|
reqPb rpc.GetMessageListReactionExtensionsReq
|
||||||
)
|
)
|
||||||
if err := c.BindJSON(&req); err != nil {
|
if err := c.BindJSON(&req); err != nil {
|
||||||
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()})
|
c.JSON(http.StatusOK, gin.H{"errCode": 400, "errMsg": err.Error()})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req:", req)
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req:", req)
|
||||||
@ -86,7 +86,7 @@ func GetMessageListReactionExtensions(c *gin.Context) {
|
|||||||
if !ok {
|
if !ok {
|
||||||
errMsg := req.OperationID + " " + "GetUserIDFromToken failed " + errInfo + " token:" + c.Request.Header.Get("token")
|
errMsg := req.OperationID + " " + "GetUserIDFromToken failed " + errInfo + " token:" + c.Request.Header.Get("token")
|
||||||
log.NewError(req.OperationID, errMsg)
|
log.NewError(req.OperationID, errMsg)
|
||||||
c.JSON(http.StatusBadRequest, gin.H{"errCode": 500, "errMsg": errMsg})
|
c.JSON(http.StatusOK, gin.H{"errCode": 500, "errMsg": errMsg})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,8 +115,9 @@ func AddMessageReactionExtensions(c *gin.Context) {
|
|||||||
var (
|
var (
|
||||||
req api.AddMessageReactionExtensionsReq
|
req api.AddMessageReactionExtensionsReq
|
||||||
resp api.AddMessageReactionExtensionsResp
|
resp api.AddMessageReactionExtensionsResp
|
||||||
reqPb rpc.ModifyMessageReactionExtensionsReq
|
reqPb rpc.AddMessageReactionExtensionsReq
|
||||||
)
|
)
|
||||||
|
|
||||||
if err := c.BindJSON(&req); err != nil {
|
if err := c.BindJSON(&req); err != nil {
|
||||||
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()})
|
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()})
|
||||||
return
|
return
|
||||||
@ -152,6 +153,9 @@ func AddMessageReactionExtensions(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
resp.ErrCode = respPb.ErrCode
|
resp.ErrCode = respPb.ErrCode
|
||||||
resp.ErrMsg = respPb.ErrMsg
|
resp.ErrMsg = respPb.ErrMsg
|
||||||
|
resp.Data.ResultKeyValue = respPb.Result
|
||||||
|
resp.Data.MsgFirstModifyTime = respPb.MsgFirstModifyTime
|
||||||
|
resp.Data.IsReact = respPb.IsReact
|
||||||
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
||||||
c.JSON(http.StatusOK, resp)
|
c.JSON(http.StatusOK, resp)
|
||||||
}
|
}
|
||||||
|
@ -376,7 +376,7 @@ func (r *RPCServer) KickUserOffline(_ context.Context, req *pbRelay.KickUserOffl
|
|||||||
oldConnMap := ws.getUserAllCons(v)
|
oldConnMap := ws.getUserAllCons(v)
|
||||||
if conn, ok := oldConnMap[int(req.PlatformID)]; ok { // user->map[platform->conn]
|
if conn, ok := oldConnMap[int(req.PlatformID)]; ok { // user->map[platform->conn]
|
||||||
log.NewWarn(req.OperationID, "send kick msg, close connection ", req.PlatformID, v)
|
log.NewWarn(req.OperationID, "send kick msg, close connection ", req.PlatformID, v)
|
||||||
ws.sendKickMsg(conn)
|
ws.sendKickMsg(conn, req.OperationID)
|
||||||
conn.Close()
|
conn.Close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -253,7 +253,7 @@ func (ws *WServer) MultiTerminalLoginChecker(uid string, platformID int, newConn
|
|||||||
if oldConnMap, ok := ws.wsUserToConn[uid]; ok { // user->map[platform->conn]
|
if oldConnMap, ok := ws.wsUserToConn[uid]; ok { // user->map[platform->conn]
|
||||||
if oldConn, ok := oldConnMap[platformID]; ok {
|
if oldConn, ok := oldConnMap[platformID]; ok {
|
||||||
log.NewDebug(operationID, uid, platformID, "kick old conn")
|
log.NewDebug(operationID, uid, platformID, "kick old conn")
|
||||||
ws.sendKickMsg(oldConn)
|
ws.sendKickMsg(oldConn, operationID)
|
||||||
m, err := db.DB.GetTokenMapByUidPid(uid, constant.PlatformIDToName(platformID))
|
m, err := db.DB.GetTokenMapByUidPid(uid, constant.PlatformIDToName(platformID))
|
||||||
if err != nil && err != go_redis.Nil {
|
if err != nil && err != go_redis.Nil {
|
||||||
log.NewError(operationID, "get token from redis err", err.Error(), uid, constant.PlatformIDToName(platformID))
|
log.NewError(operationID, "get token from redis err", err.Error(), uid, constant.PlatformIDToName(platformID))
|
||||||
@ -302,11 +302,12 @@ func (ws *WServer) MultiTerminalLoginChecker(uid string, platformID int, newConn
|
|||||||
case constant.WebAndOther:
|
case constant.WebAndOther:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
func (ws *WServer) sendKickMsg(oldConn *UserConn) {
|
func (ws *WServer) sendKickMsg(oldConn *UserConn, operationID string) {
|
||||||
mReply := Resp{
|
mReply := Resp{
|
||||||
ReqIdentifier: constant.WSKickOnlineMsg,
|
ReqIdentifier: constant.WSKickOnlineMsg,
|
||||||
ErrCode: constant.ErrTokenInvalid.ErrCode,
|
ErrCode: constant.ErrTokenInvalid.ErrCode,
|
||||||
ErrMsg: constant.ErrTokenInvalid.ErrMsg,
|
ErrMsg: constant.ErrTokenInvalid.ErrMsg,
|
||||||
|
OperationID: operationID,
|
||||||
}
|
}
|
||||||
var b bytes.Buffer
|
var b bytes.Buffer
|
||||||
enc := gob.NewEncoder(&b)
|
enc := gob.NewEncoder(&b)
|
||||||
|
@ -79,9 +79,6 @@ func MsgToUser(pushMsg *pbPush.PushMsgReq) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if pushMsg.MsgData.ContentType > constant.NotificationBegin && pushMsg.MsgData.ContentType < constant.NotificationEnd && pushMsg.MsgData.ContentType != constant.SignalingNotification {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if pushMsg.MsgData.ContentType == constant.SignalingNotification {
|
if pushMsg.MsgData.ContentType == constant.SignalingNotification {
|
||||||
isSend, err := db.DB.HandleSignalInfo(pushMsg.OperationID, pushMsg.MsgData, pushMsg.PushToUserID)
|
isSend, err := db.DB.HandleSignalInfo(pushMsg.OperationID, pushMsg.MsgData, pushMsg.PushToUserID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -201,9 +198,6 @@ func MsgToSuperGroupUser(pushMsg *pbPush.PushMsgReq) {
|
|||||||
log.Debug(pushMsg.OperationID, "push_result", wsResult, "sendData", pushMsg.MsgData)
|
log.Debug(pushMsg.OperationID, "push_result", wsResult, "sendData", pushMsg.MsgData)
|
||||||
successCount++
|
successCount++
|
||||||
if isOfflinePush {
|
if isOfflinePush {
|
||||||
if pushMsg.MsgData.ContentType > constant.NotificationBegin && pushMsg.MsgData.ContentType < constant.NotificationEnd && pushMsg.MsgData.ContentType != constant.SignalingNotification {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var onlineSuccessUserIDList []string
|
var onlineSuccessUserIDList []string
|
||||||
var WebAndPcBackgroundUserIDList []string
|
var WebAndPcBackgroundUserIDList []string
|
||||||
onlineSuccessUserIDList = append(onlineSuccessUserIDList, pushMsg.MsgData.SendID)
|
onlineSuccessUserIDList = append(onlineSuccessUserIDList, pushMsg.MsgData.SendID)
|
||||||
@ -249,7 +243,17 @@ func MsgToSuperGroupUser(pushMsg *pbPush.PushMsgReq) {
|
|||||||
} else {
|
} else {
|
||||||
needOfflinePushUserIDList = onlineFailedUserIDList
|
needOfflinePushUserIDList = onlineFailedUserIDList
|
||||||
}
|
}
|
||||||
|
if pushMsg.MsgData.ContentType != constant.SignalingNotification {
|
||||||
|
notNotificationUserIDList, err := db.DB.GetSuperGroupUserReceiveNotNotifyMessageIDList(pushMsg.MsgData.GroupID)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), "GetSuperGroupUserReceiveNotNotifyMessageIDList failed", pushMsg.MsgData.GroupID)
|
||||||
|
} else {
|
||||||
|
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), notNotificationUserIDList)
|
||||||
|
}
|
||||||
|
needOfflinePushUserIDList = utils.RemoveFromSlice(notNotificationUserIDList, needOfflinePushUserIDList)
|
||||||
|
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), needOfflinePushUserIDList)
|
||||||
|
|
||||||
|
}
|
||||||
if offlinePusher == nil {
|
if offlinePusher == nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,21 @@ func (rpc *rpcConversation) ModifyConversationField(c context.Context, req *pbCo
|
|||||||
resp.CommonResp = &pbConversation.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
resp.CommonResp = &pbConversation.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
if req.Conversation.ConversationType == constant.SuperGroupChatType {
|
||||||
|
if req.Conversation.RecvMsgOpt == constant.ReceiveNotNotifyMessage {
|
||||||
|
if err = db.DB.SetSuperGroupUserReceiveNotNotifyMessage(req.Conversation.GroupID, v); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), req.Conversation.GroupID, v)
|
||||||
|
resp.CommonResp = &pbConversation.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if err = db.DB.SetSuperGroupUserReceiveNotifyMessage(req.Conversation.GroupID, v); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), req.Conversation.GroupID, v)
|
||||||
|
resp.CommonResp = &pbConversation.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
err = imdb.UpdateColumnsConversations(haveUserID, req.Conversation.ConversationID, map[string]interface{}{"recv_msg_opt": conversation.RecvMsgOpt})
|
err = imdb.UpdateColumnsConversations(haveUserID, req.Conversation.ConversationID, map[string]interface{}{"recv_msg_opt": conversation.RecvMsgOpt})
|
||||||
case constant.FieldGroupAtType:
|
case constant.FieldGroupAtType:
|
||||||
|
@ -743,6 +743,33 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou
|
|||||||
resp.ErrMsg = constant.ErrDB.ErrMsg
|
resp.ErrMsg = constant.ErrDB.ErrMsg
|
||||||
return &resp, nil
|
return &resp, nil
|
||||||
}
|
}
|
||||||
|
if err := rocksCache.DelGroupMemberListHashFromCache(req.GroupID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error())
|
||||||
|
}
|
||||||
|
if err := rocksCache.DelGroupMemberIDListFromCache(req.GroupID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
|
||||||
|
}
|
||||||
|
reqPb := pbConversation.ModifyConversationFieldReq{Conversation: &pbConversation.Conversation{}}
|
||||||
|
reqPb.OperationID = req.OperationID
|
||||||
|
reqPb.UserIDList = okUserIDList
|
||||||
|
reqPb.FieldType = constant.FieldUnread
|
||||||
|
reqPb.Conversation.GroupID = req.GroupID
|
||||||
|
reqPb.Conversation.ConversationID = utils.GetConversationIDBySessionType(req.GroupID, constant.SuperGroupChatType)
|
||||||
|
reqPb.Conversation.ConversationType = int32(constant.SuperGroupChatType)
|
||||||
|
reqPb.Conversation.UpdateUnreadCountTime = utils.GetCurrentTimestampByMill()
|
||||||
|
etcdConn := getcdv3.GetDefaultConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImConversationName, req.OperationID)
|
||||||
|
if etcdConn == nil {
|
||||||
|
errMsg := req.OperationID + "getcdv3.GetDefaultConn == nil"
|
||||||
|
log.NewError(req.OperationID, errMsg)
|
||||||
|
}
|
||||||
|
client := pbConversation.NewConversationClient(etcdConn)
|
||||||
|
respPb, err := client.ModifyConversationField(context.Background(), &reqPb)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "ModifyConversationField rpc failed, ", reqPb.String(), err.Error())
|
||||||
|
} else {
|
||||||
|
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "ModifyConversationField success", respPb.String())
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if groupInfo.GroupType != constant.SuperGroup {
|
if groupInfo.GroupType != constant.SuperGroup {
|
||||||
@ -776,7 +803,15 @@ func (s *groupServer) GetGroupMembersInfo(ctx context.Context, req *pbGroup.GetG
|
|||||||
var resp pbGroup.GetGroupMembersInfoResp
|
var resp pbGroup.GetGroupMembersInfoResp
|
||||||
resp.MemberList = []*open_im_sdk.GroupMemberFullInfo{}
|
resp.MemberList = []*open_im_sdk.GroupMemberFullInfo{}
|
||||||
for _, userID := range req.MemberList {
|
for _, userID := range req.MemberList {
|
||||||
groupMember, err := rocksCache.GetGroupMemberInfoFromCache(req.GroupID, userID)
|
var (
|
||||||
|
groupMember *db.GroupMember
|
||||||
|
err error
|
||||||
|
)
|
||||||
|
if req.NoCache {
|
||||||
|
groupMember, err = imdb.GetGroupMemberInfoByGroupIDAndUserID(req.GroupID, userID)
|
||||||
|
} else {
|
||||||
|
groupMember, err = rocksCache.GetGroupMemberInfoFromCache(req.GroupID, userID)
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, userID, err.Error())
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, userID, err.Error())
|
||||||
continue
|
continue
|
||||||
@ -1301,7 +1336,8 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
|
|||||||
}
|
}
|
||||||
log.NewInfo(req.OperationID, "SetGroupInfo rpc return ", pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{}})
|
log.NewInfo(req.OperationID, "SetGroupInfo rpc return ", pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{}})
|
||||||
if changedType != 0 {
|
if changedType != 0 {
|
||||||
chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupInfoForSet.GroupID, groupName, notification, introduction, faceURL, req.GroupInfoForSet.NeedVerification)
|
chat.GroupInfoSetNotification(req.OperationID, req.OpUserID, req.GroupInfoForSet.GroupID, groupName, notification,
|
||||||
|
introduction, faceURL, req.GroupInfoForSet.NeedVerification, req.GroupInfoForSet.ApplyMemberFriend, req.GroupInfoForSet.LookMemberInfo)
|
||||||
}
|
}
|
||||||
if req.GroupInfoForSet.Notification != "" {
|
if req.GroupInfoForSet.Notification != "" {
|
||||||
//get group member user id
|
//get group member user id
|
||||||
@ -1981,3 +2017,53 @@ func (s *groupServer) DelGroupAndUserCache(operationID, groupID string, userIDLi
|
|||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *groupServer) GroupIsExist(c context.Context, req *pbGroup.GroupIsExistReq) (*pbGroup.GroupIsExistResp, error) {
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
|
||||||
|
resp := &pbGroup.GroupIsExistResp{CommonResp: &pbGroup.CommonResp{}}
|
||||||
|
groups, err := imdb.GetGroupInfoByGroupIDList(req.GroupIDList)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), "args:", req.GroupIDList)
|
||||||
|
resp.CommonResp.ErrMsg = err.Error()
|
||||||
|
resp.CommonResp.ErrCode = constant.ErrDB.ErrCode
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
var m = make(map[string]bool)
|
||||||
|
for _, groupID := range req.GroupIDList {
|
||||||
|
m[groupID] = false
|
||||||
|
for _, group := range groups {
|
||||||
|
if groupID == group.GroupID {
|
||||||
|
m[groupID] = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
resp.IsExistMap = m
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", req.String())
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *groupServer) UserIsInGroup(c context.Context, req *pbGroup.UserIsInGroupReq) (*pbGroup.UserIsInGroupResp, error) {
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
|
||||||
|
resp := &pbGroup.UserIsInGroupResp{}
|
||||||
|
groupMemberList, err := imdb.GetGroupMemberByUserIDList(req.GroupID, req.UserIDList)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), "args:", req.GroupID, req.UserIDList)
|
||||||
|
resp.CommonResp.ErrMsg = err.Error()
|
||||||
|
resp.CommonResp.ErrCode = constant.ErrDB.ErrCode
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
var m = make(map[string]bool)
|
||||||
|
for _, userID := range req.UserIDList {
|
||||||
|
m[userID] = false
|
||||||
|
for _, user := range groupMemberList {
|
||||||
|
if userID == user.UserID {
|
||||||
|
m[userID] = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
resp.IsExistMap = m
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", req.String())
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
@ -5,8 +5,8 @@ import (
|
|||||||
"Open_IM/pkg/common/db"
|
"Open_IM/pkg/common/db"
|
||||||
"Open_IM/pkg/common/log"
|
"Open_IM/pkg/common/log"
|
||||||
"Open_IM/pkg/common/token_verify"
|
"Open_IM/pkg/common/token_verify"
|
||||||
commonPb "Open_IM/pkg/proto/sdk_ws"
|
|
||||||
"Open_IM/pkg/proto/msg"
|
"Open_IM/pkg/proto/msg"
|
||||||
|
commonPb "Open_IM/pkg/proto/sdk_ws"
|
||||||
"Open_IM/pkg/utils"
|
"Open_IM/pkg/utils"
|
||||||
"context"
|
"context"
|
||||||
"time"
|
"time"
|
||||||
|
@ -282,8 +282,50 @@ func (rpc *rpcChat) GetMessageListReactionExtensions(ctx context.Context, req *m
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (rpc *rpcChat) AddMessageReactionExtensions(ctx context.Context, req *msg.ModifyMessageReactionExtensionsReq) (resp *msg.ModifyMessageReactionExtensionsResp, err error) {
|
func (rpc *rpcChat) AddMessageReactionExtensions(ctx context.Context, req *msg.AddMessageReactionExtensionsReq) (resp *msg.AddMessageReactionExtensionsResp, err error) {
|
||||||
return
|
log.Debug(req.OperationID, utils.GetSelfFuncName(), "rpc args is:", req.String())
|
||||||
|
var rResp msg.AddMessageReactionExtensionsResp
|
||||||
|
rResp.ClientMsgID = req.ClientMsgID
|
||||||
|
rResp.MsgFirstModifyTime = req.MsgFirstModifyTime
|
||||||
|
callbackResp := callbackAddMessageReactionExtensions(req)
|
||||||
|
if callbackResp.ActionCode != constant.ActionAllow || callbackResp.ErrCode != 0 {
|
||||||
|
rResp.ErrCode = int32(callbackResp.ErrCode)
|
||||||
|
rResp.ErrMsg = callbackResp.ErrMsg
|
||||||
|
for _, value := range req.ReactionExtensionList {
|
||||||
|
temp := new(msg.KeyValueResp)
|
||||||
|
temp.KeyValue = value
|
||||||
|
temp.ErrMsg = callbackResp.ErrMsg
|
||||||
|
temp.ErrCode = 100
|
||||||
|
rResp.Result = append(rResp.Result, temp)
|
||||||
|
}
|
||||||
|
return &rResp, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
//if !req.IsExternalExtensions {
|
||||||
|
// rResp.ErrCode = 200
|
||||||
|
// rResp.ErrMsg = "only extenalextensions message can be used"
|
||||||
|
// for _, value := range req.ReactionExtensionList {
|
||||||
|
// temp := new(msg.KeyValueResp)
|
||||||
|
// temp.KeyValue = value
|
||||||
|
// temp.ErrMsg = callbackResp.ErrMsg
|
||||||
|
// temp.ErrCode = 100
|
||||||
|
// rResp.Result = append(rResp.Result, temp)
|
||||||
|
// }
|
||||||
|
// return &rResp, nil
|
||||||
|
//}
|
||||||
|
//if ExternalExtension
|
||||||
|
var isHistory bool
|
||||||
|
if req.IsReact {
|
||||||
|
isHistory = false
|
||||||
|
} else {
|
||||||
|
isHistory = true
|
||||||
|
}
|
||||||
|
rResp.MsgFirstModifyTime = callbackResp.MsgFirstModifyTime
|
||||||
|
rResp.Result = callbackResp.ResultReactionExtensionList
|
||||||
|
rResp.IsReact = callbackResp.IsReact
|
||||||
|
ExtendMessageAddedNotification(req.OperationID, req.OpUserID, req.SourceID, req.SessionType, req, &rResp, isHistory, false)
|
||||||
|
log.Debug(req.OperationID, utils.GetSelfFuncName(), "rpc return is:", resp.String())
|
||||||
|
return &rResp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (rpc *rpcChat) DeleteMessageReactionExtensions(ctx context.Context, req *msg.DeleteMessageListReactionExtensionsReq) (resp *msg.DeleteMessageListReactionExtensionsResp, err error) {
|
func (rpc *rpcChat) DeleteMessageReactionExtensions(ctx context.Context, req *msg.DeleteMessageListReactionExtensionsReq) (resp *msg.DeleteMessageListReactionExtensionsResp, err error) {
|
||||||
|
@ -18,6 +18,31 @@ func ExtendMessageUpdatedNotification(operationID, sendID string, sourceID strin
|
|||||||
var m base_info.ReactionMessageModifierNotification
|
var m base_info.ReactionMessageModifierNotification
|
||||||
m.SourceID = req.SourceID
|
m.SourceID = req.SourceID
|
||||||
m.OpUserID = req.OpUserID
|
m.OpUserID = req.OpUserID
|
||||||
|
m.Operation = constant.SetMessageExtensions
|
||||||
|
m.SessionType = req.SessionType
|
||||||
|
keyMap := make(map[string]*open_im_sdk.KeyValue)
|
||||||
|
for _, valueResp := range resp.Result {
|
||||||
|
if valueResp.ErrCode == 0 {
|
||||||
|
keyMap[valueResp.KeyValue.TypeKey] = valueResp.KeyValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if len(keyMap) == 0 {
|
||||||
|
log.NewWarn(operationID, "all key set failed can not send notification", *req)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
m.SuccessReactionExtensionList = keyMap
|
||||||
|
m.ClientMsgID = req.ClientMsgID
|
||||||
|
m.IsReact = resp.IsReact
|
||||||
|
m.IsExternalExtensions = req.IsExternalExtensions
|
||||||
|
m.MsgFirstModifyTime = resp.MsgFirstModifyTime
|
||||||
|
messageReactionSender(operationID, sendID, sourceID, sessionType, constant.ReactionMessageModifier, utils.StructToJsonString(m), isHistory, isReactionFromCache)
|
||||||
|
}
|
||||||
|
func ExtendMessageAddedNotification(operationID, sendID string, sourceID string, sessionType int32,
|
||||||
|
req *msg.AddMessageReactionExtensionsReq, resp *msg.AddMessageReactionExtensionsResp, isHistory bool, isReactionFromCache bool) {
|
||||||
|
var m base_info.ReactionMessageModifierNotification
|
||||||
|
m.SourceID = req.SourceID
|
||||||
|
m.OpUserID = req.OpUserID
|
||||||
|
m.Operation = constant.AddMessageExtensions
|
||||||
m.SessionType = req.SessionType
|
m.SessionType = req.SessionType
|
||||||
keyMap := make(map[string]*open_im_sdk.KeyValue)
|
keyMap := make(map[string]*open_im_sdk.KeyValue)
|
||||||
for _, valueResp := range resp.Result {
|
for _, valueResp := range resp.Result {
|
||||||
|
@ -58,22 +58,47 @@ func callbackDeleteMessageReactionExtensions(setReq *msg.DeleteMessageListReacti
|
|||||||
}
|
}
|
||||||
return resp
|
return resp
|
||||||
}
|
}
|
||||||
func callbackGetMessageListReactionExtensions(setReq *msg.GetMessageListReactionExtensionsReq) *cbApi.CallbackGetMessageListReactionExtResp {
|
func callbackGetMessageListReactionExtensions(getReq *msg.GetMessageListReactionExtensionsReq) *cbApi.CallbackGetMessageListReactionExtResp {
|
||||||
callbackResp := cbApi.CommonCallbackResp{OperationID: setReq.OperationID}
|
callbackResp := cbApi.CommonCallbackResp{OperationID: getReq.OperationID}
|
||||||
log.NewDebug(setReq.OperationID, utils.GetSelfFuncName(), setReq.String())
|
log.NewDebug(getReq.OperationID, utils.GetSelfFuncName(), getReq.String())
|
||||||
req := cbApi.CallbackGetMessageListReactionExtReq{
|
req := cbApi.CallbackGetMessageListReactionExtReq{
|
||||||
OperationID: setReq.OperationID,
|
OperationID: getReq.OperationID,
|
||||||
CallbackCommand: constant.CallbackGetMessageListReactionExtensionsCommand,
|
CallbackCommand: constant.CallbackGetMessageListReactionExtensionsCommand,
|
||||||
SourceID: setReq.SourceID,
|
SourceID: getReq.SourceID,
|
||||||
OpUserID: setReq.OpUserID,
|
OpUserID: getReq.OpUserID,
|
||||||
SessionType: setReq.SessionType,
|
SessionType: getReq.SessionType,
|
||||||
MessageKeyList: setReq.MessageReactionKeyList,
|
TypeKeyList: getReq.TypeKeyList,
|
||||||
|
MessageKeyList: getReq.MessageReactionKeyList,
|
||||||
}
|
}
|
||||||
resp := &cbApi.CallbackGetMessageListReactionExtResp{CommonCallbackResp: &callbackResp}
|
resp := &cbApi.CallbackGetMessageListReactionExtResp{CommonCallbackResp: &callbackResp}
|
||||||
defer log.NewDebug(setReq.OperationID, utils.GetSelfFuncName(), req, *resp)
|
defer log.NewDebug(getReq.OperationID, utils.GetSelfFuncName(), req, *resp)
|
||||||
if err := http.CallBackPostReturn(config.Config.Callback.CallbackUrl, constant.CallbackGetMessageListReactionExtensionsCommand, req, resp, config.Config.Callback.CallbackAfterSendGroupMsg.CallbackTimeOut); err != nil {
|
if err := http.CallBackPostReturn(config.Config.Callback.CallbackUrl, constant.CallbackGetMessageListReactionExtensionsCommand, req, resp, config.Config.Callback.CallbackAfterSendGroupMsg.CallbackTimeOut); err != nil {
|
||||||
callbackResp.ErrCode = http2.StatusInternalServerError
|
callbackResp.ErrCode = http2.StatusInternalServerError
|
||||||
callbackResp.ErrMsg = err.Error()
|
callbackResp.ErrMsg = err.Error()
|
||||||
}
|
}
|
||||||
return resp
|
return resp
|
||||||
}
|
}
|
||||||
|
func callbackAddMessageReactionExtensions(setReq *msg.AddMessageReactionExtensionsReq) *cbApi.CallbackAddMessageReactionExtResp {
|
||||||
|
callbackResp := cbApi.CommonCallbackResp{OperationID: setReq.OperationID}
|
||||||
|
log.NewDebug(setReq.OperationID, utils.GetSelfFuncName(), setReq.String())
|
||||||
|
req := cbApi.CallbackAddMessageReactionExtReq{
|
||||||
|
OperationID: setReq.OperationID,
|
||||||
|
CallbackCommand: constant.CallbackAddMessageListReactionExtensionsCommand,
|
||||||
|
SourceID: setReq.SourceID,
|
||||||
|
OpUserID: setReq.OpUserID,
|
||||||
|
SessionType: setReq.SessionType,
|
||||||
|
ReactionExtensionList: setReq.ReactionExtensionList,
|
||||||
|
ClientMsgID: setReq.ClientMsgID,
|
||||||
|
IsReact: setReq.IsReact,
|
||||||
|
IsExternalExtensions: setReq.IsExternalExtensions,
|
||||||
|
MsgFirstModifyTime: setReq.MsgFirstModifyTime,
|
||||||
|
}
|
||||||
|
resp := &cbApi.CallbackAddMessageReactionExtResp{CommonCallbackResp: &callbackResp}
|
||||||
|
defer log.NewDebug(setReq.OperationID, utils.GetSelfFuncName(), req, *resp, *resp.CommonCallbackResp, resp.IsReact, resp.MsgFirstModifyTime)
|
||||||
|
if err := http.CallBackPostReturn(config.Config.Callback.CallbackUrl, constant.CallbackAddMessageListReactionExtensionsCommand, req, resp, config.Config.Callback.CallbackAfterSendGroupMsg.CallbackTimeOut); err != nil {
|
||||||
|
callbackResp.ErrCode = http2.StatusInternalServerError
|
||||||
|
callbackResp.ErrMsg = err.Error()
|
||||||
|
}
|
||||||
|
return resp
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -245,12 +245,15 @@ func GroupCreatedNotification(operationID, opUserID, groupID string, initMemberL
|
|||||||
// notification := ""
|
// notification := ""
|
||||||
// introduction := ""
|
// introduction := ""
|
||||||
// faceURL := ""
|
// faceURL := ""
|
||||||
func GroupInfoSetNotification(operationID, opUserID, groupID string, groupName, notification, introduction, faceURL string, needVerification *wrapperspb.Int32Value) {
|
func GroupInfoSetNotification(operationID, opUserID, groupID string, groupName, notification, introduction, faceURL string, needVerification, applyMemberFriend, lookMemberInfo *wrapperspb.Int32Value) {
|
||||||
GroupInfoChangedTips := open_im_sdk.GroupInfoSetTips{Group: &open_im_sdk.GroupInfo{}, OpUser: &open_im_sdk.GroupMemberFullInfo{}}
|
GroupInfoChangedTips := open_im_sdk.GroupInfoSetTips{Group: &open_im_sdk.GroupInfo{}, OpUser: &open_im_sdk.GroupMemberFullInfo{}}
|
||||||
if err := setGroupInfo(groupID, GroupInfoChangedTips.Group); err != nil {
|
if err := setGroupInfo(groupID, GroupInfoChangedTips.Group); err != nil {
|
||||||
log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID)
|
log.Error(operationID, "setGroupInfo failed ", err.Error(), groupID)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
GroupInfoChangedTips.Group.NeedVerification = 0
|
||||||
|
GroupInfoChangedTips.Group.LookMemberInfo = 0
|
||||||
|
GroupInfoChangedTips.Group.ApplyMemberFriend = 0
|
||||||
GroupInfoChangedTips.Group.GroupName = groupName
|
GroupInfoChangedTips.Group.GroupName = groupName
|
||||||
GroupInfoChangedTips.Group.Notification = notification
|
GroupInfoChangedTips.Group.Notification = notification
|
||||||
GroupInfoChangedTips.Group.Introduction = introduction
|
GroupInfoChangedTips.Group.Introduction = introduction
|
||||||
@ -258,6 +261,12 @@ func GroupInfoSetNotification(operationID, opUserID, groupID string, groupName,
|
|||||||
if needVerification != nil {
|
if needVerification != nil {
|
||||||
GroupInfoChangedTips.Group.NeedVerification = needVerification.Value
|
GroupInfoChangedTips.Group.NeedVerification = needVerification.Value
|
||||||
}
|
}
|
||||||
|
if applyMemberFriend != nil {
|
||||||
|
GroupInfoChangedTips.Group.ApplyMemberFriend = applyMemberFriend.Value
|
||||||
|
}
|
||||||
|
if lookMemberInfo != nil {
|
||||||
|
GroupInfoChangedTips.Group.LookMemberInfo = lookMemberInfo.Value
|
||||||
|
}
|
||||||
|
|
||||||
if err := setOpUserInfo(opUserID, groupID, GroupInfoChangedTips.OpUser); err != nil {
|
if err := setOpUserInfo(opUserID, groupID, GroupInfoChangedTips.OpUser); err != nil {
|
||||||
log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID)
|
log.Error(operationID, "setOpUserInfo failed ", err.Error(), opUserID, groupID)
|
||||||
|
@ -145,14 +145,9 @@ func (rpc *rpcChat) runCh() {
|
|||||||
select {
|
select {
|
||||||
case msg := <-rpc.delMsgCh:
|
case msg := <-rpc.delMsgCh:
|
||||||
log.NewInfo(msg.OperationID, utils.GetSelfFuncName(), "delmsgch recv new: ", msg)
|
log.NewInfo(msg.OperationID, utils.GetSelfFuncName(), "delmsgch recv new: ", msg)
|
||||||
|
if len(msg.SeqList) > 0 {
|
||||||
db.DB.DelMsgFromCache(msg.UserID, msg.SeqList, msg.OperationID)
|
db.DB.DelMsgFromCache(msg.UserID, msg.SeqList, msg.OperationID)
|
||||||
unexistSeqList, err := db.DB.DelMsgBySeqList(msg.UserID, msg.SeqList, msg.OperationID)
|
DeleteMessageNotification(msg.OpUserID, msg.UserID, msg.SeqList, msg.OperationID)
|
||||||
if err != nil {
|
|
||||||
log.NewError(msg.OperationID, utils.GetSelfFuncName(), "DelMsgBySeqList args: ", msg.UserID, msg.SeqList, msg.OperationID, err.Error())
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
if len(unexistSeqList) > 0 {
|
|
||||||
DeleteMessageNotification(msg.OpUserID, msg.UserID, unexistSeqList, msg.OperationID)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,7 @@ func SuperGroupNotification(operationID, sendID, recvID string) {
|
|||||||
SessionType: constant.SingleChatType,
|
SessionType: constant.SingleChatType,
|
||||||
OperationID: operationID,
|
OperationID: operationID,
|
||||||
}
|
}
|
||||||
|
|
||||||
log.NewInfo(operationID, utils.GetSelfFuncName(), string(n.Content))
|
log.NewInfo(operationID, utils.GetSelfFuncName(), string(n.Content))
|
||||||
Notification(n)
|
Notification(n)
|
||||||
}
|
}
|
||||||
|
@ -163,6 +163,22 @@ func (s *userServer) BatchSetConversations(ctx context.Context, req *pbUser.Batc
|
|||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if v.ConversationType == constant.SuperGroupChatType {
|
||||||
|
if v.RecvMsgOpt == constant.ReceiveNotNotifyMessage {
|
||||||
|
if err := db.DB.SetSuperGroupUserReceiveNotNotifyMessage(v.GroupID, v.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), v.GroupID, v.OwnerUserID)
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: err.Error()}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if err := db.DB.SetSuperGroupUserReceiveNotifyMessage(v.GroupID, v.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), v.GroupID, err.Error())
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: err.Error()}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
isUpdate, err := imdb.SetConversation(conversation)
|
isUpdate, err := imdb.SetConversation(conversation)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetConversation error", err.Error())
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "SetConversation error", err.Error())
|
||||||
@ -251,7 +267,7 @@ func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConvers
|
|||||||
if req.NotificationType == 0 {
|
if req.NotificationType == 0 {
|
||||||
req.NotificationType = constant.ConversationOptChangeNotification
|
req.NotificationType = constant.ConversationOptChangeNotification
|
||||||
}
|
}
|
||||||
if req.Conversation.ConversationType == constant.GroupChatType {
|
if req.Conversation.ConversationType == constant.GroupChatType || req.Conversation.ConversationType == constant.SuperGroupChatType {
|
||||||
groupInfo, err := imdb.GetGroupInfoByGroupID(req.Conversation.GroupID)
|
groupInfo, err := imdb.GetGroupInfoByGroupID(req.Conversation.GroupID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "GetGroupInfoByGroupID failed ", req.Conversation.GroupID, err.Error())
|
log.NewError(req.OperationID, "GetGroupInfoByGroupID failed ", req.Conversation.GroupID, err.Error())
|
||||||
@ -264,7 +280,24 @@ func (s *userServer) SetConversation(ctx context.Context, req *pbUser.SetConvers
|
|||||||
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: errMsg}
|
||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if req.Conversation.ConversationType == constant.SuperGroupChatType {
|
||||||
|
if req.Conversation.RecvMsgOpt == constant.ReceiveNotNotifyMessage {
|
||||||
|
if err = db.DB.SetSuperGroupUserReceiveNotNotifyMessage(req.Conversation.GroupID, req.Conversation.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), req.Conversation.GroupID, req.Conversation.OwnerUserID)
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: err.Error()}
|
||||||
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
if err = db.DB.SetSuperGroupUserReceiveNotifyMessage(req.Conversation.GroupID, req.Conversation.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), req.Conversation.GroupID, err.Error())
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: err.Error()}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var conversation db.Conversation
|
var conversation db.Conversation
|
||||||
if err := utils.CopyStructFields(&conversation, req.Conversation); err != nil {
|
if err := utils.CopyStructFields(&conversation, req.Conversation); err != nil {
|
||||||
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", *req.Conversation, err.Error())
|
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", *req.Conversation, err.Error())
|
||||||
@ -326,6 +359,21 @@ func (s *userServer) SetRecvMsgOpt(ctx context.Context, req *pbUser.SetRecvMsgOp
|
|||||||
case "group":
|
case "group":
|
||||||
conversation.GroupID = stringList[1]
|
conversation.GroupID = stringList[1]
|
||||||
conversation.ConversationType = constant.GroupChatType
|
conversation.ConversationType = constant.GroupChatType
|
||||||
|
case "super_group":
|
||||||
|
conversation.GroupID = stringList[1]
|
||||||
|
if req.RecvMsgOpt == constant.ReceiveNotNotifyMessage {
|
||||||
|
if err := db.DB.SetSuperGroupUserReceiveNotNotifyMessage(conversation.GroupID, req.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), conversation.GroupID, req.OwnerUserID)
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if err := db.DB.SetSuperGroupUserReceiveNotifyMessage(conversation.GroupID, req.OwnerUserID); err != nil {
|
||||||
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "cache failed, rpc return", err.Error(), conversation.GroupID, req.OwnerUserID)
|
||||||
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
isUpdate, err := imdb.SetRecvMsgOpt(conversation)
|
isUpdate, err := imdb.SetRecvMsgOpt(conversation)
|
||||||
@ -334,6 +382,7 @@ func (s *userServer) SetRecvMsgOpt(ctx context.Context, req *pbUser.SetRecvMsgOp
|
|||||||
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
resp.CommonResp = &pbUser.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
|
||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if isUpdate {
|
if isUpdate {
|
||||||
err = rocksCache.DelConversationFromCache(conversation.OwnerUserID, conversation.ConversationID)
|
err = rocksCache.DelConversationFromCache(conversation.OwnerUserID, conversation.ConversationID)
|
||||||
} else {
|
} else {
|
||||||
|
@ -29,6 +29,7 @@ type GetGroupMembersInfoReq struct {
|
|||||||
GroupID string `json:"groupID" binding:"required"`
|
GroupID string `json:"groupID" binding:"required"`
|
||||||
MemberList []string `json:"memberList" binding:"required"`
|
MemberList []string `json:"memberList" binding:"required"`
|
||||||
OperationID string `json:"operationID" binding:"required"`
|
OperationID string `json:"operationID" binding:"required"`
|
||||||
|
NoCache bool `json:"noCache"`
|
||||||
}
|
}
|
||||||
type GetGroupMembersInfoResp struct {
|
type GetGroupMembersInfoResp struct {
|
||||||
CommResp
|
CommResp
|
||||||
|
@ -78,8 +78,9 @@ type ModifyMessageReactionExtensionsResp struct {
|
|||||||
type OperateMessageListReactionExtensionsReq struct {
|
type OperateMessageListReactionExtensionsReq struct {
|
||||||
OperationID string `json:"operationID" binding:"required"`
|
OperationID string `json:"operationID" binding:"required"`
|
||||||
SourceID string `json:"sourceID" binding:"required"`
|
SourceID string `json:"sourceID" binding:"required"`
|
||||||
SessionType string `json:"sessionType" binding:"required"`
|
SessionType int32 `json:"sessionType" binding:"required"`
|
||||||
IsExternalExtensions bool `json:"isExternalExtensions"`
|
IsExternalExtensions bool `json:"isExternalExtensions"`
|
||||||
|
TypeKeyList []string `json:"typeKeyList"`
|
||||||
MessageReactionKeyList []*msg.GetMessageListReactionExtensionsReq_MessageReactionKey `json:"messageReactionKeyList" binding:"required"`
|
MessageReactionKeyList []*msg.GetMessageListReactionExtensionsReq_MessageReactionKey `json:"messageReactionKeyList" binding:"required"`
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,10 +92,13 @@ type OperateMessageListReactionExtensionsResp struct {
|
|||||||
} `json:"data"`
|
} `json:"data"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type SetMessageReactionExtensionsCallbackReq ModifyMessageReactionExtensionsReq
|
type SetMessageReactionExtensionsReq ModifyMessageReactionExtensionsReq
|
||||||
|
|
||||||
type SetMessageReactionExtensionsCallbackResp ModifyMessageReactionExtensionsResp
|
type SetMessageReactionExtensionsResp ModifyMessageReactionExtensionsResp
|
||||||
|
|
||||||
|
type AddMessageReactionExtensionsReq ModifyMessageReactionExtensionsReq
|
||||||
|
|
||||||
|
type AddMessageReactionExtensionsResp ModifyMessageReactionExtensionsResp
|
||||||
type GetMessageListReactionExtensionsReq OperateMessageListReactionExtensionsReq
|
type GetMessageListReactionExtensionsReq OperateMessageListReactionExtensionsReq
|
||||||
|
|
||||||
type GetMessageListReactionExtensionsResp struct {
|
type GetMessageListReactionExtensionsResp struct {
|
||||||
@ -102,10 +106,6 @@ type GetMessageListReactionExtensionsResp struct {
|
|||||||
Data []*msg.SingleMessageExtensionResult `json:"data"`
|
Data []*msg.SingleMessageExtensionResult `json:"data"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type AddMessageReactionExtensionsReq ModifyMessageReactionExtensionsReq
|
|
||||||
|
|
||||||
type AddMessageReactionExtensionsResp ModifyMessageReactionExtensionsResp
|
|
||||||
|
|
||||||
type DeleteMessageReactionExtensionsReq struct {
|
type DeleteMessageReactionExtensionsReq struct {
|
||||||
OperationID string `json:"operationID" binding:"required"`
|
OperationID string `json:"operationID" binding:"required"`
|
||||||
SourceID string `json:"sourceID" binding:"required"`
|
SourceID string `json:"sourceID" binding:"required"`
|
||||||
@ -122,6 +122,7 @@ type DeleteMessageReactionExtensionsResp struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type ReactionMessageModifierNotification struct {
|
type ReactionMessageModifierNotification struct {
|
||||||
|
Operation int `json:"operation" binding:"required"`
|
||||||
SourceID string `json:"sourceID" binding:"required"`
|
SourceID string `json:"sourceID" binding:"required"`
|
||||||
OpUserID string `json:"opUserID" binding:"required"`
|
OpUserID string `json:"opUserID" binding:"required"`
|
||||||
SessionType int32 `json:"sessionType" binding:"required"`
|
SessionType int32 `json:"sessionType" binding:"required"`
|
||||||
|
@ -105,9 +105,29 @@ type CallbackGetMessageListReactionExtReq struct {
|
|||||||
SourceID string `json:"sourceID"`
|
SourceID string `json:"sourceID"`
|
||||||
OpUserID string `json:"opUserID"`
|
OpUserID string `json:"opUserID"`
|
||||||
SessionType int32 `json:"sessionType"`
|
SessionType int32 `json:"sessionType"`
|
||||||
|
TypeKeyList []string `json:"typeKeyList"`
|
||||||
MessageKeyList []*msg.GetMessageListReactionExtensionsReq_MessageReactionKey `json:"messageKeyList"`
|
MessageKeyList []*msg.GetMessageListReactionExtensionsReq_MessageReactionKey `json:"messageKeyList"`
|
||||||
}
|
}
|
||||||
type CallbackGetMessageListReactionExtResp struct {
|
type CallbackGetMessageListReactionExtResp struct {
|
||||||
*CommonCallbackResp
|
*CommonCallbackResp
|
||||||
MessageResultList []*msg.SingleMessageExtensionResult `json:"messageResultList"`
|
MessageResultList []*msg.SingleMessageExtensionResult `json:"messageResultList"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CallbackAddMessageReactionExtReq struct {
|
||||||
|
OperationID string `json:"operationID"`
|
||||||
|
CallbackCommand string `json:"callbackCommand"`
|
||||||
|
SourceID string `json:"sourceID"`
|
||||||
|
OpUserID string `json:"opUserID"`
|
||||||
|
SessionType int32 `json:"sessionType"`
|
||||||
|
ReactionExtensionList map[string]*sdk_ws.KeyValue `json:"reactionExtensionList"`
|
||||||
|
ClientMsgID string `json:"clientMsgID"`
|
||||||
|
IsReact bool `json:"isReact"`
|
||||||
|
IsExternalExtensions bool `json:"isExternalExtensions"`
|
||||||
|
MsgFirstModifyTime int64 `json:"msgFirstModifyTime"`
|
||||||
|
}
|
||||||
|
type CallbackAddMessageReactionExtResp struct {
|
||||||
|
*CommonCallbackResp
|
||||||
|
ResultReactionExtensionList []*msg.KeyValueResp `json:"resultReactionExtensionList"`
|
||||||
|
IsReact bool `json:"isReact"`
|
||||||
|
MsgFirstModifyTime int64 `json:"msgFirstModifyTime"`
|
||||||
|
}
|
||||||
|
@ -223,6 +223,10 @@ const (
|
|||||||
CallbackBeforeSetMessageReactionExtensionCommand = "callbackBeforeSetMessageReactionExtensionCommand"
|
CallbackBeforeSetMessageReactionExtensionCommand = "callbackBeforeSetMessageReactionExtensionCommand"
|
||||||
CallbackBeforeDeleteMessageReactionExtensionsCommand = "callbackBeforeDeleteMessageReactionExtensionsCommand"
|
CallbackBeforeDeleteMessageReactionExtensionsCommand = "callbackBeforeDeleteMessageReactionExtensionsCommand"
|
||||||
CallbackGetMessageListReactionExtensionsCommand = "callbackGetMessageListReactionExtensionsCommand"
|
CallbackGetMessageListReactionExtensionsCommand = "callbackGetMessageListReactionExtensionsCommand"
|
||||||
|
CallbackAddMessageListReactionExtensionsCommand = "callbackAddMessageListReactionExtensionsCommand"
|
||||||
|
|
||||||
|
SetMessageExtensions = 1
|
||||||
|
AddMessageExtensions = 2
|
||||||
|
|
||||||
//callback actionCode
|
//callback actionCode
|
||||||
ActionAllow = 0
|
ActionAllow = 0
|
||||||
|
@ -40,6 +40,9 @@ const (
|
|||||||
sendMsgFailedFlag = "SEND_MSG_FAILED_FLAG:"
|
sendMsgFailedFlag = "SEND_MSG_FAILED_FLAG:"
|
||||||
userBadgeUnreadCountSum = "USER_BADGE_UNREAD_COUNT_SUM:"
|
userBadgeUnreadCountSum = "USER_BADGE_UNREAD_COUNT_SUM:"
|
||||||
exTypeKeyLocker = "EX_LOCK:"
|
exTypeKeyLocker = "EX_LOCK:"
|
||||||
|
|
||||||
|
//temp
|
||||||
|
superGroupUserNotRecvOfflineMsgOptTemp = "SG_RECV_MSG_OPT_TEMP:"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (d *DataBases) JudgeAccountEXISTS(account string) (bool, error) {
|
func (d *DataBases) JudgeAccountEXISTS(account string) (bool, error) {
|
||||||
@ -164,6 +167,23 @@ func (d *DataBases) GetSingleConversationRecvMsgOpt(userID, conversationID strin
|
|||||||
result, err := d.RDB.HGet(context.Background(), key, conversationID).Result()
|
result, err := d.RDB.HGet(context.Background(), key, conversationID).Result()
|
||||||
return utils.StringToInt(result), err
|
return utils.StringToInt(result), err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (d *DataBases) SetSuperGroupUserReceiveNotNotifyMessage(groupID, userID string) error {
|
||||||
|
key := superGroupUserNotRecvOfflineMsgOptTemp + groupID
|
||||||
|
return d.RDB.SAdd(context.Background(), key, userID).Err()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (d *DataBases) SetSuperGroupUserReceiveNotifyMessage(groupID, userID string) error {
|
||||||
|
key := superGroupUserNotRecvOfflineMsgOptTemp + groupID
|
||||||
|
return d.RDB.SRem(context.Background(), key, userID).Err()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (d *DataBases) GetSuperGroupUserReceiveNotNotifyMessageIDList(groupID string) ([]string, error) {
|
||||||
|
key := superGroupUserNotRecvOfflineMsgOptTemp + groupID
|
||||||
|
userIDs, _ := d.RDB.SMembers(context.Background(), key).Result()
|
||||||
|
return userIDs, nil
|
||||||
|
}
|
||||||
|
|
||||||
func (d *DataBases) SetUserGlobalMsgRecvOpt(userID string, opt int32) error {
|
func (d *DataBases) SetUserGlobalMsgRecvOpt(userID string, opt int32) error {
|
||||||
key := conversationReceiveMessageOpt + userID
|
key := conversationReceiveMessageOpt + userID
|
||||||
return d.RDB.HSet(context.Background(), key, GlobalMsgRecvOpt, opt).Err()
|
return d.RDB.HSet(context.Background(), key, GlobalMsgRecvOpt, opt).Err()
|
||||||
@ -374,7 +394,7 @@ func (d *DataBases) DelMsgFromCache(uid string, seqList []uint32, operationID st
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
var msg pbCommon.MsgData
|
var msg pbCommon.MsgData
|
||||||
if err := utils.String2Pb(result, &msg); err != nil {
|
if err := jsonpb.UnmarshalString(result, &msg); err != nil {
|
||||||
log2.Error(operationID, utils.GetSelfFuncName(), "String2Pb failed", msg, result, key, err.Error())
|
log2.Error(operationID, utils.GetSelfFuncName(), "String2Pb failed", msg, result, key, err.Error())
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
@ -94,7 +94,7 @@ func (d *DataBases) GetMinSeqFromMongo2(uid string) (MinSeq uint32, err error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// deleteMsgByLogic
|
// deleteMsgByLogic
|
||||||
func (d *DataBases) DelMsgBySeqList(userID string, seqList []uint32, operationID string) (totalUnexistSeqList []uint32, err error) {
|
func (d *DataBases) DelMsgBySeqList(userID string, seqList []uint32, operationID string) (totalUnExistSeqList []uint32, err error) {
|
||||||
log.Debug(operationID, utils.GetSelfFuncName(), "args ", userID, seqList)
|
log.Debug(operationID, utils.GetSelfFuncName(), "args ", userID, seqList)
|
||||||
sortkeys.Uint32s(seqList)
|
sortkeys.Uint32s(seqList)
|
||||||
suffixUserID2SubSeqList := func(uid string, seqList []uint32) map[string][]uint32 {
|
suffixUserID2SubSeqList := func(uid string, seqList []uint32) map[string][]uint32 {
|
||||||
@ -123,11 +123,11 @@ func (d *DataBases) DelMsgBySeqList(userID string, seqList []uint32, operationID
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
lock.Lock()
|
lock.Lock()
|
||||||
totalUnexistSeqList = append(totalUnexistSeqList, unexistSeqList...)
|
totalUnExistSeqList = append(totalUnExistSeqList, unexistSeqList...)
|
||||||
lock.Unlock()
|
lock.Unlock()
|
||||||
}(k, v, operationID)
|
}(k, v, operationID)
|
||||||
}
|
}
|
||||||
return totalUnexistSeqList, err
|
return totalUnExistSeqList, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (d *DataBases) DelMsgBySeqListInOneDoc(suffixUserID string, seqList []uint32, operationID string) ([]uint32, error) {
|
func (d *DataBases) DelMsgBySeqListInOneDoc(suffixUserID string, seqList []uint32, operationID string) ([]uint32, error) {
|
||||||
|
@ -74,6 +74,12 @@ func GetGroupMemberIDListByGroupID(groupID string) ([]string, error) {
|
|||||||
return groupMemberIDList, nil
|
return groupMemberIDList, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetGroupMemberByUserIDList(groupID string, userIDList []string) ([]*db.GroupMember, error) {
|
||||||
|
var groupMemberList []*db.GroupMember
|
||||||
|
err := db.DB.MysqlDB.DefaultGormDB().Table("group_members").Where("group_id=? and user_id in (?)", groupID, userIDList).Find(&groupMemberList).Error
|
||||||
|
return groupMemberList, err
|
||||||
|
}
|
||||||
|
|
||||||
func GetGroupMemberListByGroupIDAndRoleLevel(groupID string, roleLevel int32) ([]db.GroupMember, error) {
|
func GetGroupMemberListByGroupIDAndRoleLevel(groupID string, roleLevel int32) ([]db.GroupMember, error) {
|
||||||
var groupMemberList []db.GroupMember
|
var groupMemberList []db.GroupMember
|
||||||
err := db.DB.MysqlDB.DefaultGormDB().Table("group_members").Where("group_id=? and role_level=?", groupID, roleLevel).Find(&groupMemberList).Error
|
err := db.DB.MysqlDB.DefaultGormDB().Table("group_members").Where("group_id=? and role_level=?", groupID, roleLevel).Find(&groupMemberList).Error
|
||||||
|
@ -44,6 +44,12 @@ func GetGroupInfoByGroupID(groupID string) (*db.Group, error) {
|
|||||||
return &groupInfo, err
|
return &groupInfo, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetGroupInfoByGroupIDList(groupIDList []string) ([]*db.Group, error) {
|
||||||
|
var groupInfoList []*db.Group
|
||||||
|
err := db.DB.MysqlDB.DefaultGormDB().Table("groups").Where("group_id in (?)", groupIDList).Find(&groupIDList).Error
|
||||||
|
return groupInfoList, err
|
||||||
|
}
|
||||||
|
|
||||||
func SetGroupInfo(groupInfo db.Group) error {
|
func SetGroupInfo(groupInfo db.Group) error {
|
||||||
return db.DB.MysqlDB.DefaultGormDB().Table("groups").Where("group_id=?", groupInfo.GroupID).Updates(&groupInfo).Error
|
return db.DB.MysqlDB.DefaultGormDB().Table("groups").Where("group_id=?", groupInfo.GroupID).Updates(&groupInfo).Error
|
||||||
}
|
}
|
||||||
|
@ -145,40 +145,6 @@ func DelJoinedGroupIDListFromCache(userID string) error {
|
|||||||
return db.DB.Rc.TagAsDeleted(joinedGroupListCache + userID)
|
return db.DB.Rc.TagAsDeleted(joinedGroupListCache + userID)
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetGroupMemberIDListFromCache(groupID string) ([]string, error) {
|
|
||||||
f := func() (string, error) {
|
|
||||||
groupInfo, err := GetGroupInfoFromCache(groupID)
|
|
||||||
if err != nil {
|
|
||||||
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)
|
|
||||||
if err != nil {
|
|
||||||
return "", utils.Wrap(err, "")
|
|
||||||
}
|
|
||||||
return string(bytes), nil
|
|
||||||
}
|
|
||||||
groupIDListStr, err := db.DB.Rc.Fetch(groupCache+groupID, time.Second*30*60, f)
|
|
||||||
if err != nil {
|
|
||||||
return nil, utils.Wrap(err, "")
|
|
||||||
}
|
|
||||||
var groupMemberIDList []string
|
|
||||||
err = json.Unmarshal([]byte(groupIDListStr), &groupMemberIDList)
|
|
||||||
return groupMemberIDList, utils.Wrap(err, "")
|
|
||||||
}
|
|
||||||
|
|
||||||
func DelGroupMemberIDListFromCache(groupID string) error {
|
func DelGroupMemberIDListFromCache(groupID string) error {
|
||||||
err := db.DB.Rc.TagAsDeleted(groupCache + groupID)
|
err := db.DB.Rc.TagAsDeleted(groupCache + groupID)
|
||||||
return err
|
return err
|
||||||
@ -458,6 +424,39 @@ func GetGroupMemberListHashFromCache(groupID string) (uint64, error) {
|
|||||||
hashCodeUint64, err := strconv.Atoi(hashCode)
|
hashCodeUint64, err := strconv.Atoi(hashCode)
|
||||||
return uint64(hashCodeUint64), err
|
return uint64(hashCodeUint64), err
|
||||||
}
|
}
|
||||||
|
func GetGroupMemberIDListFromCache(groupID string) ([]string, error) {
|
||||||
|
f := func() (string, error) {
|
||||||
|
groupInfo, err := GetGroupInfoFromCache(groupID)
|
||||||
|
if err != nil {
|
||||||
|
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)
|
||||||
|
if err != nil {
|
||||||
|
return "", utils.Wrap(err, "")
|
||||||
|
}
|
||||||
|
return string(bytes), nil
|
||||||
|
}
|
||||||
|
groupIDListStr, err := db.DB.Rc.Fetch(groupCache+groupID, time.Second*30*60, f)
|
||||||
|
if err != nil {
|
||||||
|
return nil, utils.Wrap(err, "")
|
||||||
|
}
|
||||||
|
var groupMemberIDList []string
|
||||||
|
err = json.Unmarshal([]byte(groupIDListStr), &groupMemberIDList)
|
||||||
|
return groupMemberIDList, utils.Wrap(err, "")
|
||||||
|
}
|
||||||
|
|
||||||
func DelGroupMemberListHashFromCache(groupID string) error {
|
func DelGroupMemberListHashFromCache(groupID string) error {
|
||||||
err := db.DB.Rc.TagAsDeleted(groupMemberListHashCache + groupID)
|
err := db.DB.Rc.TagAsDeleted(groupMemberListHashCache + groupID)
|
||||||
@ -579,7 +578,6 @@ func GetExtendMsg(sourceID string, sessionType int32, clientMsgID string, firstM
|
|||||||
}
|
}
|
||||||
return string(bytes), nil
|
return string(bytes), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
extendMsgStr, err := db.DB.Rc.Fetch(extendMsgCache+clientMsgID, time.Second*30*60, getExtendMsg)
|
extendMsgStr, err := db.DB.Rc.Fetch(extendMsgCache+clientMsgID, time.Second*30*60, getExtendMsg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, utils.Wrap(err, "Fetch failed")
|
return nil, utils.Wrap(err, "Fetch failed")
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -146,6 +146,7 @@ message GetGroupMembersInfoReq {
|
|||||||
repeated string memberList = 2;
|
repeated string memberList = 2;
|
||||||
string OpUserID = 3; //No verification permission
|
string OpUserID = 3; //No verification permission
|
||||||
string OperationID = 4;
|
string OperationID = 4;
|
||||||
|
bool noCache = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
message GetGroupMembersInfoResp {
|
message GetGroupMembersInfoResp {
|
||||||
@ -375,6 +376,27 @@ message GetGroupAbstractInfoResp{
|
|||||||
uint64 groupMemberListHash = 3;
|
uint64 groupMemberListHash = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
message GroupIsExistReq {
|
||||||
|
repeated string groupIDList = 1;
|
||||||
|
string opUserID = 2;
|
||||||
|
string operationID = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
message GroupIsExistResp {
|
||||||
|
CommonResp CommonResp = 1;
|
||||||
|
map<string, bool> IsExistMap = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message UserIsInGroupReq {
|
||||||
|
string groupID = 1;
|
||||||
|
repeated string userIDList = 2;
|
||||||
|
string operationID = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
message UserIsInGroupResp {
|
||||||
|
CommonResp CommonResp = 1;
|
||||||
|
map<string, bool> IsExistMap = 2;
|
||||||
|
}
|
||||||
|
|
||||||
service group{
|
service group{
|
||||||
rpc createGroup(CreateGroupReq) returns(CreateGroupResp);
|
rpc createGroup(CreateGroupReq) returns(CreateGroupResp);
|
||||||
@ -408,6 +430,8 @@ service group{
|
|||||||
rpc GetSuperGroupsInfo(GetSuperGroupsInfoReq) returns (GetSuperGroupsInfoResp);
|
rpc GetSuperGroupsInfo(GetSuperGroupsInfoReq) returns (GetSuperGroupsInfoResp);
|
||||||
rpc SetGroupMemberInfo(SetGroupMemberInfoReq) returns (SetGroupMemberInfoResp);
|
rpc SetGroupMemberInfo(SetGroupMemberInfoReq) returns (SetGroupMemberInfoResp);
|
||||||
rpc GetGroupAbstractInfo(GetGroupAbstractInfoReq) returns (GetGroupAbstractInfoResp);
|
rpc GetGroupAbstractInfo(GetGroupAbstractInfoReq) returns (GetGroupAbstractInfoResp);
|
||||||
|
rpc GroupIsExist(GroupIsExistReq) returns(GroupIsExistResp);
|
||||||
|
rpc UserIsInGroup(UserIsInGroupReq) returns(UserIsInGroupResp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ func (m *MsgDataToMQ) Reset() { *m = MsgDataToMQ{} }
|
|||||||
func (m *MsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
func (m *MsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MsgDataToMQ) ProtoMessage() {}
|
func (*MsgDataToMQ) ProtoMessage() {}
|
||||||
func (*MsgDataToMQ) Descriptor() ([]byte, []int) {
|
func (*MsgDataToMQ) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{0}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{0}
|
||||||
}
|
}
|
||||||
func (m *MsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
func (m *MsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MsgDataToMQ.Unmarshal(m, b)
|
return xxx_messageInfo_MsgDataToMQ.Unmarshal(m, b)
|
||||||
@ -91,7 +91,7 @@ func (m *MsgDataToDB) Reset() { *m = MsgDataToDB{} }
|
|||||||
func (m *MsgDataToDB) String() string { return proto.CompactTextString(m) }
|
func (m *MsgDataToDB) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MsgDataToDB) ProtoMessage() {}
|
func (*MsgDataToDB) ProtoMessage() {}
|
||||||
func (*MsgDataToDB) Descriptor() ([]byte, []int) {
|
func (*MsgDataToDB) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{1}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{1}
|
||||||
}
|
}
|
||||||
func (m *MsgDataToDB) XXX_Unmarshal(b []byte) error {
|
func (m *MsgDataToDB) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MsgDataToDB.Unmarshal(m, b)
|
return xxx_messageInfo_MsgDataToDB.Unmarshal(m, b)
|
||||||
@ -138,7 +138,7 @@ func (m *PushMsgDataToMQ) Reset() { *m = PushMsgDataToMQ{} }
|
|||||||
func (m *PushMsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
func (m *PushMsgDataToMQ) String() string { return proto.CompactTextString(m) }
|
||||||
func (*PushMsgDataToMQ) ProtoMessage() {}
|
func (*PushMsgDataToMQ) ProtoMessage() {}
|
||||||
func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) {
|
func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{2}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{2}
|
||||||
}
|
}
|
||||||
func (m *PushMsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
func (m *PushMsgDataToMQ) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_PushMsgDataToMQ.Unmarshal(m, b)
|
return xxx_messageInfo_PushMsgDataToMQ.Unmarshal(m, b)
|
||||||
@ -193,7 +193,7 @@ func (m *MsgDataToMongoByMQ) Reset() { *m = MsgDataToMongoByMQ{} }
|
|||||||
func (m *MsgDataToMongoByMQ) String() string { return proto.CompactTextString(m) }
|
func (m *MsgDataToMongoByMQ) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MsgDataToMongoByMQ) ProtoMessage() {}
|
func (*MsgDataToMongoByMQ) ProtoMessage() {}
|
||||||
func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) {
|
func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{3}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{3}
|
||||||
}
|
}
|
||||||
func (m *MsgDataToMongoByMQ) XXX_Unmarshal(b []byte) error {
|
func (m *MsgDataToMongoByMQ) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MsgDataToMongoByMQ.Unmarshal(m, b)
|
return xxx_messageInfo_MsgDataToMongoByMQ.Unmarshal(m, b)
|
||||||
@ -273,7 +273,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} }
|
|||||||
func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetMaxAndMinSeqReq) ProtoMessage() {}
|
func (*GetMaxAndMinSeqReq) ProtoMessage() {}
|
||||||
func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) {
|
func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{4}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{4}
|
||||||
}
|
}
|
||||||
func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b)
|
||||||
@ -321,7 +321,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} }
|
|||||||
func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetMaxAndMinSeqResp) ProtoMessage() {}
|
func (*GetMaxAndMinSeqResp) ProtoMessage() {}
|
||||||
func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) {
|
func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{5}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{5}
|
||||||
}
|
}
|
||||||
func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b)
|
||||||
@ -382,7 +382,7 @@ func (m *SendMsgReq) Reset() { *m = SendMsgReq{} }
|
|||||||
func (m *SendMsgReq) String() string { return proto.CompactTextString(m) }
|
func (m *SendMsgReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SendMsgReq) ProtoMessage() {}
|
func (*SendMsgReq) ProtoMessage() {}
|
||||||
func (*SendMsgReq) Descriptor() ([]byte, []int) {
|
func (*SendMsgReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{6}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{6}
|
||||||
}
|
}
|
||||||
func (m *SendMsgReq) XXX_Unmarshal(b []byte) error {
|
func (m *SendMsgReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SendMsgReq.Unmarshal(m, b)
|
return xxx_messageInfo_SendMsgReq.Unmarshal(m, b)
|
||||||
@ -438,7 +438,7 @@ func (m *SendMsgResp) Reset() { *m = SendMsgResp{} }
|
|||||||
func (m *SendMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *SendMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SendMsgResp) ProtoMessage() {}
|
func (*SendMsgResp) ProtoMessage() {}
|
||||||
func (*SendMsgResp) Descriptor() ([]byte, []int) {
|
func (*SendMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{7}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{7}
|
||||||
}
|
}
|
||||||
func (m *SendMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *SendMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SendMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_SendMsgResp.Unmarshal(m, b)
|
||||||
@ -506,7 +506,7 @@ func (m *ClearMsgReq) Reset() { *m = ClearMsgReq{} }
|
|||||||
func (m *ClearMsgReq) String() string { return proto.CompactTextString(m) }
|
func (m *ClearMsgReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ClearMsgReq) ProtoMessage() {}
|
func (*ClearMsgReq) ProtoMessage() {}
|
||||||
func (*ClearMsgReq) Descriptor() ([]byte, []int) {
|
func (*ClearMsgReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{8}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{8}
|
||||||
}
|
}
|
||||||
func (m *ClearMsgReq) XXX_Unmarshal(b []byte) error {
|
func (m *ClearMsgReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ClearMsgReq.Unmarshal(m, b)
|
return xxx_messageInfo_ClearMsgReq.Unmarshal(m, b)
|
||||||
@ -559,7 +559,7 @@ func (m *ClearMsgResp) Reset() { *m = ClearMsgResp{} }
|
|||||||
func (m *ClearMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *ClearMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ClearMsgResp) ProtoMessage() {}
|
func (*ClearMsgResp) ProtoMessage() {}
|
||||||
func (*ClearMsgResp) Descriptor() ([]byte, []int) {
|
func (*ClearMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{9}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{9}
|
||||||
}
|
}
|
||||||
func (m *ClearMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *ClearMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ClearMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_ClearMsgResp.Unmarshal(m, b)
|
||||||
@ -608,7 +608,7 @@ func (m *SetMsgMinSeqReq) Reset() { *m = SetMsgMinSeqReq{} }
|
|||||||
func (m *SetMsgMinSeqReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetMsgMinSeqReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetMsgMinSeqReq) ProtoMessage() {}
|
func (*SetMsgMinSeqReq) ProtoMessage() {}
|
||||||
func (*SetMsgMinSeqReq) Descriptor() ([]byte, []int) {
|
func (*SetMsgMinSeqReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{10}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{10}
|
||||||
}
|
}
|
||||||
func (m *SetMsgMinSeqReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetMsgMinSeqReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetMsgMinSeqReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetMsgMinSeqReq.Unmarshal(m, b)
|
||||||
@ -675,7 +675,7 @@ func (m *SetMsgMinSeqResp) Reset() { *m = SetMsgMinSeqResp{} }
|
|||||||
func (m *SetMsgMinSeqResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetMsgMinSeqResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetMsgMinSeqResp) ProtoMessage() {}
|
func (*SetMsgMinSeqResp) ProtoMessage() {}
|
||||||
func (*SetMsgMinSeqResp) Descriptor() ([]byte, []int) {
|
func (*SetMsgMinSeqResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{11}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{11}
|
||||||
}
|
}
|
||||||
func (m *SetMsgMinSeqResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetMsgMinSeqResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetMsgMinSeqResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetMsgMinSeqResp.Unmarshal(m, b)
|
||||||
@ -721,7 +721,7 @@ func (m *SetSendMsgStatusReq) Reset() { *m = SetSendMsgStatusReq{} }
|
|||||||
func (m *SetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetSendMsgStatusReq) ProtoMessage() {}
|
func (*SetSendMsgStatusReq) ProtoMessage() {}
|
||||||
func (*SetSendMsgStatusReq) Descriptor() ([]byte, []int) {
|
func (*SetSendMsgStatusReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{12}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{12}
|
||||||
}
|
}
|
||||||
func (m *SetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetSendMsgStatusReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetSendMsgStatusReq.Unmarshal(m, b)
|
||||||
@ -767,7 +767,7 @@ func (m *SetSendMsgStatusResp) Reset() { *m = SetSendMsgStatusResp{} }
|
|||||||
func (m *SetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetSendMsgStatusResp) ProtoMessage() {}
|
func (*SetSendMsgStatusResp) ProtoMessage() {}
|
||||||
func (*SetSendMsgStatusResp) Descriptor() ([]byte, []int) {
|
func (*SetSendMsgStatusResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{13}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{13}
|
||||||
}
|
}
|
||||||
func (m *SetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetSendMsgStatusResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetSendMsgStatusResp.Unmarshal(m, b)
|
||||||
@ -812,7 +812,7 @@ func (m *GetSendMsgStatusReq) Reset() { *m = GetSendMsgStatusReq{} }
|
|||||||
func (m *GetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSendMsgStatusReq) ProtoMessage() {}
|
func (*GetSendMsgStatusReq) ProtoMessage() {}
|
||||||
func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) {
|
func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{14}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{14}
|
||||||
}
|
}
|
||||||
func (m *GetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSendMsgStatusReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetSendMsgStatusReq.Unmarshal(m, b)
|
||||||
@ -852,7 +852,7 @@ func (m *GetSendMsgStatusResp) Reset() { *m = GetSendMsgStatusResp{} }
|
|||||||
func (m *GetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSendMsgStatusResp) ProtoMessage() {}
|
func (*GetSendMsgStatusResp) ProtoMessage() {}
|
||||||
func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) {
|
func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{15}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{15}
|
||||||
}
|
}
|
||||||
func (m *GetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSendMsgStatusResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetSendMsgStatusResp.Unmarshal(m, b)
|
||||||
@ -907,7 +907,7 @@ func (m *DelSuperGroupMsgReq) Reset() { *m = DelSuperGroupMsgReq{} }
|
|||||||
func (m *DelSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
|
func (m *DelSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DelSuperGroupMsgReq) ProtoMessage() {}
|
func (*DelSuperGroupMsgReq) ProtoMessage() {}
|
||||||
func (*DelSuperGroupMsgReq) Descriptor() ([]byte, []int) {
|
func (*DelSuperGroupMsgReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{16}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{16}
|
||||||
}
|
}
|
||||||
func (m *DelSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
|
func (m *DelSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DelSuperGroupMsgReq.Unmarshal(m, b)
|
return xxx_messageInfo_DelSuperGroupMsgReq.Unmarshal(m, b)
|
||||||
@ -967,7 +967,7 @@ func (m *DelSuperGroupMsgResp) Reset() { *m = DelSuperGroupMsgResp{} }
|
|||||||
func (m *DelSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *DelSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DelSuperGroupMsgResp) ProtoMessage() {}
|
func (*DelSuperGroupMsgResp) ProtoMessage() {}
|
||||||
func (*DelSuperGroupMsgResp) Descriptor() ([]byte, []int) {
|
func (*DelSuperGroupMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{17}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{17}
|
||||||
}
|
}
|
||||||
func (m *DelSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *DelSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DelSuperGroupMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_DelSuperGroupMsgResp.Unmarshal(m, b)
|
||||||
@ -1014,7 +1014,7 @@ func (m *GetSuperGroupMsgReq) Reset() { *m = GetSuperGroupMsgReq{} }
|
|||||||
func (m *GetSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSuperGroupMsgReq) ProtoMessage() {}
|
func (*GetSuperGroupMsgReq) ProtoMessage() {}
|
||||||
func (*GetSuperGroupMsgReq) Descriptor() ([]byte, []int) {
|
func (*GetSuperGroupMsgReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{18}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{18}
|
||||||
}
|
}
|
||||||
func (m *GetSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSuperGroupMsgReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetSuperGroupMsgReq.Unmarshal(m, b)
|
||||||
@ -1068,7 +1068,7 @@ func (m *GetSuperGroupMsgResp) Reset() { *m = GetSuperGroupMsgResp{} }
|
|||||||
func (m *GetSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSuperGroupMsgResp) ProtoMessage() {}
|
func (*GetSuperGroupMsgResp) ProtoMessage() {}
|
||||||
func (*GetSuperGroupMsgResp) Descriptor() ([]byte, []int) {
|
func (*GetSuperGroupMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{19}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{19}
|
||||||
}
|
}
|
||||||
func (m *GetSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSuperGroupMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetSuperGroupMsgResp.Unmarshal(m, b)
|
||||||
@ -1121,7 +1121,7 @@ func (m *GetWriteDiffMsgReq) Reset() { *m = GetWriteDiffMsgReq{} }
|
|||||||
func (m *GetWriteDiffMsgReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetWriteDiffMsgReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetWriteDiffMsgReq) ProtoMessage() {}
|
func (*GetWriteDiffMsgReq) ProtoMessage() {}
|
||||||
func (*GetWriteDiffMsgReq) Descriptor() ([]byte, []int) {
|
func (*GetWriteDiffMsgReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{20}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{20}
|
||||||
}
|
}
|
||||||
func (m *GetWriteDiffMsgReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetWriteDiffMsgReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetWriteDiffMsgReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetWriteDiffMsgReq.Unmarshal(m, b)
|
||||||
@ -1168,7 +1168,7 @@ func (m *GetWriteDiffMsgResp) Reset() { *m = GetWriteDiffMsgResp{} }
|
|||||||
func (m *GetWriteDiffMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetWriteDiffMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetWriteDiffMsgResp) ProtoMessage() {}
|
func (*GetWriteDiffMsgResp) ProtoMessage() {}
|
||||||
func (*GetWriteDiffMsgResp) Descriptor() ([]byte, []int) {
|
func (*GetWriteDiffMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{21}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{21}
|
||||||
}
|
}
|
||||||
func (m *GetWriteDiffMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetWriteDiffMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetWriteDiffMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetWriteDiffMsgResp.Unmarshal(m, b)
|
||||||
@ -1230,7 +1230,7 @@ func (m *ModifyMessageReactionExtensionsReq) Reset() { *m = ModifyMessag
|
|||||||
func (m *ModifyMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
func (m *ModifyMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ModifyMessageReactionExtensionsReq) ProtoMessage() {}
|
func (*ModifyMessageReactionExtensionsReq) ProtoMessage() {}
|
||||||
func (*ModifyMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
func (*ModifyMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{22}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{22}
|
||||||
}
|
}
|
||||||
func (m *ModifyMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
func (m *ModifyMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ModifyMessageReactionExtensionsReq.Unmarshal(m, b)
|
return xxx_messageInfo_ModifyMessageReactionExtensionsReq.Unmarshal(m, b)
|
||||||
@ -1348,7 +1348,7 @@ func (m *SetMessageReactionExtensionsReq) Reset() { *m = SetMessageReact
|
|||||||
func (m *SetMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetMessageReactionExtensionsReq) ProtoMessage() {}
|
func (*SetMessageReactionExtensionsReq) ProtoMessage() {}
|
||||||
func (*SetMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
func (*SetMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{23}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{23}
|
||||||
}
|
}
|
||||||
func (m *SetMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetMessageReactionExtensionsReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetMessageReactionExtensionsReq.Unmarshal(m, b)
|
||||||
@ -1461,7 +1461,7 @@ func (m *SetMessageReactionExtensionsResp) Reset() { *m = SetMessageReac
|
|||||||
func (m *SetMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetMessageReactionExtensionsResp) ProtoMessage() {}
|
func (*SetMessageReactionExtensionsResp) ProtoMessage() {}
|
||||||
func (*SetMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
func (*SetMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{24}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{24}
|
||||||
}
|
}
|
||||||
func (m *SetMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetMessageReactionExtensionsResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetMessageReactionExtensionsResp.Unmarshal(m, b)
|
||||||
@ -1523,13 +1523,210 @@ func (m *SetMessageReactionExtensionsResp) GetResult() []*KeyValueResp {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type AddMessageReactionExtensionsReq struct {
|
||||||
|
OperationID string `protobuf:"bytes,1,opt,name=operationID" json:"operationID,omitempty"`
|
||||||
|
SourceID string `protobuf:"bytes,2,opt,name=sourceID" json:"sourceID,omitempty"`
|
||||||
|
OpUserID string `protobuf:"bytes,3,opt,name=opUserID" json:"opUserID,omitempty"`
|
||||||
|
SessionType int32 `protobuf:"varint,4,opt,name=sessionType" json:"sessionType,omitempty"`
|
||||||
|
ReactionExtensionList map[string]*sdk_ws.KeyValue `protobuf:"bytes,5,rep,name=reactionExtensionList" json:"reactionExtensionList,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||||||
|
ClientMsgID string `protobuf:"bytes,6,opt,name=clientMsgID" json:"clientMsgID,omitempty"`
|
||||||
|
Ex *wrapperspb.StringValue `protobuf:"bytes,7,opt,name=ex" json:"ex,omitempty"`
|
||||||
|
AttachedInfo *wrapperspb.StringValue `protobuf:"bytes,8,opt,name=attachedInfo" json:"attachedInfo,omitempty"`
|
||||||
|
IsReact bool `protobuf:"varint,9,opt,name=isReact" json:"isReact,omitempty"`
|
||||||
|
IsExternalExtensions bool `protobuf:"varint,10,opt,name=isExternalExtensions" json:"isExternalExtensions,omitempty"`
|
||||||
|
MsgFirstModifyTime int64 `protobuf:"varint,11,opt,name=msgFirstModifyTime" json:"msgFirstModifyTime,omitempty"`
|
||||||
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||||
|
XXX_unrecognized []byte `json:"-"`
|
||||||
|
XXX_sizecache int32 `json:"-"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) Reset() { *m = AddMessageReactionExtensionsReq{} }
|
||||||
|
func (m *AddMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
||||||
|
func (*AddMessageReactionExtensionsReq) ProtoMessage() {}
|
||||||
|
func (*AddMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
||||||
|
return fileDescriptor_msg_bafb742f07ab638a, []int{25}
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsReq.Unmarshal(m, b)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsReq.Marshal(b, m, deterministic)
|
||||||
|
}
|
||||||
|
func (dst *AddMessageReactionExtensionsReq) XXX_Merge(src proto.Message) {
|
||||||
|
xxx_messageInfo_AddMessageReactionExtensionsReq.Merge(dst, src)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsReq) XXX_Size() int {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsReq.Size(m)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsReq) XXX_DiscardUnknown() {
|
||||||
|
xxx_messageInfo_AddMessageReactionExtensionsReq.DiscardUnknown(m)
|
||||||
|
}
|
||||||
|
|
||||||
|
var xxx_messageInfo_AddMessageReactionExtensionsReq proto.InternalMessageInfo
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetOperationID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.OperationID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetSourceID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.SourceID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetOpUserID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.OpUserID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetSessionType() int32 {
|
||||||
|
if m != nil {
|
||||||
|
return m.SessionType
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetReactionExtensionList() map[string]*sdk_ws.KeyValue {
|
||||||
|
if m != nil {
|
||||||
|
return m.ReactionExtensionList
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetClientMsgID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.ClientMsgID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetEx() *wrapperspb.StringValue {
|
||||||
|
if m != nil {
|
||||||
|
return m.Ex
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetAttachedInfo() *wrapperspb.StringValue {
|
||||||
|
if m != nil {
|
||||||
|
return m.AttachedInfo
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetIsReact() bool {
|
||||||
|
if m != nil {
|
||||||
|
return m.IsReact
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetIsExternalExtensions() bool {
|
||||||
|
if m != nil {
|
||||||
|
return m.IsExternalExtensions
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsReq) GetMsgFirstModifyTime() int64 {
|
||||||
|
if m != nil {
|
||||||
|
return m.MsgFirstModifyTime
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
type AddMessageReactionExtensionsResp struct {
|
||||||
|
ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"`
|
||||||
|
ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"`
|
||||||
|
ClientMsgID string `protobuf:"bytes,3,opt,name=clientMsgID" json:"clientMsgID,omitempty"`
|
||||||
|
MsgFirstModifyTime int64 `protobuf:"varint,4,opt,name=msgFirstModifyTime" json:"msgFirstModifyTime,omitempty"`
|
||||||
|
IsReact bool `protobuf:"varint,5,opt,name=isReact" json:"isReact,omitempty"`
|
||||||
|
Result []*KeyValueResp `protobuf:"bytes,6,rep,name=result" json:"result,omitempty"`
|
||||||
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||||
|
XXX_unrecognized []byte `json:"-"`
|
||||||
|
XXX_sizecache int32 `json:"-"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) Reset() { *m = AddMessageReactionExtensionsResp{} }
|
||||||
|
func (m *AddMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
||||||
|
func (*AddMessageReactionExtensionsResp) ProtoMessage() {}
|
||||||
|
func (*AddMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
||||||
|
return fileDescriptor_msg_bafb742f07ab638a, []int{26}
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsResp.Unmarshal(m, b)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsResp.Marshal(b, m, deterministic)
|
||||||
|
}
|
||||||
|
func (dst *AddMessageReactionExtensionsResp) XXX_Merge(src proto.Message) {
|
||||||
|
xxx_messageInfo_AddMessageReactionExtensionsResp.Merge(dst, src)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsResp) XXX_Size() int {
|
||||||
|
return xxx_messageInfo_AddMessageReactionExtensionsResp.Size(m)
|
||||||
|
}
|
||||||
|
func (m *AddMessageReactionExtensionsResp) XXX_DiscardUnknown() {
|
||||||
|
xxx_messageInfo_AddMessageReactionExtensionsResp.DiscardUnknown(m)
|
||||||
|
}
|
||||||
|
|
||||||
|
var xxx_messageInfo_AddMessageReactionExtensionsResp proto.InternalMessageInfo
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetErrCode() int32 {
|
||||||
|
if m != nil {
|
||||||
|
return m.ErrCode
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetErrMsg() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.ErrMsg
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetClientMsgID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.ClientMsgID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetMsgFirstModifyTime() int64 {
|
||||||
|
if m != nil {
|
||||||
|
return m.MsgFirstModifyTime
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetIsReact() bool {
|
||||||
|
if m != nil {
|
||||||
|
return m.IsReact
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *AddMessageReactionExtensionsResp) GetResult() []*KeyValueResp {
|
||||||
|
if m != nil {
|
||||||
|
return m.Result
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
type GetMessageListReactionExtensionsReq struct {
|
type GetMessageListReactionExtensionsReq struct {
|
||||||
OperationID string `protobuf:"bytes,1,opt,name=operationID" json:"operationID,omitempty"`
|
OperationID string `protobuf:"bytes,1,opt,name=operationID" json:"operationID,omitempty"`
|
||||||
OpUserID string `protobuf:"bytes,2,opt,name=opUserID" json:"opUserID,omitempty"`
|
OpUserID string `protobuf:"bytes,2,opt,name=opUserID" json:"opUserID,omitempty"`
|
||||||
SourceID string `protobuf:"bytes,3,opt,name=sourceID" json:"sourceID,omitempty"`
|
SourceID string `protobuf:"bytes,3,opt,name=sourceID" json:"sourceID,omitempty"`
|
||||||
SessionType int32 `protobuf:"varint,4,opt,name=sessionType" json:"sessionType,omitempty"`
|
SessionType int32 `protobuf:"varint,4,opt,name=sessionType" json:"sessionType,omitempty"`
|
||||||
IsExternalExtensions bool `protobuf:"varint,5,opt,name=isExternalExtensions" json:"isExternalExtensions,omitempty"`
|
IsExternalExtensions bool `protobuf:"varint,5,opt,name=isExternalExtensions" json:"isExternalExtensions,omitempty"`
|
||||||
MessageReactionKeyList []*GetMessageListReactionExtensionsReq_MessageReactionKey `protobuf:"bytes,6,rep,name=messageReactionKeyList" json:"messageReactionKeyList,omitempty"`
|
TypeKeyList []string `protobuf:"bytes,6,rep,name=typeKeyList" json:"typeKeyList,omitempty"`
|
||||||
|
MessageReactionKeyList []*GetMessageListReactionExtensionsReq_MessageReactionKey `protobuf:"bytes,7,rep,name=messageReactionKeyList" json:"messageReactionKeyList,omitempty"`
|
||||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||||
XXX_unrecognized []byte `json:"-"`
|
XXX_unrecognized []byte `json:"-"`
|
||||||
XXX_sizecache int32 `json:"-"`
|
XXX_sizecache int32 `json:"-"`
|
||||||
@ -1539,7 +1736,7 @@ func (m *GetMessageListReactionExtensionsReq) Reset() { *m = GetMessageL
|
|||||||
func (m *GetMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetMessageListReactionExtensionsReq) ProtoMessage() {}
|
func (*GetMessageListReactionExtensionsReq) ProtoMessage() {}
|
||||||
func (*GetMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
func (*GetMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{25}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{27}
|
||||||
}
|
}
|
||||||
func (m *GetMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetMessageListReactionExtensionsReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetMessageListReactionExtensionsReq.Unmarshal(m, b)
|
||||||
@ -1594,6 +1791,13 @@ func (m *GetMessageListReactionExtensionsReq) GetIsExternalExtensions() bool {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *GetMessageListReactionExtensionsReq) GetTypeKeyList() []string {
|
||||||
|
if m != nil {
|
||||||
|
return m.TypeKeyList
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (m *GetMessageListReactionExtensionsReq) GetMessageReactionKeyList() []*GetMessageListReactionExtensionsReq_MessageReactionKey {
|
func (m *GetMessageListReactionExtensionsReq) GetMessageReactionKeyList() []*GetMessageListReactionExtensionsReq_MessageReactionKey {
|
||||||
if m != nil {
|
if m != nil {
|
||||||
return m.MessageReactionKeyList
|
return m.MessageReactionKeyList
|
||||||
@ -1617,7 +1821,7 @@ func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) String() string
|
|||||||
}
|
}
|
||||||
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) ProtoMessage() {}
|
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) ProtoMessage() {}
|
||||||
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) Descriptor() ([]byte, []int) {
|
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{25, 0}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{27, 0}
|
||||||
}
|
}
|
||||||
func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) XXX_Unmarshal(b []byte) error {
|
func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetMessageListReactionExtensionsReq_MessageReactionKey.Unmarshal(m, b)
|
return xxx_messageInfo_GetMessageListReactionExtensionsReq_MessageReactionKey.Unmarshal(m, b)
|
||||||
@ -1664,7 +1868,7 @@ func (m *GetMessageListReactionExtensionsResp) Reset() { *m = GetMessage
|
|||||||
func (m *GetMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetMessageListReactionExtensionsResp) ProtoMessage() {}
|
func (*GetMessageListReactionExtensionsResp) ProtoMessage() {}
|
||||||
func (*GetMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
func (*GetMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{26}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{28}
|
||||||
}
|
}
|
||||||
func (m *GetMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetMessageListReactionExtensionsResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetMessageListReactionExtensionsResp.Unmarshal(m, b)
|
||||||
@ -1719,7 +1923,7 @@ func (m *SingleMessageExtensionResult) Reset() { *m = SingleMessageExten
|
|||||||
func (m *SingleMessageExtensionResult) String() string { return proto.CompactTextString(m) }
|
func (m *SingleMessageExtensionResult) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SingleMessageExtensionResult) ProtoMessage() {}
|
func (*SingleMessageExtensionResult) ProtoMessage() {}
|
||||||
func (*SingleMessageExtensionResult) Descriptor() ([]byte, []int) {
|
func (*SingleMessageExtensionResult) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{27}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{29}
|
||||||
}
|
}
|
||||||
func (m *SingleMessageExtensionResult) XXX_Unmarshal(b []byte) error {
|
func (m *SingleMessageExtensionResult) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SingleMessageExtensionResult.Unmarshal(m, b)
|
return xxx_messageInfo_SingleMessageExtensionResult.Unmarshal(m, b)
|
||||||
@ -1781,7 +1985,7 @@ func (m *ModifyMessageReactionExtensionsResp) Reset() { *m = ModifyMessa
|
|||||||
func (m *ModifyMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
func (m *ModifyMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ModifyMessageReactionExtensionsResp) ProtoMessage() {}
|
func (*ModifyMessageReactionExtensionsResp) ProtoMessage() {}
|
||||||
func (*ModifyMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
func (*ModifyMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{28}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{30}
|
||||||
}
|
}
|
||||||
func (m *ModifyMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
func (m *ModifyMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ModifyMessageReactionExtensionsResp.Unmarshal(m, b)
|
return xxx_messageInfo_ModifyMessageReactionExtensionsResp.Unmarshal(m, b)
|
||||||
@ -1849,7 +2053,7 @@ func (m *DeleteMessageListReactionExtensionsReq) Reset() {
|
|||||||
func (m *DeleteMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
func (m *DeleteMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DeleteMessageListReactionExtensionsReq) ProtoMessage() {}
|
func (*DeleteMessageListReactionExtensionsReq) ProtoMessage() {}
|
||||||
func (*DeleteMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
func (*DeleteMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{29}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{31}
|
||||||
}
|
}
|
||||||
func (m *DeleteMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
func (m *DeleteMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DeleteMessageListReactionExtensionsReq.Unmarshal(m, b)
|
return xxx_messageInfo_DeleteMessageListReactionExtensionsReq.Unmarshal(m, b)
|
||||||
@ -1940,7 +2144,7 @@ func (m *DeleteMessageListReactionExtensionsResp) Reset() {
|
|||||||
func (m *DeleteMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
func (m *DeleteMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DeleteMessageListReactionExtensionsResp) ProtoMessage() {}
|
func (*DeleteMessageListReactionExtensionsResp) ProtoMessage() {}
|
||||||
func (*DeleteMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
func (*DeleteMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{30}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{32}
|
||||||
}
|
}
|
||||||
func (m *DeleteMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
func (m *DeleteMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DeleteMessageListReactionExtensionsResp.Unmarshal(m, b)
|
return xxx_messageInfo_DeleteMessageListReactionExtensionsResp.Unmarshal(m, b)
|
||||||
@ -1994,7 +2198,7 @@ func (m *ExtendMsgResp) Reset() { *m = ExtendMsgResp{} }
|
|||||||
func (m *ExtendMsgResp) String() string { return proto.CompactTextString(m) }
|
func (m *ExtendMsgResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ExtendMsgResp) ProtoMessage() {}
|
func (*ExtendMsgResp) ProtoMessage() {}
|
||||||
func (*ExtendMsgResp) Descriptor() ([]byte, []int) {
|
func (*ExtendMsgResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{31}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{33}
|
||||||
}
|
}
|
||||||
func (m *ExtendMsgResp) XXX_Unmarshal(b []byte) error {
|
func (m *ExtendMsgResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ExtendMsgResp.Unmarshal(m, b)
|
return xxx_messageInfo_ExtendMsgResp.Unmarshal(m, b)
|
||||||
@ -2050,7 +2254,7 @@ func (m *ExtendMsg) Reset() { *m = ExtendMsg{} }
|
|||||||
func (m *ExtendMsg) String() string { return proto.CompactTextString(m) }
|
func (m *ExtendMsg) String() string { return proto.CompactTextString(m) }
|
||||||
func (*ExtendMsg) ProtoMessage() {}
|
func (*ExtendMsg) ProtoMessage() {}
|
||||||
func (*ExtendMsg) Descriptor() ([]byte, []int) {
|
func (*ExtendMsg) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{32}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{34}
|
||||||
}
|
}
|
||||||
func (m *ExtendMsg) XXX_Unmarshal(b []byte) error {
|
func (m *ExtendMsg) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_ExtendMsg.Unmarshal(m, b)
|
return xxx_messageInfo_ExtendMsg.Unmarshal(m, b)
|
||||||
@ -2118,7 +2322,7 @@ func (m *KeyValueResp) Reset() { *m = KeyValueResp{} }
|
|||||||
func (m *KeyValueResp) String() string { return proto.CompactTextString(m) }
|
func (m *KeyValueResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*KeyValueResp) ProtoMessage() {}
|
func (*KeyValueResp) ProtoMessage() {}
|
||||||
func (*KeyValueResp) Descriptor() ([]byte, []int) {
|
func (*KeyValueResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{33}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{35}
|
||||||
}
|
}
|
||||||
func (m *KeyValueResp) XXX_Unmarshal(b []byte) error {
|
func (m *KeyValueResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_KeyValueResp.Unmarshal(m, b)
|
return xxx_messageInfo_KeyValueResp.Unmarshal(m, b)
|
||||||
@ -2172,7 +2376,7 @@ func (m *MsgDataToModifyByMQ) Reset() { *m = MsgDataToModifyByMQ{} }
|
|||||||
func (m *MsgDataToModifyByMQ) String() string { return proto.CompactTextString(m) }
|
func (m *MsgDataToModifyByMQ) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MsgDataToModifyByMQ) ProtoMessage() {}
|
func (*MsgDataToModifyByMQ) ProtoMessage() {}
|
||||||
func (*MsgDataToModifyByMQ) Descriptor() ([]byte, []int) {
|
func (*MsgDataToModifyByMQ) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_msg_24cf87b309a51053, []int{34}
|
return fileDescriptor_msg_bafb742f07ab638a, []int{36}
|
||||||
}
|
}
|
||||||
func (m *MsgDataToModifyByMQ) XXX_Unmarshal(b []byte) error {
|
func (m *MsgDataToModifyByMQ) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MsgDataToModifyByMQ.Unmarshal(m, b)
|
return xxx_messageInfo_MsgDataToModifyByMQ.Unmarshal(m, b)
|
||||||
@ -2241,6 +2445,9 @@ func init() {
|
|||||||
proto.RegisterType((*SetMessageReactionExtensionsReq)(nil), "msg.SetMessageReactionExtensionsReq")
|
proto.RegisterType((*SetMessageReactionExtensionsReq)(nil), "msg.SetMessageReactionExtensionsReq")
|
||||||
proto.RegisterMapType((map[string]*sdk_ws.KeyValue)(nil), "msg.SetMessageReactionExtensionsReq.ReactionExtensionListEntry")
|
proto.RegisterMapType((map[string]*sdk_ws.KeyValue)(nil), "msg.SetMessageReactionExtensionsReq.ReactionExtensionListEntry")
|
||||||
proto.RegisterType((*SetMessageReactionExtensionsResp)(nil), "msg.SetMessageReactionExtensionsResp")
|
proto.RegisterType((*SetMessageReactionExtensionsResp)(nil), "msg.SetMessageReactionExtensionsResp")
|
||||||
|
proto.RegisterType((*AddMessageReactionExtensionsReq)(nil), "msg.AddMessageReactionExtensionsReq")
|
||||||
|
proto.RegisterMapType((map[string]*sdk_ws.KeyValue)(nil), "msg.AddMessageReactionExtensionsReq.ReactionExtensionListEntry")
|
||||||
|
proto.RegisterType((*AddMessageReactionExtensionsResp)(nil), "msg.AddMessageReactionExtensionsResp")
|
||||||
proto.RegisterType((*GetMessageListReactionExtensionsReq)(nil), "msg.GetMessageListReactionExtensionsReq")
|
proto.RegisterType((*GetMessageListReactionExtensionsReq)(nil), "msg.GetMessageListReactionExtensionsReq")
|
||||||
proto.RegisterType((*GetMessageListReactionExtensionsReq_MessageReactionKey)(nil), "msg.GetMessageListReactionExtensionsReq.MessageReactionKey")
|
proto.RegisterType((*GetMessageListReactionExtensionsReq_MessageReactionKey)(nil), "msg.GetMessageListReactionExtensionsReq.MessageReactionKey")
|
||||||
proto.RegisterType((*GetMessageListReactionExtensionsResp)(nil), "msg.GetMessageListReactionExtensionsResp")
|
proto.RegisterType((*GetMessageListReactionExtensionsResp)(nil), "msg.GetMessageListReactionExtensionsResp")
|
||||||
@ -2281,7 +2488,7 @@ type MsgClient interface {
|
|||||||
// modify msg
|
// modify msg
|
||||||
SetMessageReactionExtensions(ctx context.Context, in *SetMessageReactionExtensionsReq, opts ...grpc.CallOption) (*SetMessageReactionExtensionsResp, error)
|
SetMessageReactionExtensions(ctx context.Context, in *SetMessageReactionExtensionsReq, opts ...grpc.CallOption) (*SetMessageReactionExtensionsResp, error)
|
||||||
GetMessageListReactionExtensions(ctx context.Context, in *GetMessageListReactionExtensionsReq, opts ...grpc.CallOption) (*GetMessageListReactionExtensionsResp, error)
|
GetMessageListReactionExtensions(ctx context.Context, in *GetMessageListReactionExtensionsReq, opts ...grpc.CallOption) (*GetMessageListReactionExtensionsResp, error)
|
||||||
AddMessageReactionExtensions(ctx context.Context, in *ModifyMessageReactionExtensionsReq, opts ...grpc.CallOption) (*ModifyMessageReactionExtensionsResp, error)
|
AddMessageReactionExtensions(ctx context.Context, in *AddMessageReactionExtensionsReq, opts ...grpc.CallOption) (*AddMessageReactionExtensionsResp, error)
|
||||||
DeleteMessageReactionExtensions(ctx context.Context, in *DeleteMessageListReactionExtensionsReq, opts ...grpc.CallOption) (*DeleteMessageListReactionExtensionsResp, error)
|
DeleteMessageReactionExtensions(ctx context.Context, in *DeleteMessageListReactionExtensionsReq, opts ...grpc.CallOption) (*DeleteMessageListReactionExtensionsResp, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2410,8 +2617,8 @@ func (c *msgClient) GetMessageListReactionExtensions(ctx context.Context, in *Ge
|
|||||||
return out, nil
|
return out, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *msgClient) AddMessageReactionExtensions(ctx context.Context, in *ModifyMessageReactionExtensionsReq, opts ...grpc.CallOption) (*ModifyMessageReactionExtensionsResp, error) {
|
func (c *msgClient) AddMessageReactionExtensions(ctx context.Context, in *AddMessageReactionExtensionsReq, opts ...grpc.CallOption) (*AddMessageReactionExtensionsResp, error) {
|
||||||
out := new(ModifyMessageReactionExtensionsResp)
|
out := new(AddMessageReactionExtensionsResp)
|
||||||
err := grpc.Invoke(ctx, "/msg.msg/AddMessageReactionExtensions", in, out, c.cc, opts...)
|
err := grpc.Invoke(ctx, "/msg.msg/AddMessageReactionExtensions", in, out, c.cc, opts...)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@ -2445,7 +2652,7 @@ type MsgServer interface {
|
|||||||
// modify msg
|
// modify msg
|
||||||
SetMessageReactionExtensions(context.Context, *SetMessageReactionExtensionsReq) (*SetMessageReactionExtensionsResp, error)
|
SetMessageReactionExtensions(context.Context, *SetMessageReactionExtensionsReq) (*SetMessageReactionExtensionsResp, error)
|
||||||
GetMessageListReactionExtensions(context.Context, *GetMessageListReactionExtensionsReq) (*GetMessageListReactionExtensionsResp, error)
|
GetMessageListReactionExtensions(context.Context, *GetMessageListReactionExtensionsReq) (*GetMessageListReactionExtensionsResp, error)
|
||||||
AddMessageReactionExtensions(context.Context, *ModifyMessageReactionExtensionsReq) (*ModifyMessageReactionExtensionsResp, error)
|
AddMessageReactionExtensions(context.Context, *AddMessageReactionExtensionsReq) (*AddMessageReactionExtensionsResp, error)
|
||||||
DeleteMessageReactionExtensions(context.Context, *DeleteMessageListReactionExtensionsReq) (*DeleteMessageListReactionExtensionsResp, error)
|
DeleteMessageReactionExtensions(context.Context, *DeleteMessageListReactionExtensionsReq) (*DeleteMessageListReactionExtensionsResp, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2688,7 +2895,7 @@ func _Msg_GetMessageListReactionExtensions_Handler(srv interface{}, ctx context.
|
|||||||
}
|
}
|
||||||
|
|
||||||
func _Msg_AddMessageReactionExtensions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
func _Msg_AddMessageReactionExtensions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||||
in := new(ModifyMessageReactionExtensionsReq)
|
in := new(AddMessageReactionExtensionsReq)
|
||||||
if err := dec(in); err != nil {
|
if err := dec(in); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@ -2700,7 +2907,7 @@ func _Msg_AddMessageReactionExtensions_Handler(srv interface{}, ctx context.Cont
|
|||||||
FullMethod: "/msg.msg/AddMessageReactionExtensions",
|
FullMethod: "/msg.msg/AddMessageReactionExtensions",
|
||||||
}
|
}
|
||||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||||
return srv.(MsgServer).AddMessageReactionExtensions(ctx, req.(*ModifyMessageReactionExtensionsReq))
|
return srv.(MsgServer).AddMessageReactionExtensions(ctx, req.(*AddMessageReactionExtensionsReq))
|
||||||
}
|
}
|
||||||
return interceptor(ctx, in, info, handler)
|
return interceptor(ctx, in, info, handler)
|
||||||
}
|
}
|
||||||
@ -2792,114 +2999,116 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
|
|||||||
Metadata: "msg/msg.proto",
|
Metadata: "msg/msg.proto",
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_24cf87b309a51053) }
|
func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_bafb742f07ab638a) }
|
||||||
|
|
||||||
var fileDescriptor_msg_24cf87b309a51053 = []byte{
|
var fileDescriptor_msg_bafb742f07ab638a = []byte{
|
||||||
// 1683 bytes of a gzipped FileDescriptorProto
|
// 1720 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x59, 0x4f, 0x6f, 0xdb, 0x46,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x4f, 0x6f, 0xdb, 0x46,
|
||||||
0x16, 0x07, 0x49, 0x4b, 0xb6, 0x9f, 0xec, 0xd8, 0x19, 0x3b, 0x5e, 0x85, 0x31, 0x10, 0x85, 0xf9,
|
0x16, 0x07, 0x49, 0x4b, 0xb6, 0x9f, 0xec, 0xd8, 0x19, 0x3b, 0x5e, 0x85, 0x31, 0x10, 0x85, 0xf9,
|
||||||
0xa7, 0x6c, 0x12, 0x19, 0xeb, 0x5d, 0x20, 0x8b, 0xcd, 0x02, 0x9b, 0x38, 0xf2, 0x2a, 0x46, 0x96,
|
0xe7, 0x6c, 0x12, 0x19, 0xeb, 0x5d, 0x20, 0x8b, 0xcd, 0x02, 0x9b, 0x38, 0xf2, 0x2a, 0x46, 0x56,
|
||||||
0xeb, 0x98, 0xf2, 0x6e, 0x81, 0xf6, 0xe0, 0x30, 0xd2, 0x98, 0x21, 0x2c, 0x91, 0x34, 0x87, 0x8a,
|
0xeb, 0x98, 0x72, 0x5b, 0xa0, 0x3d, 0x38, 0x8c, 0x34, 0x66, 0x08, 0x4b, 0x24, 0xcd, 0xa1, 0x62,
|
||||||
0xad, 0xfe, 0xbb, 0xb5, 0x28, 0x50, 0xe4, 0xd0, 0x63, 0x4f, 0xbd, 0xf5, 0xd6, 0x4b, 0xbf, 0x41,
|
0xab, 0xff, 0x0e, 0x05, 0xda, 0x4b, 0x91, 0x43, 0x8f, 0x3d, 0xf5, 0xd6, 0x5b, 0x3f, 0x44, 0x3f,
|
||||||
0x3f, 0x40, 0xd1, 0x0f, 0xd2, 0xcf, 0x50, 0xa0, 0x98, 0x19, 0x4a, 0x1a, 0xfe, 0x93, 0x68, 0xb9,
|
0x40, 0xd1, 0x4b, 0xbf, 0x45, 0x3f, 0x43, 0x81, 0x62, 0x66, 0x28, 0x69, 0xf8, 0x4f, 0xa4, 0xe5,
|
||||||
0x08, 0x52, 0xa0, 0x37, 0xbd, 0x99, 0x37, 0x6f, 0xde, 0xef, 0xbd, 0xdf, 0xbc, 0x19, 0x3e, 0xc1,
|
0x22, 0x48, 0x8a, 0xdc, 0xf4, 0x66, 0xde, 0xbc, 0x79, 0xbf, 0xf7, 0x7e, 0xf3, 0x87, 0xf3, 0x04,
|
||||||
0x62, 0x97, 0x58, 0x1b, 0x5d, 0x62, 0xd5, 0x3c, 0xdf, 0x0d, 0x5c, 0xa4, 0x74, 0x89, 0xa5, 0x56,
|
0xf3, 0x5d, 0x62, 0xae, 0x77, 0x89, 0x59, 0x75, 0x3d, 0xc7, 0x77, 0x90, 0xd2, 0x25, 0xa6, 0xba,
|
||||||
0x77, 0x3d, 0xec, 0xdc, 0xdf, 0xd1, 0xef, 0x37, 0xb1, 0xff, 0x1a, 0xfb, 0x1b, 0xde, 0x91, 0xb5,
|
0xb6, 0xe3, 0x62, 0xfb, 0xee, 0x76, 0xe3, 0x6e, 0x13, 0x7b, 0x2f, 0xb1, 0xb7, 0xee, 0x1e, 0x9a,
|
||||||
0xc1, 0xa6, 0x37, 0x48, 0xfb, 0xe8, 0xe0, 0x84, 0x6c, 0x9c, 0x10, 0xae, 0xae, 0xd6, 0x26, 0x6a,
|
0xeb, 0xac, 0x7b, 0x9d, 0xb4, 0x0f, 0xf7, 0x8f, 0xc9, 0xfa, 0x31, 0xe1, 0xea, 0x6a, 0x35, 0x53,
|
||||||
0xfa, 0xa6, 0xe7, 0x61, 0x3f, 0xd4, 0xd7, 0x3e, 0x82, 0x92, 0x4e, 0xac, 0xba, 0x19, 0x98, 0xfb,
|
0xd3, 0x33, 0x5c, 0x17, 0x7b, 0x81, 0xbe, 0xf6, 0x09, 0x94, 0x1a, 0xc4, 0xac, 0x19, 0xbe, 0xb1,
|
||||||
0xae, 0xbe, 0x87, 0x56, 0xa1, 0x10, 0xb8, 0x47, 0xd8, 0x29, 0x4b, 0x15, 0xa9, 0x3a, 0x6f, 0x70,
|
0xe7, 0x34, 0x76, 0xd1, 0x32, 0x14, 0x7c, 0xe7, 0x10, 0xdb, 0x65, 0xa9, 0x22, 0xad, 0xcd, 0xea,
|
||||||
0x01, 0x55, 0xa0, 0xe4, 0x7a, 0xd8, 0x37, 0x03, 0xdb, 0x75, 0x76, 0xea, 0x65, 0x99, 0xcd, 0x89,
|
0x5c, 0x40, 0x15, 0x28, 0x39, 0x2e, 0xf6, 0x0c, 0xdf, 0x72, 0xec, 0xed, 0x5a, 0x59, 0x66, 0x7d,
|
||||||
0x43, 0xe8, 0x6f, 0x30, 0xdb, 0xe5, 0x66, 0xca, 0x4a, 0x45, 0xaa, 0x96, 0x36, 0xd5, 0x1a, 0x61,
|
0x62, 0x13, 0xfa, 0x07, 0x4c, 0x77, 0xb9, 0x99, 0xb2, 0x52, 0x91, 0xd6, 0x4a, 0x1b, 0x6a, 0x95,
|
||||||
0x0e, 0x1c, 0x98, 0x9e, 0x7d, 0xe0, 0x99, 0xbe, 0xd9, 0x25, 0xb5, 0x70, 0x23, 0x63, 0xa0, 0xaa,
|
0x30, 0x07, 0xf6, 0x0d, 0xd7, 0xda, 0x77, 0x0d, 0xcf, 0xe8, 0x92, 0x6a, 0x30, 0x91, 0x3e, 0x50,
|
||||||
0x61, 0x61, 0xf3, 0xfa, 0x96, 0x68, 0x44, 0xca, 0x6d, 0x64, 0xb2, 0x73, 0xda, 0x1b, 0x09, 0x96,
|
0xd5, 0xb0, 0x30, 0x79, 0x6d, 0x53, 0x34, 0x22, 0xe5, 0x36, 0x92, 0xed, 0x9c, 0xf6, 0x4a, 0x82,
|
||||||
0x9e, 0xf7, 0xc8, 0x2b, 0x11, 0x68, 0x05, 0x4a, 0xbb, 0xc2, 0x2a, 0x0e, 0x57, 0x1c, 0x12, 0xbd,
|
0x85, 0xa7, 0x3d, 0xf2, 0x42, 0x04, 0x5a, 0x81, 0xd2, 0x8e, 0x30, 0x8a, 0xc3, 0x15, 0x9b, 0x44,
|
||||||
0x91, 0xf3, 0x7b, 0xa3, 0xc1, 0x82, 0xd7, 0x23, 0xaf, 0xf6, 0xdd, 0xff, 0x11, 0xec, 0xef, 0xd4,
|
0x6f, 0xe4, 0xfc, 0xde, 0x68, 0x30, 0xe7, 0xf6, 0xc8, 0x8b, 0x3d, 0xe7, 0x3d, 0x82, 0xbd, 0xed,
|
||||||
0x59, 0x34, 0xe6, 0x8d, 0xc8, 0x98, 0xf6, 0xad, 0x04, 0x68, 0xe4, 0x8b, 0xeb, 0x58, 0xee, 0x56,
|
0x1a, 0x8b, 0xc6, 0xac, 0x1e, 0x6a, 0xd3, 0xbe, 0x97, 0x00, 0x8d, 0x7c, 0x71, 0x6c, 0xd3, 0xd9,
|
||||||
0x5f, 0xdf, 0x43, 0x65, 0x98, 0xed, 0x98, 0x24, 0x68, 0xe2, 0x63, 0xe6, 0xce, 0x8c, 0x31, 0x10,
|
0xec, 0x37, 0x76, 0x51, 0x19, 0xa6, 0x3b, 0x06, 0xf1, 0x9b, 0xf8, 0x88, 0xb9, 0x33, 0xa5, 0x0f,
|
||||||
0xd1, 0x0d, 0x58, 0x34, 0x2d, 0xcb, 0xc7, 0x56, 0x14, 0x64, 0x74, 0x10, 0x6d, 0x42, 0xa9, 0x8b,
|
0x44, 0x74, 0x0d, 0xe6, 0x0d, 0xd3, 0xf4, 0xb0, 0x19, 0x06, 0x19, 0x6e, 0x44, 0x1b, 0x50, 0xea,
|
||||||
0x09, 0x31, 0x2d, 0xfc, 0x1f, 0x9b, 0x04, 0x65, 0xa5, 0xa2, 0x54, 0x4b, 0x9b, 0xcb, 0x35, 0x4a,
|
0x62, 0x42, 0x0c, 0x13, 0xff, 0xcf, 0x22, 0x7e, 0x59, 0xa9, 0x28, 0x6b, 0xa5, 0x8d, 0xc5, 0x2a,
|
||||||
0x25, 0x01, 0xb9, 0x21, 0x2a, 0xa1, 0x75, 0x98, 0x0f, 0x7c, 0xdb, 0xb2, 0x98, 0xaf, 0x33, 0xcc,
|
0xa5, 0x92, 0x80, 0x5c, 0x17, 0x95, 0xd0, 0x2a, 0xcc, 0xfa, 0x9e, 0x65, 0x9a, 0xcc, 0xd7, 0x29,
|
||||||
0xea, 0x68, 0x40, 0xfb, 0x2f, 0xa0, 0x06, 0x0e, 0x74, 0xf3, 0xf4, 0xb1, 0xd3, 0xd6, 0x6d, 0xa7,
|
0x66, 0x75, 0xd4, 0xa0, 0xfd, 0x1f, 0x50, 0x1d, 0xfb, 0x0d, 0xe3, 0xe4, 0xa1, 0xdd, 0x6e, 0x58,
|
||||||
0x89, 0x8f, 0x0d, 0x7c, 0x8c, 0xd6, 0xa0, 0x18, 0x82, 0xe3, 0x51, 0x0b, 0xa5, 0x78, 0x48, 0xe5,
|
0x76, 0x13, 0x1f, 0xe9, 0xf8, 0x08, 0xad, 0x40, 0x31, 0x00, 0xc7, 0xa3, 0x16, 0x48, 0xd1, 0x90,
|
||||||
0x44, 0x48, 0xb5, 0x13, 0x58, 0x49, 0xd8, 0x23, 0x1e, 0x05, 0xbe, 0xed, 0xfb, 0x4f, 0xdc, 0x36,
|
0xca, 0xb1, 0x90, 0x6a, 0xc7, 0xb0, 0x14, 0xb3, 0x47, 0x5c, 0x0a, 0x7c, 0xcb, 0xf3, 0x1e, 0x39,
|
||||||
0x66, 0x16, 0x0b, 0xc6, 0x40, 0xa4, 0x5b, 0x6d, 0xfb, 0xbe, 0x4e, 0xac, 0xd0, 0x5a, 0x28, 0xd1,
|
0x6d, 0xcc, 0x2c, 0x16, 0xf4, 0x81, 0x48, 0xa7, 0xda, 0xf2, 0xbc, 0x06, 0x31, 0x03, 0x6b, 0x81,
|
||||||
0x71, 0xdd, 0x3c, 0xa5, 0x91, 0xa2, 0xf1, 0x5d, 0x34, 0x42, 0x89, 0x8d, 0x33, 0xbb, 0x0c, 0x0b,
|
0x44, 0xdb, 0x1b, 0xc6, 0x09, 0x8d, 0x14, 0x8d, 0xef, 0xbc, 0x1e, 0x48, 0xac, 0x9d, 0xd9, 0x65,
|
||||||
0x1d, 0x67, 0x92, 0xf6, 0x21, 0x40, 0x13, 0x3b, 0x6d, 0x9d, 0x58, 0x14, 0xc0, 0xdb, 0x25, 0xf9,
|
0x58, 0x68, 0x3b, 0x93, 0xb4, 0x8f, 0x01, 0x9a, 0xd8, 0x6e, 0x37, 0x88, 0x49, 0x01, 0xbc, 0x5e,
|
||||||
0x37, 0x12, 0x94, 0x86, 0x9b, 0x73, 0xb4, 0x38, 0x8a, 0x16, 0x8f, 0xd0, 0xe2, 0x08, 0x5a, 0x2e,
|
0x92, 0x7f, 0x27, 0x41, 0x69, 0x38, 0x39, 0x47, 0x8b, 0xc3, 0x68, 0xf1, 0x08, 0x2d, 0x0e, 0xa1,
|
||||||
0x51, 0xcf, 0xf8, 0x3e, 0x3a, 0xb1, 0x86, 0x69, 0x12, 0x87, 0xa8, 0x46, 0xab, 0x63, 0x63, 0x27,
|
0xe5, 0x12, 0xf5, 0x8c, 0xcf, 0xd3, 0x20, 0xe6, 0x30, 0x4d, 0x62, 0x13, 0xd5, 0x68, 0x75, 0x2c,
|
||||||
0xe0, 0x1a, 0x05, 0xae, 0x21, 0x0c, 0x21, 0x15, 0xe6, 0x08, 0x76, 0xda, 0xfb, 0x76, 0x17, 0x97,
|
0x6c, 0xfb, 0x5c, 0xa3, 0xc0, 0x35, 0x84, 0x26, 0xa4, 0xc2, 0x0c, 0xc1, 0x76, 0x7b, 0xcf, 0xea,
|
||||||
0x8b, 0x15, 0xa9, 0xaa, 0x18, 0x43, 0x59, 0x6b, 0x41, 0xe9, 0x49, 0x07, 0x9b, 0x7e, 0x18, 0x9e,
|
0xe2, 0x72, 0xb1, 0x22, 0xad, 0x29, 0xfa, 0x50, 0xd6, 0x5a, 0x50, 0x7a, 0xd4, 0xc1, 0x86, 0x17,
|
||||||
0x35, 0x28, 0xf6, 0x22, 0xf9, 0xe5, 0x12, 0x35, 0xe1, 0x7a, 0x61, 0xe6, 0xb9, 0x83, 0x43, 0x39,
|
0x84, 0x67, 0x05, 0x8a, 0xbd, 0x50, 0x7e, 0xb9, 0x44, 0x4d, 0x38, 0x6e, 0x90, 0x79, 0xee, 0xe0,
|
||||||
0x1e, 0x3c, 0x25, 0x79, 0x08, 0x1f, 0xc1, 0xc2, 0x68, 0x93, 0x69, 0xc2, 0xa0, 0x7d, 0x2d, 0xc1,
|
0x50, 0x8e, 0x06, 0x4f, 0x89, 0x2f, 0xc2, 0x07, 0x30, 0x37, 0x9a, 0x64, 0x92, 0x30, 0x68, 0xdf,
|
||||||
0x52, 0x13, 0x53, 0x3c, 0x11, 0x2e, 0xa6, 0xfa, 0x5a, 0x86, 0x59, 0xcb, 0x77, 0x7b, 0xde, 0xd0,
|
0x4a, 0xb0, 0xd0, 0xc4, 0x14, 0x4f, 0x88, 0x8b, 0x89, 0xbe, 0x96, 0x61, 0xda, 0xf4, 0x9c, 0x9e,
|
||||||
0xd5, 0x81, 0x48, 0x57, 0x74, 0x39, 0x45, 0x42, 0xea, 0x70, 0x29, 0x8e, 0x60, 0x26, 0x99, 0x7e,
|
0x3b, 0x74, 0x75, 0x20, 0xd2, 0x11, 0x5d, 0x4e, 0x91, 0x80, 0x3a, 0x5c, 0x8a, 0x22, 0x98, 0x8a,
|
||||||
0x11, 0x7f, 0x21, 0x8a, 0x5f, 0xab, 0xc3, 0x72, 0xd4, 0xb5, 0xa9, 0x10, 0xee, 0xc2, 0x4a, 0x13,
|
0xa7, 0x5f, 0xc4, 0x5f, 0x08, 0xe3, 0xd7, 0x6a, 0xb0, 0x18, 0x76, 0x6d, 0x22, 0x84, 0x3b, 0xb0,
|
||||||
0x07, 0x21, 0x59, 0x9a, 0x81, 0x19, 0xf4, 0x88, 0x91, 0x74, 0x4d, 0x4a, 0xba, 0xb6, 0x06, 0x45,
|
0xd4, 0xc4, 0x7e, 0x40, 0x96, 0xa6, 0x6f, 0xf8, 0x3d, 0xa2, 0xc7, 0x5d, 0x93, 0xe2, 0xae, 0xad,
|
||||||
0xc2, 0xd4, 0x99, 0xc1, 0x82, 0x11, 0x4a, 0xda, 0x53, 0x58, 0x4d, 0x1a, 0x9c, 0xca, 0xb5, 0x07,
|
0x40, 0x91, 0x30, 0x75, 0x66, 0xb0, 0xa0, 0x07, 0x92, 0xf6, 0x18, 0x96, 0xe3, 0x06, 0x27, 0x72,
|
||||||
0xec, 0xe8, 0x9e, 0xdd, 0x35, 0xed, 0x05, 0xac, 0x36, 0x7e, 0x13, 0x17, 0x04, 0x90, 0x4a, 0x04,
|
0xed, 0x1e, 0x5b, 0xba, 0xa7, 0x77, 0x4d, 0x7b, 0x06, 0xcb, 0xf5, 0x3f, 0xc4, 0x05, 0x01, 0xa4,
|
||||||
0xe4, 0x67, 0x12, 0xac, 0xd4, 0x71, 0xa7, 0xd9, 0xf3, 0xb0, 0xdf, 0xa0, 0x59, 0x0e, 0x79, 0x2c,
|
0x12, 0x02, 0xf9, 0xa5, 0x04, 0x4b, 0x35, 0xdc, 0x69, 0xf6, 0x5c, 0xec, 0xd5, 0x69, 0x96, 0x03,
|
||||||
0xe6, 0x4b, 0x8a, 0xf1, 0x75, 0xc4, 0x1b, 0x39, 0x8b, 0x37, 0x4a, 0x94, 0x37, 0x13, 0xf9, 0x41,
|
0x1e, 0x8b, 0xf9, 0x92, 0x22, 0x7c, 0x1d, 0xf1, 0x46, 0x4e, 0xe3, 0x8d, 0x12, 0xe6, 0x4d, 0x26,
|
||||||
0x83, 0x9d, 0x74, 0x63, 0xaa, 0x60, 0xb7, 0x78, 0xb0, 0xe3, 0x80, 0x26, 0xf3, 0x60, 0x19, 0x14,
|
0x3f, 0x68, 0xb0, 0xe3, 0x6e, 0x4c, 0x14, 0xec, 0x16, 0x0f, 0x76, 0x14, 0x50, 0x36, 0x0f, 0x16,
|
||||||
0xca, 0x6c, 0x99, 0x31, 0x9b, 0xfe, 0xcc, 0x06, 0xa4, 0x7d, 0xca, 0x13, 0x73, 0x7e, 0x77, 0xa7,
|
0x41, 0xa1, 0xcc, 0x96, 0x19, 0xb3, 0xe9, 0xcf, 0x74, 0x40, 0xda, 0xe7, 0x3c, 0x31, 0x67, 0x77,
|
||||||
0xac, 0x8b, 0x4f, 0xd9, 0xe5, 0xf2, 0x9e, 0x6f, 0x07, 0xb8, 0x6e, 0x1f, 0x1e, 0x4e, 0x8f, 0x51,
|
0x77, 0xc2, 0x7d, 0xf1, 0x31, 0x3b, 0x5c, 0x3e, 0xf0, 0x2c, 0x1f, 0xd7, 0xac, 0x83, 0x83, 0xc9,
|
||||||
0xfb, 0x84, 0x85, 0x2b, 0x6a, 0xe9, 0x2d, 0x02, 0xf9, 0xaa, 0x00, 0x9a, 0xee, 0xb6, 0xed, 0xc3,
|
0x31, 0x6a, 0x9f, 0xb1, 0x70, 0x85, 0x2d, 0xbd, 0x46, 0x20, 0xdf, 0x14, 0x40, 0x6b, 0x38, 0x6d,
|
||||||
0xbe, 0xce, 0x6f, 0x56, 0x03, 0x9b, 0x2d, 0xea, 0xec, 0xf6, 0x69, 0x80, 0x1d, 0x62, 0xbb, 0x4e,
|
0xeb, 0xa0, 0xdf, 0xe0, 0x27, 0xab, 0x8e, 0x8d, 0x16, 0x75, 0x76, 0xeb, 0xc4, 0xc7, 0x36, 0xb1,
|
||||||
0xce, 0x53, 0x4c, 0x6b, 0xb4, 0xdb, 0xf3, 0x5b, 0x78, 0x54, 0x60, 0x07, 0x72, 0x84, 0xcc, 0x4a,
|
0x1c, 0x3b, 0xe7, 0x2a, 0xa6, 0x7b, 0xb4, 0xd3, 0xf3, 0x5a, 0x78, 0xb4, 0xc1, 0x0e, 0xe4, 0x10,
|
||||||
0xb2, 0xf8, 0x12, 0x4c, 0xe8, 0x46, 0xfb, 0x7d, 0x0f, 0x33, 0x6a, 0x16, 0x0c, 0x71, 0x08, 0x9d,
|
0x99, 0x95, 0xf8, 0xe6, 0x4b, 0x30, 0xa1, 0x13, 0xed, 0xf5, 0x5d, 0xcc, 0xa8, 0x59, 0xd0, 0xc5,
|
||||||
0xc2, 0x25, 0x3f, 0xee, 0x14, 0x7b, 0x24, 0x14, 0xd8, 0x23, 0x61, 0x8b, 0x3f, 0x12, 0x26, 0x62,
|
0x26, 0x74, 0x02, 0x17, 0xbc, 0xa8, 0x53, 0xec, 0x92, 0x50, 0x60, 0x97, 0x84, 0x4d, 0x7e, 0x49,
|
||||||
0xa8, 0x19, 0x69, 0x46, 0xb6, 0x9d, 0xc0, 0xef, 0x1b, 0xe9, 0x1b, 0xc4, 0x6f, 0xa6, 0x62, 0xf2,
|
0xc8, 0xc4, 0x50, 0xd5, 0x93, 0x8c, 0x6c, 0xd9, 0xbe, 0xd7, 0xd7, 0x93, 0x27, 0x88, 0x9e, 0x4c,
|
||||||
0x66, 0xba, 0x07, 0x32, 0x3e, 0x2d, 0xcf, 0xb2, 0x78, 0xaf, 0xd7, 0x2c, 0xd7, 0xb5, 0x3a, 0x98,
|
0xc5, 0xf8, 0xc9, 0x74, 0x07, 0x64, 0x7c, 0x52, 0x9e, 0x66, 0xf1, 0x5e, 0xad, 0x9a, 0x8e, 0x63,
|
||||||
0x3f, 0x4e, 0x5f, 0xf6, 0x0e, 0x6b, 0xcd, 0xc0, 0xb7, 0x1d, 0xeb, 0xff, 0x66, 0xa7, 0x87, 0x0d,
|
0x76, 0x30, 0xbf, 0x9c, 0x3e, 0xef, 0x1d, 0x54, 0x9b, 0xbe, 0x67, 0xd9, 0xe6, 0xfb, 0x46, 0xa7,
|
||||||
0x19, 0x9f, 0xa2, 0x47, 0xb0, 0x60, 0x06, 0x81, 0xd9, 0x7a, 0x85, 0xdb, 0x3b, 0xce, 0xa1, 0x5b,
|
0x87, 0x75, 0x19, 0x9f, 0xa0, 0x07, 0x30, 0x67, 0xf8, 0xbe, 0xd1, 0x7a, 0x81, 0xdb, 0xdb, 0xf6,
|
||||||
0x9e, 0xcb, 0xb1, 0x2e, 0xb2, 0x82, 0xd2, 0xc2, 0x26, 0x0c, 0x48, 0x79, 0xbe, 0x22, 0x55, 0xe7,
|
0x81, 0x53, 0x9e, 0xc9, 0x31, 0x2e, 0x34, 0x82, 0xd2, 0xc2, 0x22, 0x0c, 0x48, 0x79, 0xb6, 0x22,
|
||||||
0x8c, 0x81, 0x88, 0x36, 0x61, 0xd5, 0x26, 0xd4, 0x7d, 0xdf, 0x31, 0x3b, 0x23, 0xe0, 0x65, 0x60,
|
0xad, 0xcd, 0xe8, 0x03, 0x11, 0x6d, 0xc0, 0xb2, 0x45, 0xa8, 0xfb, 0x9e, 0x6d, 0x74, 0x46, 0xc0,
|
||||||
0x6a, 0xa9, 0x73, 0xa8, 0x06, 0xa8, 0x4b, 0xac, 0x7f, 0xdb, 0x3e, 0x09, 0x78, 0xfc, 0xd8, 0x0d,
|
0xcb, 0xc0, 0xd4, 0x12, 0xfb, 0x50, 0x15, 0x50, 0x97, 0x98, 0xff, 0xb5, 0x3c, 0xe2, 0xf3, 0xf8,
|
||||||
0x5b, 0x62, 0x37, 0x6c, 0xca, 0x8c, 0x8a, 0x41, 0xcd, 0x0e, 0x22, 0xe5, 0xf6, 0x11, 0xee, 0x87,
|
0xb1, 0x13, 0xb6, 0xc4, 0x4e, 0xd8, 0x84, 0x1e, 0x15, 0x83, 0x9a, 0x1e, 0x44, 0xca, 0xed, 0x43,
|
||||||
0xdc, 0xa0, 0x3f, 0xd1, 0x5f, 0xa0, 0xf0, 0x9a, 0x82, 0x08, 0xdf, 0xa0, 0x57, 0x52, 0x08, 0xf9,
|
0xdc, 0x0f, 0xb8, 0x41, 0x7f, 0xa2, 0xbf, 0x41, 0xe1, 0x25, 0x05, 0x11, 0xdc, 0x41, 0x2f, 0x25,
|
||||||
0x0c, 0xf7, 0x39, 0x4e, 0xae, 0xf9, 0x0f, 0xf9, 0xef, 0x92, 0xf6, 0x65, 0x01, 0xae, 0xd2, 0x0b,
|
0x10, 0xf2, 0x09, 0xee, 0x73, 0x9c, 0x5c, 0xf3, 0x5f, 0xf2, 0x3f, 0x25, 0xed, 0xeb, 0x02, 0x5c,
|
||||||
0xe9, 0x5d, 0x25, 0x64, 0x6f, 0x3c, 0x21, 0xff, 0xc5, 0x08, 0x39, 0x01, 0xc0, 0x1f, 0x6c, 0xfc,
|
0xa6, 0x07, 0xd2, 0x9b, 0x4a, 0xc8, 0xde, 0x78, 0x42, 0xfe, 0x87, 0x11, 0x32, 0x03, 0xc0, 0x3b,
|
||||||
0xbd, 0xb0, 0xf1, 0x67, 0x09, 0x2a, 0xe3, 0x93, 0x39, 0xed, 0xbb, 0x58, 0xcc, 0xa6, 0x92, 0xcc,
|
0x36, 0xbe, 0x2d, 0x6c, 0xfc, 0x55, 0x82, 0xca, 0xf8, 0x64, 0x4e, 0x7a, 0x2f, 0x16, 0xb3, 0xa9,
|
||||||
0x66, 0x7a, 0x3c, 0x66, 0xb2, 0xe2, 0x21, 0x66, 0xa3, 0x10, 0xcd, 0xc6, 0x1d, 0x28, 0xfa, 0x98,
|
0xc4, 0xb3, 0x99, 0x1c, 0x8f, 0xa9, 0xb4, 0x78, 0x88, 0xd9, 0x28, 0x84, 0xb3, 0x71, 0x0b, 0x8a,
|
||||||
0xf4, 0x3a, 0x41, 0xb9, 0xc8, 0x18, 0x7a, 0x91, 0x31, 0x74, 0x08, 0x16, 0x13, 0xcf, 0x08, 0x15,
|
0x1e, 0x26, 0xbd, 0x8e, 0x5f, 0x2e, 0x32, 0x86, 0x9e, 0x67, 0x0c, 0x1d, 0x82, 0xc5, 0xc4, 0xd5,
|
||||||
0xb4, 0xef, 0x15, 0xb8, 0xde, 0x18, 0xa2, 0xa5, 0xe1, 0x3c, 0xc7, 0xf9, 0xcb, 0x7c, 0x71, 0x8b,
|
0x03, 0x05, 0xb6, 0xf6, 0x1e, 0xb6, 0xdb, 0x6f, 0xf7, 0xda, 0xcb, 0x00, 0xf0, 0x6e, 0xed, 0xbd,
|
||||||
0x67, 0x53, 0x89, 0x9d, 0xcd, 0xc9, 0xe7, 0x2f, 0x8b, 0x5c, 0x85, 0x31, 0xe4, 0x22, 0xb0, 0xd6,
|
0x4d, 0x6b, 0x6f, 0x7c, 0x32, 0xff, 0x4c, 0x6b, 0xef, 0x17, 0x05, 0xae, 0xd6, 0x87, 0x3b, 0x0d,
|
||||||
0x8d, 0x66, 0xf0, 0x19, 0xee, 0xb3, 0x43, 0xcb, 0x43, 0xf2, 0x90, 0x85, 0x24, 0x07, 0xf2, 0x9a,
|
0x0d, 0xe7, 0x19, 0xd6, 0x5f, 0xea, 0xd7, 0xae, 0xb8, 0x36, 0x95, 0xc8, 0xda, 0xcc, 0x5e, 0x7f,
|
||||||
0x9e, 0x30, 0x63, 0x64, 0x98, 0x56, 0x0f, 0x01, 0x25, 0xb5, 0xe3, 0x99, 0x97, 0xf2, 0x66, 0x5e,
|
0x69, 0xe4, 0x2a, 0x8c, 0x21, 0x57, 0x05, 0x4a, 0x7e, 0xdf, 0xc5, 0x4f, 0x70, 0x9f, 0xad, 0x54,
|
||||||
0xce, 0xca, 0xbc, 0xf6, 0x9d, 0x04, 0x37, 0x26, 0xbb, 0x3e, 0x15, 0x4d, 0x9b, 0xb0, 0x42, 0x6c,
|
0x1a, 0x87, 0x59, 0x5d, 0x6c, 0x42, 0x04, 0x56, 0xba, 0xe1, 0x1c, 0x0f, 0x94, 0xa7, 0x59, 0xd0,
|
||||||
0xc7, 0xea, 0xe0, 0x21, 0x10, 0xc6, 0x23, 0xfe, 0x7d, 0x7e, 0x8d, 0x57, 0x3a, 0x71, 0x7e, 0xb8,
|
0xee, 0xb3, 0xa0, 0xe5, 0x88, 0x4d, 0xb5, 0x11, 0x33, 0xa3, 0xa7, 0x98, 0x56, 0x0f, 0x00, 0xc5,
|
||||||
0x21, 0x57, 0x34, 0xd2, 0x56, 0x6b, 0x3f, 0xca, 0xb0, 0x3e, 0x6e, 0xd5, 0x14, 0x7e, 0xfa, 0x59,
|
0xb5, 0xa3, 0xdc, 0x90, 0xf2, 0x72, 0x43, 0x4e, 0xe3, 0x86, 0xf6, 0x83, 0x04, 0xd7, 0xb2, 0x5d,
|
||||||
0x35, 0x99, 0x7b, 0xfa, 0xcf, 0x89, 0x9e, 0x9e, 0xbf, 0x20, 0xcf, 0x24, 0x12, 0xf9, 0xb6, 0x4a,
|
0x9f, 0x88, 0xc8, 0x4d, 0x58, 0x22, 0x96, 0x6d, 0x76, 0xf0, 0x10, 0x08, 0x63, 0x1a, 0x7f, 0x3d,
|
||||||
0xd4, 0x0f, 0x12, 0x5c, 0x9f, 0xf8, 0x00, 0x9a, 0xf2, 0x51, 0x59, 0x22, 0xbd, 0x56, 0x0b, 0x13,
|
0xbb, 0xc2, 0xef, 0x21, 0x62, 0xff, 0x70, 0x42, 0xae, 0xa8, 0x27, 0x8d, 0xd6, 0x7e, 0x92, 0x61,
|
||||||
0x22, 0x04, 0x13, 0xb1, 0x60, 0x32, 0xdb, 0x83, 0xc6, 0x80, 0x21, 0xaa, 0xa1, 0x4d, 0x80, 0x43,
|
0x75, 0xdc, 0xa8, 0x09, 0xfc, 0xf4, 0xd2, 0x76, 0x6d, 0xee, 0xe9, 0xbf, 0x33, 0x3d, 0x3d, 0xfb,
|
||||||
0xd3, 0xee, 0xe0, 0x36, 0x5b, 0x34, 0x93, 0xb9, 0x48, 0xd0, 0xd2, 0x7e, 0x91, 0xe1, 0x56, 0x1d,
|
0x96, 0x3d, 0x15, 0x4b, 0xe4, 0xeb, 0xda, 0xc4, 0x7e, 0x94, 0xe0, 0x6a, 0xe6, 0xe7, 0xc9, 0x84,
|
||||||
0x77, 0x70, 0x80, 0xdf, 0xe9, 0xda, 0x33, 0xb9, 0x59, 0x91, 0x55, 0x9d, 0x8a, 0x67, 0xbe, 0xfa,
|
0x9f, 0x7c, 0x25, 0xd2, 0x6b, 0xb5, 0x30, 0x21, 0x42, 0x30, 0x11, 0x0b, 0x26, 0xb3, 0x3d, 0x78,
|
||||||
0x66, 0x33, 0x4b, 0xfd, 0x5e, 0x16, 0xdb, 0xe7, 0x58, 0xac, 0xc7, 0xf2, 0x26, 0x7d, 0xa5, 0xf6,
|
0xb6, 0xd3, 0x45, 0x35, 0xb4, 0x01, 0x70, 0x60, 0x58, 0x1d, 0xdc, 0x66, 0x83, 0xa6, 0x52, 0x07,
|
||||||
0xb9, 0x04, 0xb7, 0x73, 0xc5, 0x7f, 0x2a, 0x1e, 0x9d, 0xe1, 0x06, 0x72, 0x61, 0x31, 0xc2, 0x12,
|
0x09, 0x5a, 0xda, 0x6f, 0x32, 0xdc, 0xa8, 0xe1, 0x0e, 0xf6, 0xf1, 0x1b, 0xbd, 0x3b, 0x65, 0x3f,
|
||||||
0x74, 0x0f, 0xe6, 0xf1, 0x60, 0x20, 0xec, 0xad, 0x5e, 0x88, 0x91, 0x69, 0xa4, 0x20, 0xfa, 0x26,
|
0x25, 0xa6, 0xed, 0x5f, 0xc5, 0x53, 0x1f, 0x8e, 0xd3, 0xa9, 0x87, 0xc1, 0x6e, 0x1a, 0xdb, 0x67,
|
||||||
0x67, 0xf9, 0xa6, 0x44, 0x3e, 0x58, 0x7f, 0x92, 0x61, 0x7e, 0x68, 0x0a, 0x1d, 0x64, 0x85, 0x56,
|
0x58, 0xac, 0xc7, 0xf2, 0x26, 0x79, 0xa4, 0xf6, 0x95, 0x04, 0x37, 0x73, 0xc5, 0x7f, 0x22, 0x1e,
|
||||||
0x62, 0x8e, 0xdf, 0x89, 0xee, 0x7c, 0xfe, 0xaa, 0x21, 0xe7, 0x2d, 0xff, 0x4a, 0x26, 0x1b, 0xb4,
|
0x9d, 0xe2, 0x8c, 0x72, 0x60, 0x3e, 0xc4, 0x12, 0x74, 0x07, 0x66, 0xf1, 0xa0, 0x21, 0xa8, 0x7c,
|
||||||
0xd8, 0x43, 0x8e, 0x17, 0xa2, 0xe8, 0x53, 0xed, 0x02, 0x7b, 0x1a, 0x72, 0xba, 0xca, 0xf8, 0x54,
|
0x9c, 0x8b, 0x90, 0x69, 0xa4, 0x20, 0xfa, 0x26, 0xa7, 0xf9, 0xa6, 0x84, 0x9e, 0x93, 0x7e, 0x96,
|
||||||
0xfd, 0xe0, 0x8c, 0x95, 0xe9, 0x76, 0xb4, 0x32, 0xa5, 0xe4, 0x4f, 0xa8, 0x47, 0x7d, 0x58, 0x10,
|
0x61, 0x76, 0x68, 0x0a, 0xed, 0xa7, 0x85, 0x56, 0x62, 0x8e, 0xdf, 0x0a, 0xcf, 0x7c, 0xf6, 0x5d,
|
||||||
0xa7, 0xd0, 0x03, 0x98, 0x3b, 0x0a, 0xe5, 0x30, 0x81, 0x63, 0x19, 0x3a, 0x54, 0x9e, 0x22, 0x99,
|
0x43, 0xce, 0xbb, 0xfd, 0x2b, 0xa9, 0x6c, 0xd0, 0x22, 0x57, 0x3d, 0xbe, 0x11, 0x85, 0x2f, 0x73,
|
||||||
0x6f, 0x24, 0x58, 0x11, 0xda, 0xd3, 0x34, 0x46, 0xac, 0x3f, 0x9d, 0xe8, 0x42, 0x4b, 0x39, 0xba,
|
0xe7, 0xd8, 0xe5, 0x91, 0xd3, 0x55, 0xc6, 0x27, 0xea, 0x47, 0xa7, 0xdc, 0x99, 0x6e, 0x86, 0x77,
|
||||||
0xd0, 0xf2, 0x99, 0xbb, 0xd0, 0x4a, 0xac, 0x0b, 0xbd, 0xf9, 0x05, 0x80, 0xd2, 0x25, 0x16, 0x7a,
|
0xa6, 0x84, 0xfc, 0x09, 0xfb, 0x51, 0x1f, 0xe6, 0xc4, 0x2e, 0x74, 0x0f, 0x66, 0x0e, 0x03, 0x39,
|
||||||
0x01, 0x4b, 0xb1, 0xee, 0x31, 0xba, 0x99, 0x12, 0x83, 0x64, 0xc7, 0x5a, 0xbd, 0x95, 0x47, 0x8d,
|
0x48, 0xe0, 0x58, 0x86, 0x0e, 0x95, 0x27, 0x48, 0xe6, 0x2b, 0x09, 0x96, 0x84, 0xe2, 0x11, 0x8d,
|
||||||
0x78, 0xc8, 0x85, 0xd5, 0xe7, 0xbd, 0x4e, 0x27, 0x3c, 0xbd, 0x5b, 0xfd, 0x26, 0x3e, 0x66, 0xfe,
|
0x11, 0xab, 0x1e, 0xc5, 0x6a, 0x44, 0x52, 0x8e, 0x1a, 0x91, 0x7c, 0xea, 0x1a, 0x91, 0x12, 0xa9,
|
||||||
0xfd, 0x39, 0x65, 0x7d, 0x9a, 0x22, 0xdd, 0xeb, 0x6e, 0x6e, 0x5d, 0x76, 0x2e, 0x67, 0xc3, 0xce,
|
0x11, 0x6d, 0x7c, 0x01, 0xa0, 0x74, 0x89, 0x89, 0x9e, 0xc1, 0x42, 0xa4, 0xb6, 0x83, 0xae, 0x27,
|
||||||
0x18, 0x5a, 0x0a, 0x3f, 0x79, 0x06, 0x5d, 0x6a, 0x75, 0x39, 0x3a, 0x40, 0x3c, 0xb4, 0x07, 0x50,
|
0xc4, 0x20, 0x5e, 0x4f, 0x52, 0x6f, 0xe4, 0x51, 0x23, 0x2e, 0x72, 0x60, 0xf9, 0x69, 0xaf, 0xd3,
|
||||||
0xc7, 0x1d, 0x9d, 0x58, 0xfc, 0x10, 0xa4, 0x6c, 0x34, 0x9a, 0xa6, 0x16, 0xae, 0x4d, 0xd0, 0x20,
|
0x09, 0x56, 0xef, 0x66, 0xbf, 0x89, 0x8f, 0x98, 0x7f, 0x7f, 0x4d, 0x18, 0x9f, 0xa4, 0x48, 0xe7,
|
||||||
0x1e, 0x6a, 0xc0, 0x72, 0xbc, 0x67, 0x85, 0xca, 0x6c, 0xe3, 0x94, 0x8e, 0x9a, 0x7a, 0x39, 0x63,
|
0xba, 0x9d, 0x5b, 0x97, 0xad, 0xcb, 0xe9, 0xe0, 0xdd, 0x1a, 0x2d, 0x04, 0x0f, 0x12, 0x83, 0x1a,
|
||||||
0x86, 0x78, 0x68, 0x03, 0xe6, 0x06, 0xed, 0x5d, 0xc4, 0x3d, 0x17, 0x5a, 0xca, 0xea, 0xc5, 0xd8,
|
0x92, 0xba, 0x18, 0x6e, 0x20, 0x2e, 0xda, 0x05, 0xa8, 0xe1, 0x4e, 0x83, 0x98, 0x7c, 0x11, 0x24,
|
||||||
0x08, 0xf1, 0xd0, 0x43, 0x58, 0x10, 0x3b, 0xa6, 0x68, 0x75, 0xf8, 0xc9, 0x27, 0xf4, 0x77, 0xd5,
|
0x4c, 0x34, 0xea, 0xa6, 0x16, 0xae, 0x64, 0x68, 0x10, 0x17, 0xd5, 0x61, 0x31, 0xfa, 0xa2, 0x8c,
|
||||||
0x4b, 0x29, 0xa3, 0xdc, 0xed, 0x78, 0x5f, 0x33, 0x74, 0x3b, 0xa5, 0x7f, 0x1a, 0xba, 0x9d, 0xda,
|
0xca, 0x6c, 0xe2, 0x84, 0xf7, 0x6e, 0xf5, 0x62, 0x4a, 0x0f, 0x71, 0xd1, 0x3a, 0xcc, 0x0c, 0x8a,
|
||||||
0x08, 0x6d, 0xc0, 0x72, 0x23, 0xdd, 0x50, 0x23, 0xd3, 0x50, 0x63, 0x8c, 0xa1, 0x94, 0x40, 0xa6,
|
0x2f, 0x88, 0x7b, 0x2e, 0x14, 0x7c, 0xd4, 0xf3, 0x91, 0x16, 0xe2, 0xa2, 0xfb, 0x30, 0x27, 0xd6,
|
||||||
0x74, 0xf2, 0x04, 0x43, 0x89, 0x40, 0xd6, 0x19, 0xcb, 0xc5, 0x66, 0x16, 0xfa, 0xd3, 0x40, 0x3b,
|
0x33, 0xd0, 0xf2, 0xf0, 0x41, 0x46, 0xa8, 0xbe, 0xa8, 0x17, 0x12, 0x5a, 0xb9, 0xdb, 0xd1, 0xaa,
|
||||||
0xd6, 0x2c, 0x53, 0xcb, 0xe9, 0x13, 0xc4, 0x43, 0x47, 0xb0, 0x3e, 0xee, 0x83, 0x0b, 0xdd, 0xc8,
|
0x43, 0xe0, 0x76, 0x42, 0x75, 0x23, 0x70, 0x3b, 0xb1, 0x4c, 0x51, 0x87, 0xc5, 0x7a, 0xb2, 0xa1,
|
||||||
0xf3, 0x81, 0xad, 0xde, 0xcc, 0xa1, 0x45, 0x3c, 0x74, 0x02, 0x95, 0x49, 0x4f, 0x67, 0x54, 0xcd,
|
0x7a, 0xaa, 0xa1, 0xfa, 0x18, 0x43, 0x09, 0x81, 0x4c, 0x78, 0x67, 0x17, 0x0c, 0xc5, 0x02, 0x59,
|
||||||
0xfb, 0x71, 0xa0, 0xde, 0xc9, 0xa9, 0x49, 0x3c, 0x74, 0x0c, 0xeb, 0x8f, 0xdb, 0xed, 0x6c, 0x94,
|
0x63, 0x2c, 0x17, 0x9f, 0x9a, 0xd1, 0x5f, 0x06, 0xda, 0x91, 0xa7, 0x6c, 0xb5, 0x9c, 0xdc, 0x41,
|
||||||
0xb7, 0x73, 0xf6, 0xb5, 0xd4, 0x6a, 0x3e, 0x45, 0xe2, 0xa1, 0x8f, 0xe1, 0x6a, 0xe4, 0x8a, 0x4f,
|
0x5c, 0x74, 0x08, 0xab, 0xe3, 0x9e, 0x43, 0xd0, 0xb5, 0x3c, 0xcf, 0x5f, 0xea, 0xf5, 0x1c, 0x5a,
|
||||||
0xd9, 0xf5, 0xee, 0xe0, 0x94, 0xe4, 0x78, 0x88, 0xa9, 0xf7, 0xf2, 0x2b, 0x13, 0x6f, 0xeb, 0xca,
|
0xc4, 0x45, 0xc7, 0x50, 0xc9, 0xba, 0x3a, 0xa3, 0xb5, 0xbc, 0x1f, 0x07, 0xea, 0xad, 0x9c, 0x9a,
|
||||||
0xfb, 0x97, 0x77, 0x3d, 0xec, 0x1c, 0xec, 0xe8, 0xc2, 0x1f, 0xbb, 0x5d, 0x62, 0x3d, 0xec, 0x12,
|
0x1c, 0xe5, 0xb8, 0x0f, 0xcf, 0x00, 0x65, 0xc6, 0x43, 0x43, 0x80, 0x32, 0xf3, 0x0b, 0xf6, 0x53,
|
||||||
0xeb, 0x65, 0x91, 0x89, 0x7f, 0xfd, 0x35, 0x00, 0x00, 0xff, 0xff, 0x33, 0xaa, 0x7d, 0xf5, 0x41,
|
0xb8, 0x1c, 0x3a, 0xdc, 0x13, 0xe6, 0xbb, 0x3d, 0x58, 0x1f, 0x39, 0xae, 0x60, 0xea, 0x9d, 0xfc,
|
||||||
0x1e, 0x00, 0x00,
|
0xca, 0xc4, 0xdd, 0xbc, 0xf4, 0xe1, 0xc5, 0x1d, 0x17, 0xdb, 0xfb, 0xdb, 0x0d, 0xe1, 0x0f, 0x17,
|
||||||
|
0x5d, 0x62, 0xde, 0xef, 0x12, 0xf3, 0x79, 0x91, 0x89, 0x7f, 0xff, 0x3d, 0x00, 0x00, 0xff, 0xff,
|
||||||
|
0x9c, 0xc6, 0x92, 0x59, 0xd9, 0x21, 0x00, 0x00,
|
||||||
}
|
}
|
||||||
|
@ -188,6 +188,27 @@ message SetMessageReactionExtensionsResp {
|
|||||||
bool isReact = 5;
|
bool isReact = 5;
|
||||||
repeated KeyValueResp result = 6;
|
repeated KeyValueResp result = 6;
|
||||||
}
|
}
|
||||||
|
message AddMessageReactionExtensionsReq {
|
||||||
|
string operationID = 1;
|
||||||
|
string sourceID = 2;
|
||||||
|
string opUserID = 3;
|
||||||
|
int32 sessionType = 4;
|
||||||
|
map <string, server_api_params.KeyValue>reactionExtensionList = 5;
|
||||||
|
string clientMsgID = 6;
|
||||||
|
google.protobuf.StringValue ex = 7;
|
||||||
|
google.protobuf.StringValue attachedInfo = 8;
|
||||||
|
bool isReact = 9;
|
||||||
|
bool isExternalExtensions = 10;
|
||||||
|
int64 msgFirstModifyTime = 11;
|
||||||
|
}
|
||||||
|
message AddMessageReactionExtensionsResp {
|
||||||
|
int32 errCode = 1;
|
||||||
|
string errMsg = 2;
|
||||||
|
string clientMsgID = 3;
|
||||||
|
int64 msgFirstModifyTime = 4;
|
||||||
|
bool isReact = 5;
|
||||||
|
repeated KeyValueResp result = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
message GetMessageListReactionExtensionsReq {
|
message GetMessageListReactionExtensionsReq {
|
||||||
@ -200,7 +221,8 @@ message GetMessageListReactionExtensionsReq {
|
|||||||
string clientMsgID = 1;
|
string clientMsgID = 1;
|
||||||
int64 msgFirstModifyTime = 2;
|
int64 msgFirstModifyTime = 2;
|
||||||
}
|
}
|
||||||
repeated MessageReactionKey messageReactionKeyList = 6;
|
repeated string typeKeyList = 6;
|
||||||
|
repeated MessageReactionKey messageReactionKeyList = 7;
|
||||||
}
|
}
|
||||||
message GetMessageListReactionExtensionsResp{
|
message GetMessageListReactionExtensionsResp{
|
||||||
int32 errCode = 1;
|
int32 errCode = 1;
|
||||||
@ -283,6 +305,6 @@ service msg {
|
|||||||
// modify msg
|
// modify msg
|
||||||
rpc SetMessageReactionExtensions(SetMessageReactionExtensionsReq) returns(SetMessageReactionExtensionsResp);
|
rpc SetMessageReactionExtensions(SetMessageReactionExtensionsReq) returns(SetMessageReactionExtensionsResp);
|
||||||
rpc GetMessageListReactionExtensions(GetMessageListReactionExtensionsReq) returns(GetMessageListReactionExtensionsResp);
|
rpc GetMessageListReactionExtensions(GetMessageListReactionExtensionsReq) returns(GetMessageListReactionExtensionsResp);
|
||||||
rpc AddMessageReactionExtensions(ModifyMessageReactionExtensionsReq) returns(ModifyMessageReactionExtensionsResp);
|
rpc AddMessageReactionExtensions(AddMessageReactionExtensionsReq) returns(AddMessageReactionExtensionsResp);
|
||||||
rpc DeleteMessageReactionExtensions(DeleteMessageListReactionExtensionsReq) returns(DeleteMessageListReactionExtensionsResp);
|
rpc DeleteMessageReactionExtensions(DeleteMessageListReactionExtensionsReq) returns(DeleteMessageListReactionExtensionsResp);
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -266,6 +266,9 @@ message MsgData {
|
|||||||
bytes msgDataList = 21;
|
bytes msgDataList = 21;
|
||||||
string attachedInfo = 22;
|
string attachedInfo = 22;
|
||||||
string ex = 23;
|
string ex = 23;
|
||||||
|
bool isReact = 24;
|
||||||
|
bool isExternalExtensions = 25;
|
||||||
|
int64 msgFirstModifyTime = 26;
|
||||||
|
|
||||||
}
|
}
|
||||||
message OfflinePushInfo{
|
message OfflinePushInfo{
|
||||||
|
@ -119,6 +119,22 @@ func DifferenceString(slice1, slice2 []string) []string {
|
|||||||
}
|
}
|
||||||
return n
|
return n
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func RemoveFromSlice(slice1, slice2 []string) []string {
|
||||||
|
for _, v1 := range slice1 {
|
||||||
|
for i2, v2 := range slice2 {
|
||||||
|
if v2 == v1 {
|
||||||
|
if i2 != len(slice2)-1 {
|
||||||
|
slice2 = append(slice2[:i2], slice2[i2+1:]...)
|
||||||
|
} else {
|
||||||
|
slice2 = append(slice2[:i2])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return slice2
|
||||||
|
}
|
||||||
|
|
||||||
func OperationIDGenerator() string {
|
func OperationIDGenerator() string {
|
||||||
return strconv.FormatInt(time.Now().UnixNano()+int64(rand.Uint32()), 10)
|
return strconv.FormatInt(time.Now().UnixNano()+int64(rand.Uint32()), 10)
|
||||||
}
|
}
|
||||||
@ -146,7 +162,8 @@ func Pb2String(pb proto.Message) (string, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func String2Pb(s string, pb proto.Message) error {
|
func String2Pb(s string, pb proto.Message) error {
|
||||||
return proto.Unmarshal([]byte(s), pb)
|
err := jsonpb.UnmarshalString(s, pb)
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func Map2Pb(m map[string]string) (pb proto.Message, err error) {
|
func Map2Pb(m map[string]string) (pb proto.Message, err error) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user