Merge remote-tracking branch 'origin/v2.3.0release' into v2.3.0release

# Conflicts:
#	pkg/base_info/group_api_struct.go
pull/261/head
skiffer-git 3 years ago
commit 68eed69221

@ -239,7 +239,7 @@ func GetGroupAllMemberList(c *gin.Context) {
memberListResp := api.GetGroupAllMemberResp{CommResp: api.CommResp{ErrCode: RpcResp.ErrCode, ErrMsg: RpcResp.ErrMsg}, MemberList: RpcResp.MemberList} memberListResp := api.GetGroupAllMemberResp{CommResp: api.CommResp{ErrCode: RpcResp.ErrCode, ErrMsg: RpcResp.ErrMsg}, MemberList: RpcResp.MemberList}
memberListResp.Data = jsonData.JsonDataList(memberListResp.MemberList) memberListResp.Data = jsonData.JsonDataList(memberListResp.MemberList)
log.NewInfo(req.OperationID, "GetGroupAllMember api return ", memberListResp) log.NewInfo(req.OperationID, "GetGroupAllMember api return ", len(memberListResp.MemberList))
c.JSON(http.StatusOK, memberListResp) c.JSON(http.StatusOK, memberListResp)
} }

@ -196,7 +196,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, newConn) ws.sendKickMsg(oldConn, newConn)
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))
@ -230,7 +230,7 @@ func (ws *WServer) MultiTerminalLoginChecker(uid string, platformID int, newConn
log.NewError(operationID, "conn close err", err.Error(), uid, platformID) log.NewError(operationID, "conn close err", err.Error(), uid, platformID)
} }
} else { } else {
log.NewWarn(operationID, "abnormal uid-conn ", uid, platformID, oldConnMap[platformID]) log.NewWarn(operationID, "normal uid-conn ", uid, platformID, oldConnMap[platformID])
} }
} else { } else {

@ -2,6 +2,7 @@ package logic
import ( import (
cbApi "Open_IM/pkg/call_back_struct" cbApi "Open_IM/pkg/call_back_struct"
"Open_IM/pkg/common/callback"
"Open_IM/pkg/common/config" "Open_IM/pkg/common/config"
"Open_IM/pkg/common/constant" "Open_IM/pkg/common/constant"
"Open_IM/pkg/common/http" "Open_IM/pkg/common/http"
@ -32,7 +33,7 @@ func callbackOfflinePush(operationID string, userIDList []string, msg *commonPb.
ContentType: msg.ContentType, ContentType: msg.ContentType,
SessionType: msg.SessionType, SessionType: msg.SessionType,
AtUserIDList: msg.AtUserIDList, AtUserIDList: msg.AtUserIDList,
Content: string(msg.Content), Content: callback.GetContent(msg),
} }
resp := &cbApi.CallbackBeforePushResp{CommonCallbackResp: &callbackResp} resp := &cbApi.CallbackBeforePushResp{CommonCallbackResp: &callbackResp}
if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackOfflinePush.CallbackTimeOut); err != nil { if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackOfflinePush.CallbackTimeOut); err != nil {
@ -74,7 +75,7 @@ func callbackOnlinePush(operationID string, userIDList []string, msg *commonPb.M
ContentType: msg.ContentType, ContentType: msg.ContentType,
SessionType: msg.SessionType, SessionType: msg.SessionType,
AtUserIDList: msg.AtUserIDList, AtUserIDList: msg.AtUserIDList,
Content: string(msg.Content), Content: callback.GetContent(msg),
} }
resp := &cbApi.CallbackBeforePushResp{CommonCallbackResp: &callbackResp} resp := &cbApi.CallbackBeforePushResp{CommonCallbackResp: &callbackResp}
if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackOnlinePush.CallbackTimeOut); err != nil { if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackOnlinePush.CallbackTimeOut); err != nil {
@ -110,7 +111,7 @@ func callbackBeforeSuperGroupOnlinePush(operationID string, groupID string, msg
ContentType: msg.ContentType, ContentType: msg.ContentType,
SessionType: msg.SessionType, SessionType: msg.SessionType,
AtUserIDList: msg.AtUserIDList, AtUserIDList: msg.AtUserIDList,
Content: string(msg.Content), Content: callback.GetContent(msg),
} }
resp := &cbApi.CallbackBeforeSuperGroupOnlinePushResp{CommonCallbackResp: &callbackResp} resp := &cbApi.CallbackBeforeSuperGroupOnlinePushResp{CommonCallbackResp: &callbackResp}
if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackBeforeSuperGroupOnlinePush.CallbackTimeOut); err != nil { if err := http.PostReturn(config.Config.Callback.CallbackUrl, req, resp, config.Config.Callback.CallbackBeforeSuperGroupOnlinePush.CallbackTimeOut); err != nil {

@ -30,6 +30,7 @@ func (rpc *rpcConversation) ModifyConversationField(c context.Context, req *pbCo
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String()) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
resp := &pbConversation.ModifyConversationFieldResp{} resp := &pbConversation.ModifyConversationFieldResp{}
var err error var err error
isSyncConversation := true
if req.Conversation.ConversationType == constant.GroupChatType { if req.Conversation.ConversationType == constant.GroupChatType {
groupInfo, err := imdb.GetGroupInfoByGroupID(req.Conversation.GroupID) groupInfo, err := imdb.GetGroupInfoByGroupID(req.Conversation.GroupID)
if err != nil { if err != nil {
@ -71,8 +72,7 @@ func (rpc *rpcConversation) ModifyConversationField(c context.Context, req *pbCo
case constant.FieldAttachedInfo: case constant.FieldAttachedInfo:
err = imdb.UpdateColumnsConversations(haveUserID, req.Conversation.ConversationID, map[string]interface{}{"attached_info": conversation.AttachedInfo}) err = imdb.UpdateColumnsConversations(haveUserID, req.Conversation.ConversationID, map[string]interface{}{"attached_info": conversation.AttachedInfo})
case constant.FieldUnread: case constant.FieldUnread:
err = imdb.UpdateColumnsConversations(haveUserID, req.Conversation.ConversationID, map[string]interface{}{"unread_count": conversation.UnreadCount}) isSyncConversation = false
} }
if err != nil { if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), "UpdateColumnsConversations error", err.Error()) log.NewError(req.OperationID, utils.GetSelfFuncName(), "UpdateColumnsConversations error", err.Error())
@ -97,9 +97,16 @@ func (rpc *rpcConversation) ModifyConversationField(c context.Context, req *pbCo
return resp, nil return resp, nil
} }
} else { } else {
for _, v := range req.UserIDList { if isSyncConversation {
chat.ConversationChangeNotification(req.OperationID, v) for _, v := range req.UserIDList {
chat.ConversationChangeNotification(req.OperationID, v)
}
} else {
for _, v := range req.UserIDList {
chat.ConversationUnreadChangeNotification(req.OperationID, v, req.Conversation.ConversationID)
}
} }
} }
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String()) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return", resp.String())
resp.CommonResp = &pbConversation.CommonResp{} resp.CommonResp = &pbConversation.CommonResp{}

@ -467,9 +467,7 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), userID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), userID)
} }
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
}
chat.MemberInvitedNotification(req.OperationID, req.GroupID, req.OpUserID, req.Reason, okUserIDList) chat.MemberInvitedNotification(req.OperationID, req.GroupID, req.OpUserID, req.Reason, okUserIDList)
} else { } else {
for _, v := range req.InvitedUserIDList { for _, v := range req.InvitedUserIDList {
@ -491,7 +489,6 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGroupAllMemberReq) (*pbGroup.GetGroupAllMemberResp, error) { func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGroupAllMemberReq) (*pbGroup.GetGroupAllMemberResp, error) {
log.NewInfo(req.OperationID, "GetGroupAllMember, args ", req.String()) log.NewInfo(req.OperationID, "GetGroupAllMember, args ", req.String())
var resp pbGroup.GetGroupAllMemberResp var resp pbGroup.GetGroupAllMemberResp
//groupInfo, err := imdb.GetGroupInfoByGroupID(req.GroupID)
groupInfo, err := rocksCache.GetGroupInfoFromCache(req.GroupID) groupInfo, err := rocksCache.GetGroupInfoFromCache(req.GroupID)
if err != nil { if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
@ -500,7 +497,7 @@ func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGro
return &resp, nil return &resp, nil
} }
if groupInfo.GroupType != constant.SuperGroup { if groupInfo.GroupType != constant.SuperGroup {
memberList, err := rocksCache.GetAllGroupMembersInfoFromCache(req.GroupID) memberList, err := rocksCache.GetGroupMembersInfoFromCache(req.Count, req.Offset, req.GroupID)
if err != nil { if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
resp.ErrCode = constant.ErrDB.ErrCode resp.ErrCode = constant.ErrDB.ErrCode
@ -513,7 +510,7 @@ func (s *groupServer) GetGroupAllMember(ctx context.Context, req *pbGroup.GetGro
resp.MemberList = append(resp.MemberList, &node) resp.MemberList = append(resp.MemberList, &node)
} }
} }
log.NewInfo(req.OperationID, "GetGroupAllMember rpc return ", resp.String()) log.NewInfo(req.OperationID, "GetGroupAllMember rpc return ", len(resp.MemberList))
return &resp, nil return &resp, nil
} }
@ -693,10 +690,11 @@ func (s *groupServer) KickGroupMember(ctx context.Context, req *pbGroup.KickGrou
if err != nil { if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), userID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), userID)
} }
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, userID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
}
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
}
chat.MemberKickedNotification(req, okUserIDList) chat.MemberKickedNotification(req, okUserIDList)
} else { } else {
for _, userID := range okUserIDList { for _, userID := range okUserIDList {
@ -721,22 +719,35 @@ func (s *groupServer) GetGroupMembersInfo(ctx context.Context, req *pbGroup.GetG
log.NewInfo(req.OperationID, "GetGroupMembersInfo args ", req.String()) log.NewInfo(req.OperationID, "GetGroupMembersInfo args ", req.String())
var resp pbGroup.GetGroupMembersInfoResp var resp pbGroup.GetGroupMembersInfoResp
resp.MemberList = []*open_im_sdk.GroupMemberFullInfo{} resp.MemberList = []*open_im_sdk.GroupMemberFullInfo{}
groupMembers, err := rocksCache.GetAllGroupMembersInfoFromCache(req.GroupID)
if err != nil { for _, userID := range req.MemberList {
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error()) groupMember, err := rocksCache.GetGroupMemberInfoFromCache(req.GroupID, userID)
resp.ErrCode = constant.ErrDB.ErrCode if err != nil {
resp.ErrMsg = constant.ErrDB.ErrMsg log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, userID, err.Error())
return &resp, nil continue
}
for _, member := range groupMembers {
if utils.IsContain(member.UserID, req.MemberList) {
var memberNode open_im_sdk.GroupMemberFullInfo
utils.CopyStructFields(&memberNode, member)
memberNode.JoinTime = int32(member.JoinTime.Unix())
resp.MemberList = append(resp.MemberList, &memberNode)
} }
var memberNode open_im_sdk.GroupMemberFullInfo
utils.CopyStructFields(&memberNode, groupMember)
memberNode.JoinTime = int32(groupMember.JoinTime.Unix())
resp.MemberList = append(resp.MemberList, &memberNode)
} }
//groupMembers, err := rocksCache.GetAllGroupMembersInfoFromCache(req.GroupID)
//if err != nil {
// log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error())
// resp.ErrCode = constant.ErrDB.ErrCode
// resp.ErrMsg = constant.ErrDB.ErrMsg
// return &resp, nil
//}
//for _, member := range groupMembers {
// if utils.IsContain(member.UserID, req.MemberList) {
// var memberNode open_im_sdk.GroupMemberFullInfo
// utils.CopyStructFields(&memberNode, member)
// memberNode.JoinTime = int32(member.JoinTime.Unix())
// resp.MemberList = append(resp.MemberList, &memberNode)
// }
//}
resp.ErrCode = 0 resp.ErrCode = 0
log.NewInfo(req.OperationID, "GetGroupMembersInfo rpc return ", resp.String()) log.NewInfo(req.OperationID, "GetGroupMembersInfo rpc return ", resp.String())
return &resp, nil return &resp, nil
@ -899,17 +910,17 @@ func (s *groupServer) GroupApplicationResponse(_ context.Context, req *pbGroup.G
return &pbGroup.GroupApplicationResponseResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil return &pbGroup.GroupApplicationResponseResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
} }
group, err := rocksCache.GetGroupInfoFromCache(req.GroupID) //group, err := rocksCache.GetGroupInfoFromCache(req.GroupID)
if err != nil { //if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error()) // log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error())
} //}
if group != nil { //if group != nil {
if group.GroupType != constant.SuperGroup { // if group.GroupType != constant.SuperGroup {
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { // if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) // log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} // }
} // }
} //}
chat.GroupApplicationAcceptedNotification(req) chat.GroupApplicationAcceptedNotification(req)
chat.MemberEnterNotification(req) chat.MemberEnterNotification(req)
@ -987,10 +998,10 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq)
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error()) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error())
} }
err = rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID) //err = rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID)
if err != nil { //if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error()) // log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error())
} //}
chat.MemberEnterDirectlyNotification(req.GroupID, req.OpUserID, req.OperationID) chat.MemberEnterDirectlyNotification(req.GroupID, req.OpUserID, req.OperationID)
log.NewInfo(req.OperationID, "JoinGroup rpc return ") log.NewInfo(req.OperationID, "JoinGroup rpc return ")
@ -1100,7 +1111,10 @@ func (s *groupServer) QuitGroup(ctx context.Context, req *pbGroup.QuitGroupReq)
} }
if groupInfo.GroupType != constant.SuperGroup { if groupInfo.GroupType != constant.SuperGroup {
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
// log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
//}
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.OpUserID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} }
if err := rocksCache.DelJoinedGroupIDListFromCache(req.OpUserID); err != nil { if err := rocksCache.DelJoinedGroupIDListFromCache(req.OpUserID); err != nil {
@ -1304,8 +1318,16 @@ func (s *groupServer) TransferGroupOwner(_ context.Context, req *pbGroup.Transfe
log.NewError(req.OperationID, "UpdateGroupMemberInfo failed ", groupMemberInfo) log.NewError(req.OperationID, "UpdateGroupMemberInfo failed ", groupMemberInfo)
return &pbGroup.TransferGroupOwnerResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil return &pbGroup.TransferGroupOwnerResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error()) // log.NewError(req.OperationID, utils.GetSelfFuncName(), req.GroupID, err.Error())
//}
err = rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.NewOwnerUserID)
if err != nil {
log.NewError(req.OperationID, "DelGroupMemberInfoFromCache failed ", req.GroupID, req.NewOwnerUserID)
}
err = rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.OldOwnerUserID)
if err != nil {
log.NewError(req.OperationID, "DelGroupMemberInfoFromCache failed ", req.GroupID, req.OldOwnerUserID)
} }
chat.GroupOwnerTransferredNotification(req) chat.GroupOwnerTransferredNotification(req)
return &pbGroup.TransferGroupOwnerResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil return &pbGroup.TransferGroupOwnerResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil
@ -1581,8 +1603,13 @@ func (s *groupServer) RemoveGroupMembersCMS(_ context.Context, req *pbGroup.Remo
log.NewError(req.OperationID, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String()) log.NewError(req.OperationID, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String())
return resp, http.WrapError(constant.ErrDB) return resp, http.WrapError(constant.ErrDB)
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupId); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupId); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupId) // log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupId)
//}
for _, userID := range resp.Success {
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupId, userID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupId, userID)
}
} }
chat.MemberKickedNotification(reqKick, resp.Success) chat.MemberKickedNotification(reqKick, resp.Success)
@ -1643,9 +1670,9 @@ func (s *groupServer) AddGroupMembersCMS(_ context.Context, req *pbGroup.AddGrou
log.NewError(req.OperationId, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String()) log.NewError(req.OperationId, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String())
return resp, http.WrapError(constant.ErrDB) return resp, http.WrapError(constant.ErrDB)
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupId); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupId); err != nil {
log.NewError(req.OperationId, utils.GetSelfFuncName(), err.Error(), req.GroupId) // log.NewError(req.OperationId, utils.GetSelfFuncName(), err.Error(), req.GroupId)
} //}
chat.MemberInvitedNotification(req.OperationId, req.GroupId, req.OpUserId, "admin add you to group", resp.Success) chat.MemberInvitedNotification(req.OperationId, req.GroupId, req.OpUserId, "admin add you to group", resp.Success)
return resp, nil return resp, nil
@ -1767,9 +1794,9 @@ func (s *groupServer) DismissGroup(ctx context.Context, req *pbGroup.DismissGrou
log.NewError(req.OperationID, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String()) log.NewError(req.OperationID, "DelGroupMemberIDListFromCache rpc logic call failed ", cacheResp.String())
return &pbGroup.DismissGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: cacheResp.CommonResp.ErrCode, ErrMsg: cacheResp.CommonResp.ErrMsg}}, nil return &pbGroup.DismissGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: cacheResp.CommonResp.ErrCode, ErrMsg: cacheResp.CommonResp.ErrMsg}}, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) // log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} //}
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}) log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "rpc return ", pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""})
return &pbGroup.DismissGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil return &pbGroup.DismissGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: 0, ErrMsg: ""}}, nil
} }
@ -1815,7 +1842,10 @@ func (s *groupServer) MuteGroupMember(ctx context.Context, req *pbGroup.MuteGrou
log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo) log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo)
return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil return &pbGroup.MuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
// log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
//}
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.UserID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} }
chat.GroupMemberMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID, req.MutedSeconds) chat.GroupMemberMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID, req.MutedSeconds)
@ -1859,7 +1889,10 @@ func (s *groupServer) CancelMuteGroupMember(ctx context.Context, req *pbGroup.Ca
log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo) log.Error(req.OperationID, "UpdateGroupMemberInfo failed ", err.Error(), groupMemberInfo)
return &pbGroup.CancelMuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil return &pbGroup.CancelMuteGroupMemberResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
// log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
//}
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.UserID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} }
chat.GroupMemberCancelMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID) chat.GroupMemberCancelMutedNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID)
@ -1979,7 +2012,10 @@ func (s *groupServer) SetGroupMemberNickname(ctx context.Context, req *pbGroup.S
log.Error(req.OperationID, errMsg) log.Error(req.OperationID, errMsg)
return &pbGroup.SetGroupMemberNicknameResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil return &pbGroup.SetGroupMemberNicknameResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
// log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
//}
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.UserID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
} }
chat.GroupMemberInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID) chat.GroupMemberInfoSetNotification(req.OperationID, req.OpUserID, req.GroupID, req.UserID)
@ -2014,8 +2050,11 @@ func (s *groupServer) SetGroupMemberInfo(ctx context.Context, req *pbGroup.SetGr
resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg + ":" + err.Error() resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg + ":" + err.Error()
return resp, nil return resp, nil
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(req.GroupID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID) // log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID)
//}
if err := rocksCache.DelGroupMemberInfoFromCache(req.GroupID, req.UserID); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error(), req.GroupID, req.UserID)
} }
if req.RoleLevel != nil { if req.RoleLevel != nil {
switch req.RoleLevel.Value { switch req.RoleLevel.Value {

@ -2,6 +2,7 @@ package msg
import ( import (
cbApi "Open_IM/pkg/call_back_struct" cbApi "Open_IM/pkg/call_back_struct"
"Open_IM/pkg/common/callback"
"Open_IM/pkg/common/config" "Open_IM/pkg/common/config"
"Open_IM/pkg/common/constant" "Open_IM/pkg/common/constant"
"Open_IM/pkg/common/http" "Open_IM/pkg/common/http"
@ -12,7 +13,7 @@ import (
) )
func copyCallbackCommonReqStruct(msg *pbChat.SendMsgReq) cbApi.CommonCallbackReq { func copyCallbackCommonReqStruct(msg *pbChat.SendMsgReq) cbApi.CommonCallbackReq {
return cbApi.CommonCallbackReq{ req := cbApi.CommonCallbackReq{
SendID: msg.MsgData.SendID, SendID: msg.MsgData.SendID,
ServerMsgID: msg.MsgData.ServerMsgID, ServerMsgID: msg.MsgData.ServerMsgID,
ClientMsgID: msg.MsgData.ClientMsgID, ClientMsgID: msg.MsgData.ClientMsgID,
@ -24,10 +25,11 @@ func copyCallbackCommonReqStruct(msg *pbChat.SendMsgReq) cbApi.CommonCallbackReq
ContentType: msg.MsgData.ContentType, ContentType: msg.MsgData.ContentType,
Status: msg.MsgData.Status, Status: msg.MsgData.Status,
CreateTime: msg.MsgData.CreateTime, CreateTime: msg.MsgData.CreateTime,
Content: string(msg.MsgData.Content),
AtUserIDList: msg.MsgData.AtUserIDList, AtUserIDList: msg.MsgData.AtUserIDList,
SenderFaceURL: msg.MsgData.SenderFaceURL, SenderFaceURL: msg.MsgData.SenderFaceURL,
Content: callback.GetContent(msg.MsgData),
} }
return req
} }
func callbackBeforeSendSingleMsg(msg *pbChat.SendMsgReq) cbApi.CommonCallbackResp { func callbackBeforeSendSingleMsg(msg *pbChat.SendMsgReq) cbApi.CommonCallbackResp {

@ -68,3 +68,15 @@ func ConversationChangeNotification(operationID, userID string) {
tips.DefaultTips = config.Config.Notification.ConversationOptUpdate.DefaultTips.Tips tips.DefaultTips = config.Config.Notification.ConversationOptUpdate.DefaultTips.Tips
SetConversationNotification(operationID, userID, userID, constant.ConversationOptChangeNotification, ConversationChangedTips, tips) SetConversationNotification(operationID, userID, userID, constant.ConversationOptChangeNotification, ConversationChangedTips, tips)
} }
//会话未读数同步
func ConversationUnreadChangeNotification(operationID, userID, conversationID string) {
log.NewInfo(operationID, utils.GetSelfFuncName())
ConversationChangedTips := &open_im_sdk.ConversationUpdateTips{
UserID: userID,
ConversationIDList: []string{conversationID},
}
var tips open_im_sdk.TipsComm
tips.DefaultTips = config.Config.Notification.ConversationOptUpdate.DefaultTips.Tips
SetConversationNotification(operationID, userID, userID, constant.ConversationUnreadNotification, ConversationChangedTips, tips)
}

@ -831,7 +831,7 @@ func Notification(n *NotificationMsg) {
unReadCount = config.Config.Notification.ConversationSetPrivate.Conversation.UnreadCount unReadCount = config.Config.Notification.ConversationSetPrivate.Conversation.UnreadCount
case constant.DeleteMessageNotification: case constant.DeleteMessageNotification:
reliabilityLevel = constant.ReliableNotificationNoMsg reliabilityLevel = constant.ReliableNotificationNoMsg
case constant.SuperGroupUpdateNotification: case constant.SuperGroupUpdateNotification, constant.ConversationUnreadNotification:
reliabilityLevel = constant.UnreliableNotification reliabilityLevel = constant.UnreliableNotification
} }
switch reliabilityLevel { switch reliabilityLevel {

@ -482,8 +482,12 @@ func (s *userServer) SyncJoinedGroupMemberFaceURL(userID string, faceURL string,
log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupMemberInfo) log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupMemberInfo)
continue continue
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(groupID); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(groupID); err != nil {
log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupID) // log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupID)
// continue
//}
if err := rocksCache.DelGroupMemberInfoFromCache(groupID, userID); err != nil {
log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupID, userID)
continue continue
} }
chat.GroupMemberInfoSetNotification(operationID, opUserID, groupID, userID) chat.GroupMemberInfoSetNotification(operationID, opUserID, groupID, userID)
@ -508,9 +512,12 @@ func (s *userServer) SyncJoinedGroupMemberNickname(userID string, newNickname, o
log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupMemberInfo) log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), groupMemberInfo)
continue continue
} }
if err := rocksCache.DelAllGroupMembersInfoFromCache(v); err != nil { //if err := rocksCache.DelAllGroupMembersInfoFromCache(v); err != nil {
// log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), v)
// continue
//}
if err := rocksCache.DelGroupMemberInfoFromCache(v, userID); err != nil {
log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), v) log.NewError(operationID, utils.GetSelfFuncName(), err.Error(), v)
continue
} }
chat.GroupMemberInfoSetNotification(operationID, opUserID, v, userID) chat.GroupMemberInfoSetNotification(operationID, opUserID, v, userID)
} }

@ -0,0 +1,23 @@
package callback
import (
"Open_IM/pkg/common/constant"
server_api_params "Open_IM/pkg/proto/sdk_ws"
"github.com/golang/protobuf/proto"
)
func GetContent(msg *server_api_params.MsgData) string {
if msg.ContentType >= constant.NotificationBegin && msg.ContentType <= constant.NotificationEnd {
var tips server_api_params.TipsComm
_ = proto.Unmarshal(msg.Content, &tips)
//marshaler := jsonpb.Marshaler{
// OrigName: true,
// EnumsAsInts: false,
// EmitDefaults: false,
//}
content := tips.JsonDetail
return content
} else {
return string(msg.Content)
}
}

@ -103,6 +103,7 @@ const (
SuperGroupNotificationEnd = 1699 SuperGroupNotificationEnd = 1699
ConversationPrivateChatNotification = 1701 ConversationPrivateChatNotification = 1701
ConversationUnreadNotification = 1702
OrganizationChangedNotification = 1801 OrganizationChangedNotification = 1801
@ -225,6 +226,13 @@ const (
WorkMomentLikeNotification = 1 WorkMomentLikeNotification = 1
WorkMomentAtUserNotification = 2 WorkMomentAtUserNotification = 2
) )
const (
// diffusionType
WriteDiffusion = 0
ReadDiffusion = 1
)
const ( const (
AtAllString = "AtAllTag" AtAllString = "AtAllTag"
AtNormal = 0 AtNormal = 0

@ -5,22 +5,26 @@ package constant
const ( const (
//Platform ID //Platform ID
IOSPlatformID = 1 IOSPlatformID = 1
AndroidPlatformID = 2 AndroidPlatformID = 2
WindowsPlatformID = 3 WindowsPlatformID = 3
OSXPlatformID = 4 OSXPlatformID = 4
WebPlatformID = 5 WebPlatformID = 5
MiniWebPlatformID = 6 MiniWebPlatformID = 6
LinuxPlatformID = 7 LinuxPlatformID = 7
AndroidPadPlatformID = 8
IPadPlatformID = 9
//Platform string match to Platform ID //Platform string match to Platform ID
IOSPlatformStr = "IOS" IOSPlatformStr = "IOS"
AndroidPlatformStr = "Android" AndroidPlatformStr = "Android"
WindowsPlatformStr = "Windows" WindowsPlatformStr = "Windows"
OSXPlatformStr = "OSX" OSXPlatformStr = "OSX"
WebPlatformStr = "Web" WebPlatformStr = "Web"
MiniWebPlatformStr = "MiniWeb" MiniWebPlatformStr = "MiniWeb"
LinuxPlatformStr = "Linux" LinuxPlatformStr = "Linux"
AndroidPadPlatformStr = "APad"
IPadPlatformStr = "IPad"
//terminal types //terminal types
TerminalPC = "PC" TerminalPC = "PC"
@ -28,22 +32,26 @@ const (
) )
var PlatformID2Name = map[int]string{ var PlatformID2Name = map[int]string{
IOSPlatformID: IOSPlatformStr, IOSPlatformID: IOSPlatformStr,
AndroidPlatformID: AndroidPlatformStr, AndroidPlatformID: AndroidPlatformStr,
WindowsPlatformID: WindowsPlatformStr, WindowsPlatformID: WindowsPlatformStr,
OSXPlatformID: OSXPlatformStr, OSXPlatformID: OSXPlatformStr,
WebPlatformID: WebPlatformStr, WebPlatformID: WebPlatformStr,
MiniWebPlatformID: MiniWebPlatformStr, MiniWebPlatformID: MiniWebPlatformStr,
LinuxPlatformID: LinuxPlatformStr, LinuxPlatformID: LinuxPlatformStr,
AndroidPadPlatformID: AndroidPadPlatformStr,
IPadPlatformID: IPadPlatformStr,
} }
var PlatformName2ID = map[string]int{ var PlatformName2ID = map[string]int{
IOSPlatformStr: IOSPlatformID, IOSPlatformStr: IOSPlatformID,
AndroidPlatformStr: AndroidPlatformID, AndroidPlatformStr: AndroidPlatformID,
WindowsPlatformStr: WindowsPlatformID, WindowsPlatformStr: WindowsPlatformID,
OSXPlatformStr: OSXPlatformID, OSXPlatformStr: OSXPlatformID,
WebPlatformStr: WebPlatformID, WebPlatformStr: WebPlatformID,
MiniWebPlatformStr: MiniWebPlatformID, MiniWebPlatformStr: MiniWebPlatformID,
LinuxPlatformStr: LinuxPlatformID, LinuxPlatformStr: LinuxPlatformID,
AndroidPadPlatformStr: AndroidPadPlatformID,
IPadPlatformStr: IPadPlatformID,
} }
var Platform2class = map[string]string{ var Platform2class = map[string]string{
IOSPlatformStr: TerminalMobile, IOSPlatformStr: TerminalMobile,

@ -34,6 +34,7 @@ const (
FcmToken = "FCM_TOKEN:" FcmToken = "FCM_TOKEN:"
groupUserMinSeq = "GROUP_USER_MIN_SEQ:" groupUserMinSeq = "GROUP_USER_MIN_SEQ:"
groupMaxSeq = "GROUP_MAX_SEQ:" groupMaxSeq = "GROUP_MAX_SEQ:"
groupMinSeq = "GROUP_MIN_SEQ:"
sendMsgFailedFlag = "SEND_MSG_FAILED_FLAG:" sendMsgFailedFlag = "SEND_MSG_FAILED_FLAG:"
) )
@ -115,6 +116,11 @@ func (d *DataBases) SetGroupMaxSeq(groupID string, maxSeq uint64) error {
return d.RDB.Set(context.Background(), key, maxSeq, 0).Err() return d.RDB.Set(context.Background(), key, maxSeq, 0).Err()
} }
func (d *DataBases) SetGroupMinSeq(groupID string, minSeq uint32) error {
key := groupMinSeq + groupID
return d.RDB.Set(context.Background(), key, minSeq, 0).Err()
}
//Store userid and platform class to redis //Store userid and platform class to redis
func (d *DataBases) AddTokenFlag(userID string, platformID int, token string, flag int) error { func (d *DataBases) AddTokenFlag(userID string, platformID int, token string, flag int) error {
key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID) key := uidPidToken + userID + ":" + constant.PlatformIDToName(platformID)

@ -208,6 +208,49 @@ func DelGroupMemberInfoFromCache(groupID, userID string) error {
return db.DB.Rc.TagAsDeleted(groupMemberInfoCache + groupID + "-" + userID) return db.DB.Rc.TagAsDeleted(groupMemberInfoCache + groupID + "-" + userID)
} }
func GetGroupMembersInfoFromCache(count, offset int32, groupID string) ([]*db.GroupMember, error) {
groupMemberIDList, err := GetGroupMemberIDListFromCache(groupID)
if err != nil {
return nil, err
}
if count < 0 || offset < 0 {
return nil, nil
}
var groupMemberList []*db.GroupMember
var start, stop int32
start = offset
stop = offset + count
l := int32(len(groupMemberIDList))
if start > stop {
return nil, nil
}
if start >= l {
return nil, nil
}
if count != 0 {
if stop >= l {
stop = l
}
groupMemberIDList = groupMemberIDList[start:stop]
} else {
if l < 1000 {
stop = l
} else {
stop = 1000
}
groupMemberIDList = groupMemberIDList[start:stop]
}
//log.NewDebug("", utils.GetSelfFuncName(), "ID list: ", groupMemberIDList)
for _, userID := range groupMemberIDList {
groupMembers, err := GetGroupMemberInfoFromCache(groupID, userID)
if err != nil {
log.NewError("", utils.GetSelfFuncName(), err.Error(), groupID, userID)
}
groupMemberList = append(groupMemberList, groupMembers)
}
return groupMemberList, nil
}
func GetAllGroupMembersInfoFromCache(groupID string) ([]*db.GroupMember, error) { func GetAllGroupMembersInfoFromCache(groupID string) ([]*db.GroupMember, error) {
getGroupMemberInfo := func() (string, error) { getGroupMemberInfo := func() (string, error) {
groupMembers, err := imdb.GetGroupMemberListByGroupID(groupID) groupMembers, err := imdb.GetGroupMemberListByGroupID(groupID)

@ -46,7 +46,7 @@ func (m *GroupInfo) Reset() { *m = GroupInfo{} }
func (m *GroupInfo) String() string { return proto.CompactTextString(m) } func (m *GroupInfo) String() string { return proto.CompactTextString(m) }
func (*GroupInfo) ProtoMessage() {} func (*GroupInfo) ProtoMessage() {}
func (*GroupInfo) Descriptor() ([]byte, []int) { func (*GroupInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{0} return fileDescriptor_ws_aba301ea11ce8970, []int{0}
} }
func (m *GroupInfo) XXX_Unmarshal(b []byte) error { func (m *GroupInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupInfo.Unmarshal(m, b) return xxx_messageInfo_GroupInfo.Unmarshal(m, b)
@ -204,7 +204,7 @@ func (m *GroupInfoForSet) Reset() { *m = GroupInfoForSet{} }
func (m *GroupInfoForSet) String() string { return proto.CompactTextString(m) } func (m *GroupInfoForSet) String() string { return proto.CompactTextString(m) }
func (*GroupInfoForSet) ProtoMessage() {} func (*GroupInfoForSet) ProtoMessage() {}
func (*GroupInfoForSet) Descriptor() ([]byte, []int) { func (*GroupInfoForSet) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{1} return fileDescriptor_ws_aba301ea11ce8970, []int{1}
} }
func (m *GroupInfoForSet) XXX_Unmarshal(b []byte) error { func (m *GroupInfoForSet) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupInfoForSet.Unmarshal(m, b) return xxx_messageInfo_GroupInfoForSet.Unmarshal(m, b)
@ -309,7 +309,7 @@ func (m *GroupMemberFullInfo) Reset() { *m = GroupMemberFullInfo{} }
func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) } func (m *GroupMemberFullInfo) String() string { return proto.CompactTextString(m) }
func (*GroupMemberFullInfo) ProtoMessage() {} func (*GroupMemberFullInfo) ProtoMessage() {}
func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) { func (*GroupMemberFullInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{2} return fileDescriptor_ws_aba301ea11ce8970, []int{2}
} }
func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error { func (m *GroupMemberFullInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b) return xxx_messageInfo_GroupMemberFullInfo.Unmarshal(m, b)
@ -428,7 +428,7 @@ func (m *PublicUserInfo) Reset() { *m = PublicUserInfo{} }
func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) } func (m *PublicUserInfo) String() string { return proto.CompactTextString(m) }
func (*PublicUserInfo) ProtoMessage() {} func (*PublicUserInfo) ProtoMessage() {}
func (*PublicUserInfo) Descriptor() ([]byte, []int) { func (*PublicUserInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{3} return fileDescriptor_ws_aba301ea11ce8970, []int{3}
} }
func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error { func (m *PublicUserInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b) return xxx_messageInfo_PublicUserInfo.Unmarshal(m, b)
@ -504,7 +504,7 @@ func (m *UserInfo) Reset() { *m = UserInfo{} }
func (m *UserInfo) String() string { return proto.CompactTextString(m) } func (m *UserInfo) String() string { return proto.CompactTextString(m) }
func (*UserInfo) ProtoMessage() {} func (*UserInfo) ProtoMessage() {}
func (*UserInfo) Descriptor() ([]byte, []int) { func (*UserInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{4} return fileDescriptor_ws_aba301ea11ce8970, []int{4}
} }
func (m *UserInfo) XXX_Unmarshal(b []byte) error { func (m *UserInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserInfo.Unmarshal(m, b) return xxx_messageInfo_UserInfo.Unmarshal(m, b)
@ -618,7 +618,7 @@ func (m *FriendInfo) Reset() { *m = FriendInfo{} }
func (m *FriendInfo) String() string { return proto.CompactTextString(m) } func (m *FriendInfo) String() string { return proto.CompactTextString(m) }
func (*FriendInfo) ProtoMessage() {} func (*FriendInfo) ProtoMessage() {}
func (*FriendInfo) Descriptor() ([]byte, []int) { func (*FriendInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{5} return fileDescriptor_ws_aba301ea11ce8970, []int{5}
} }
func (m *FriendInfo) XXX_Unmarshal(b []byte) error { func (m *FriendInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendInfo.Unmarshal(m, b) return xxx_messageInfo_FriendInfo.Unmarshal(m, b)
@ -703,7 +703,7 @@ func (m *BlackInfo) Reset() { *m = BlackInfo{} }
func (m *BlackInfo) String() string { return proto.CompactTextString(m) } func (m *BlackInfo) String() string { return proto.CompactTextString(m) }
func (*BlackInfo) ProtoMessage() {} func (*BlackInfo) ProtoMessage() {}
func (*BlackInfo) Descriptor() ([]byte, []int) { func (*BlackInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{6} return fileDescriptor_ws_aba301ea11ce8970, []int{6}
} }
func (m *BlackInfo) XXX_Unmarshal(b []byte) error { func (m *BlackInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BlackInfo.Unmarshal(m, b) return xxx_messageInfo_BlackInfo.Unmarshal(m, b)
@ -786,7 +786,7 @@ func (m *GroupRequest) Reset() { *m = GroupRequest{} }
func (m *GroupRequest) String() string { return proto.CompactTextString(m) } func (m *GroupRequest) String() string { return proto.CompactTextString(m) }
func (*GroupRequest) ProtoMessage() {} func (*GroupRequest) ProtoMessage() {}
func (*GroupRequest) Descriptor() ([]byte, []int) { func (*GroupRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{7} return fileDescriptor_ws_aba301ea11ce8970, []int{7}
} }
func (m *GroupRequest) XXX_Unmarshal(b []byte) error { func (m *GroupRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupRequest.Unmarshal(m, b) return xxx_messageInfo_GroupRequest.Unmarshal(m, b)
@ -908,7 +908,7 @@ func (m *FriendRequest) Reset() { *m = FriendRequest{} }
func (m *FriendRequest) String() string { return proto.CompactTextString(m) } func (m *FriendRequest) String() string { return proto.CompactTextString(m) }
func (*FriendRequest) ProtoMessage() {} func (*FriendRequest) ProtoMessage() {}
func (*FriendRequest) Descriptor() ([]byte, []int) { func (*FriendRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{8} return fileDescriptor_ws_aba301ea11ce8970, []int{8}
} }
func (m *FriendRequest) XXX_Unmarshal(b []byte) error { func (m *FriendRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendRequest.Unmarshal(m, b) return xxx_messageInfo_FriendRequest.Unmarshal(m, b)
@ -1053,7 +1053,7 @@ func (m *Department) Reset() { *m = Department{} }
func (m *Department) String() string { return proto.CompactTextString(m) } func (m *Department) String() string { return proto.CompactTextString(m) }
func (*Department) ProtoMessage() {} func (*Department) ProtoMessage() {}
func (*Department) Descriptor() ([]byte, []int) { func (*Department) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{9} return fileDescriptor_ws_aba301ea11ce8970, []int{9}
} }
func (m *Department) XXX_Unmarshal(b []byte) error { func (m *Department) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Department.Unmarshal(m, b) return xxx_messageInfo_Department.Unmarshal(m, b)
@ -1164,7 +1164,7 @@ func (m *OrganizationUser) Reset() { *m = OrganizationUser{} }
func (m *OrganizationUser) String() string { return proto.CompactTextString(m) } func (m *OrganizationUser) String() string { return proto.CompactTextString(m) }
func (*OrganizationUser) ProtoMessage() {} func (*OrganizationUser) ProtoMessage() {}
func (*OrganizationUser) Descriptor() ([]byte, []int) { func (*OrganizationUser) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{10} return fileDescriptor_ws_aba301ea11ce8970, []int{10}
} }
func (m *OrganizationUser) XXX_Unmarshal(b []byte) error { func (m *OrganizationUser) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrganizationUser.Unmarshal(m, b) return xxx_messageInfo_OrganizationUser.Unmarshal(m, b)
@ -1278,7 +1278,7 @@ func (m *DepartmentMember) Reset() { *m = DepartmentMember{} }
func (m *DepartmentMember) String() string { return proto.CompactTextString(m) } func (m *DepartmentMember) String() string { return proto.CompactTextString(m) }
func (*DepartmentMember) ProtoMessage() {} func (*DepartmentMember) ProtoMessage() {}
func (*DepartmentMember) Descriptor() ([]byte, []int) { func (*DepartmentMember) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{11} return fileDescriptor_ws_aba301ea11ce8970, []int{11}
} }
func (m *DepartmentMember) XXX_Unmarshal(b []byte) error { func (m *DepartmentMember) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DepartmentMember.Unmarshal(m, b) return xxx_messageInfo_DepartmentMember.Unmarshal(m, b)
@ -1359,7 +1359,7 @@ func (m *UserDepartmentMember) Reset() { *m = UserDepartmentMember{} }
func (m *UserDepartmentMember) String() string { return proto.CompactTextString(m) } func (m *UserDepartmentMember) String() string { return proto.CompactTextString(m) }
func (*UserDepartmentMember) ProtoMessage() {} func (*UserDepartmentMember) ProtoMessage() {}
func (*UserDepartmentMember) Descriptor() ([]byte, []int) { func (*UserDepartmentMember) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{12} return fileDescriptor_ws_aba301ea11ce8970, []int{12}
} }
func (m *UserDepartmentMember) XXX_Unmarshal(b []byte) error { func (m *UserDepartmentMember) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserDepartmentMember.Unmarshal(m, b) return xxx_messageInfo_UserDepartmentMember.Unmarshal(m, b)
@ -1405,7 +1405,7 @@ func (m *UserInDepartment) Reset() { *m = UserInDepartment{} }
func (m *UserInDepartment) String() string { return proto.CompactTextString(m) } func (m *UserInDepartment) String() string { return proto.CompactTextString(m) }
func (*UserInDepartment) ProtoMessage() {} func (*UserInDepartment) ProtoMessage() {}
func (*UserInDepartment) Descriptor() ([]byte, []int) { func (*UserInDepartment) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{13} return fileDescriptor_ws_aba301ea11ce8970, []int{13}
} }
func (m *UserInDepartment) XXX_Unmarshal(b []byte) error { func (m *UserInDepartment) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserInDepartment.Unmarshal(m, b) return xxx_messageInfo_UserInDepartment.Unmarshal(m, b)
@ -1454,7 +1454,7 @@ func (m *PullMessageBySeqListReq) Reset() { *m = PullMessageBySeqListReq
func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) } func (m *PullMessageBySeqListReq) String() string { return proto.CompactTextString(m) }
func (*PullMessageBySeqListReq) ProtoMessage() {} func (*PullMessageBySeqListReq) ProtoMessage() {}
func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) { func (*PullMessageBySeqListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{14} return fileDescriptor_ws_aba301ea11ce8970, []int{14}
} }
func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error { func (m *PullMessageBySeqListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b) return xxx_messageInfo_PullMessageBySeqListReq.Unmarshal(m, b)
@ -1513,7 +1513,7 @@ func (m *SeqList) Reset() { *m = SeqList{} }
func (m *SeqList) String() string { return proto.CompactTextString(m) } func (m *SeqList) String() string { return proto.CompactTextString(m) }
func (*SeqList) ProtoMessage() {} func (*SeqList) ProtoMessage() {}
func (*SeqList) Descriptor() ([]byte, []int) { func (*SeqList) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{15} return fileDescriptor_ws_aba301ea11ce8970, []int{15}
} }
func (m *SeqList) XXX_Unmarshal(b []byte) error { func (m *SeqList) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SeqList.Unmarshal(m, b) return xxx_messageInfo_SeqList.Unmarshal(m, b)
@ -1551,7 +1551,7 @@ func (m *MsgDataList) Reset() { *m = MsgDataList{} }
func (m *MsgDataList) String() string { return proto.CompactTextString(m) } func (m *MsgDataList) String() string { return proto.CompactTextString(m) }
func (*MsgDataList) ProtoMessage() {} func (*MsgDataList) ProtoMessage() {}
func (*MsgDataList) Descriptor() ([]byte, []int) { func (*MsgDataList) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{16} return fileDescriptor_ws_aba301ea11ce8970, []int{16}
} }
func (m *MsgDataList) XXX_Unmarshal(b []byte) error { func (m *MsgDataList) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgDataList.Unmarshal(m, b) return xxx_messageInfo_MsgDataList.Unmarshal(m, b)
@ -1592,7 +1592,7 @@ func (m *PullMessageBySeqListResp) Reset() { *m = PullMessageBySeqListRe
func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) } func (m *PullMessageBySeqListResp) String() string { return proto.CompactTextString(m) }
func (*PullMessageBySeqListResp) ProtoMessage() {} func (*PullMessageBySeqListResp) ProtoMessage() {}
func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) { func (*PullMessageBySeqListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{17} return fileDescriptor_ws_aba301ea11ce8970, []int{17}
} }
func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error { func (m *PullMessageBySeqListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b) return xxx_messageInfo_PullMessageBySeqListResp.Unmarshal(m, b)
@ -1653,7 +1653,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_ws_860ddb8af4f21a5d, []int{18} return fileDescriptor_ws_aba301ea11ce8970, []int{18}
} }
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)
@ -1706,7 +1706,7 @@ func (m *MaxAndMinSeq) Reset() { *m = MaxAndMinSeq{} }
func (m *MaxAndMinSeq) String() string { return proto.CompactTextString(m) } func (m *MaxAndMinSeq) String() string { return proto.CompactTextString(m) }
func (*MaxAndMinSeq) ProtoMessage() {} func (*MaxAndMinSeq) ProtoMessage() {}
func (*MaxAndMinSeq) Descriptor() ([]byte, []int) { func (*MaxAndMinSeq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{19} return fileDescriptor_ws_aba301ea11ce8970, []int{19}
} }
func (m *MaxAndMinSeq) XXX_Unmarshal(b []byte) error { func (m *MaxAndMinSeq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MaxAndMinSeq.Unmarshal(m, b) return xxx_messageInfo_MaxAndMinSeq.Unmarshal(m, b)
@ -1755,7 +1755,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_ws_860ddb8af4f21a5d, []int{20} return fileDescriptor_ws_aba301ea11ce8970, []int{20}
} }
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)
@ -1823,7 +1823,7 @@ func (m *UserSendMsgResp) Reset() { *m = UserSendMsgResp{} }
func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) } func (m *UserSendMsgResp) String() string { return proto.CompactTextString(m) }
func (*UserSendMsgResp) ProtoMessage() {} func (*UserSendMsgResp) ProtoMessage() {}
func (*UserSendMsgResp) Descriptor() ([]byte, []int) { func (*UserSendMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{21} return fileDescriptor_ws_aba301ea11ce8970, []int{21}
} }
func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error { func (m *UserSendMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b) return xxx_messageInfo_UserSendMsgResp.Unmarshal(m, b)
@ -1896,7 +1896,7 @@ func (m *MsgData) Reset() { *m = MsgData{} }
func (m *MsgData) String() string { return proto.CompactTextString(m) } func (m *MsgData) String() string { return proto.CompactTextString(m) }
func (*MsgData) ProtoMessage() {} func (*MsgData) ProtoMessage() {}
func (*MsgData) Descriptor() ([]byte, []int) { func (*MsgData) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{22} return fileDescriptor_ws_aba301ea11ce8970, []int{22}
} }
func (m *MsgData) XXX_Unmarshal(b []byte) error { func (m *MsgData) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgData.Unmarshal(m, b) return xxx_messageInfo_MsgData.Unmarshal(m, b)
@ -2085,7 +2085,7 @@ func (m *OfflinePushInfo) Reset() { *m = OfflinePushInfo{} }
func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) } func (m *OfflinePushInfo) String() string { return proto.CompactTextString(m) }
func (*OfflinePushInfo) ProtoMessage() {} func (*OfflinePushInfo) ProtoMessage() {}
func (*OfflinePushInfo) Descriptor() ([]byte, []int) { func (*OfflinePushInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{23} return fileDescriptor_ws_aba301ea11ce8970, []int{23}
} }
func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error { func (m *OfflinePushInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b) return xxx_messageInfo_OfflinePushInfo.Unmarshal(m, b)
@ -2153,7 +2153,7 @@ func (m *TipsComm) Reset() { *m = TipsComm{} }
func (m *TipsComm) String() string { return proto.CompactTextString(m) } func (m *TipsComm) String() string { return proto.CompactTextString(m) }
func (*TipsComm) ProtoMessage() {} func (*TipsComm) ProtoMessage() {}
func (*TipsComm) Descriptor() ([]byte, []int) { func (*TipsComm) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{24} return fileDescriptor_ws_aba301ea11ce8970, []int{24}
} }
func (m *TipsComm) XXX_Unmarshal(b []byte) error { func (m *TipsComm) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TipsComm.Unmarshal(m, b) return xxx_messageInfo_TipsComm.Unmarshal(m, b)
@ -2210,7 +2210,7 @@ func (m *GroupCreatedTips) Reset() { *m = GroupCreatedTips{} }
func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) } func (m *GroupCreatedTips) String() string { return proto.CompactTextString(m) }
func (*GroupCreatedTips) ProtoMessage() {} func (*GroupCreatedTips) ProtoMessage() {}
func (*GroupCreatedTips) Descriptor() ([]byte, []int) { func (*GroupCreatedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{25} return fileDescriptor_ws_aba301ea11ce8970, []int{25}
} }
func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error { func (m *GroupCreatedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b) return xxx_messageInfo_GroupCreatedTips.Unmarshal(m, b)
@ -2279,7 +2279,7 @@ func (m *GroupInfoSetTips) Reset() { *m = GroupInfoSetTips{} }
func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) } func (m *GroupInfoSetTips) String() string { return proto.CompactTextString(m) }
func (*GroupInfoSetTips) ProtoMessage() {} func (*GroupInfoSetTips) ProtoMessage() {}
func (*GroupInfoSetTips) Descriptor() ([]byte, []int) { func (*GroupInfoSetTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{26} return fileDescriptor_ws_aba301ea11ce8970, []int{26}
} }
func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error { func (m *GroupInfoSetTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b) return xxx_messageInfo_GroupInfoSetTips.Unmarshal(m, b)
@ -2334,7 +2334,7 @@ func (m *JoinGroupApplicationTips) Reset() { *m = JoinGroupApplicationTi
func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) } func (m *JoinGroupApplicationTips) String() string { return proto.CompactTextString(m) }
func (*JoinGroupApplicationTips) ProtoMessage() {} func (*JoinGroupApplicationTips) ProtoMessage() {}
func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) { func (*JoinGroupApplicationTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{27} return fileDescriptor_ws_aba301ea11ce8970, []int{27}
} }
func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error { func (m *JoinGroupApplicationTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b) return xxx_messageInfo_JoinGroupApplicationTips.Unmarshal(m, b)
@ -2390,7 +2390,7 @@ func (m *MemberQuitTips) Reset() { *m = MemberQuitTips{} }
func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) } func (m *MemberQuitTips) String() string { return proto.CompactTextString(m) }
func (*MemberQuitTips) ProtoMessage() {} func (*MemberQuitTips) ProtoMessage() {}
func (*MemberQuitTips) Descriptor() ([]byte, []int) { func (*MemberQuitTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{28} return fileDescriptor_ws_aba301ea11ce8970, []int{28}
} }
func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error { func (m *MemberQuitTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b) return xxx_messageInfo_MemberQuitTips.Unmarshal(m, b)
@ -2445,7 +2445,7 @@ func (m *GroupApplicationAcceptedTips) Reset() { *m = GroupApplicationAc
func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) } func (m *GroupApplicationAcceptedTips) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationAcceptedTips) ProtoMessage() {} func (*GroupApplicationAcceptedTips) ProtoMessage() {}
func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) { func (*GroupApplicationAcceptedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{29} return fileDescriptor_ws_aba301ea11ce8970, []int{29}
} }
func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error { func (m *GroupApplicationAcceptedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b) return xxx_messageInfo_GroupApplicationAcceptedTips.Unmarshal(m, b)
@ -2500,7 +2500,7 @@ func (m *GroupApplicationRejectedTips) Reset() { *m = GroupApplicationRe
func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (m *GroupApplicationRejectedTips) String() string { return proto.CompactTextString(m) }
func (*GroupApplicationRejectedTips) ProtoMessage() {} func (*GroupApplicationRejectedTips) ProtoMessage() {}
func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) { func (*GroupApplicationRejectedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{30} return fileDescriptor_ws_aba301ea11ce8970, []int{30}
} }
func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error { func (m *GroupApplicationRejectedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b) return xxx_messageInfo_GroupApplicationRejectedTips.Unmarshal(m, b)
@ -2556,7 +2556,7 @@ func (m *GroupOwnerTransferredTips) Reset() { *m = GroupOwnerTransferred
func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) } func (m *GroupOwnerTransferredTips) String() string { return proto.CompactTextString(m) }
func (*GroupOwnerTransferredTips) ProtoMessage() {} func (*GroupOwnerTransferredTips) ProtoMessage() {}
func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) { func (*GroupOwnerTransferredTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{31} return fileDescriptor_ws_aba301ea11ce8970, []int{31}
} }
func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error { func (m *GroupOwnerTransferredTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b) return xxx_messageInfo_GroupOwnerTransferredTips.Unmarshal(m, b)
@ -2619,7 +2619,7 @@ func (m *MemberKickedTips) Reset() { *m = MemberKickedTips{} }
func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) } func (m *MemberKickedTips) String() string { return proto.CompactTextString(m) }
func (*MemberKickedTips) ProtoMessage() {} func (*MemberKickedTips) ProtoMessage() {}
func (*MemberKickedTips) Descriptor() ([]byte, []int) { func (*MemberKickedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{32} return fileDescriptor_ws_aba301ea11ce8970, []int{32}
} }
func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error { func (m *MemberKickedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b) return xxx_messageInfo_MemberKickedTips.Unmarshal(m, b)
@ -2682,7 +2682,7 @@ func (m *MemberInvitedTips) Reset() { *m = MemberInvitedTips{} }
func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) } func (m *MemberInvitedTips) String() string { return proto.CompactTextString(m) }
func (*MemberInvitedTips) ProtoMessage() {} func (*MemberInvitedTips) ProtoMessage() {}
func (*MemberInvitedTips) Descriptor() ([]byte, []int) { func (*MemberInvitedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{33} return fileDescriptor_ws_aba301ea11ce8970, []int{33}
} }
func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error { func (m *MemberInvitedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b) return xxx_messageInfo_MemberInvitedTips.Unmarshal(m, b)
@ -2744,7 +2744,7 @@ func (m *MemberEnterTips) Reset() { *m = MemberEnterTips{} }
func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) } func (m *MemberEnterTips) String() string { return proto.CompactTextString(m) }
func (*MemberEnterTips) ProtoMessage() {} func (*MemberEnterTips) ProtoMessage() {}
func (*MemberEnterTips) Descriptor() ([]byte, []int) { func (*MemberEnterTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{34} return fileDescriptor_ws_aba301ea11ce8970, []int{34}
} }
func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error { func (m *MemberEnterTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b) return xxx_messageInfo_MemberEnterTips.Unmarshal(m, b)
@ -2798,7 +2798,7 @@ func (m *GroupDismissedTips) Reset() { *m = GroupDismissedTips{} }
func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) } func (m *GroupDismissedTips) String() string { return proto.CompactTextString(m) }
func (*GroupDismissedTips) ProtoMessage() {} func (*GroupDismissedTips) ProtoMessage() {}
func (*GroupDismissedTips) Descriptor() ([]byte, []int) { func (*GroupDismissedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{35} return fileDescriptor_ws_aba301ea11ce8970, []int{35}
} }
func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error { func (m *GroupDismissedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b) return xxx_messageInfo_GroupDismissedTips.Unmarshal(m, b)
@ -2854,7 +2854,7 @@ func (m *GroupMemberMutedTips) Reset() { *m = GroupMemberMutedTips{} }
func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) } func (m *GroupMemberMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberMutedTips) ProtoMessage() {} func (*GroupMemberMutedTips) ProtoMessage() {}
func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) { func (*GroupMemberMutedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{36} return fileDescriptor_ws_aba301ea11ce8970, []int{36}
} }
func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error { func (m *GroupMemberMutedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b) return xxx_messageInfo_GroupMemberMutedTips.Unmarshal(m, b)
@ -2923,7 +2923,7 @@ func (m *GroupMemberCancelMutedTips) Reset() { *m = GroupMemberCancelMut
func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) } func (m *GroupMemberCancelMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberCancelMutedTips) ProtoMessage() {} func (*GroupMemberCancelMutedTips) ProtoMessage() {}
func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) { func (*GroupMemberCancelMutedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{37} return fileDescriptor_ws_aba301ea11ce8970, []int{37}
} }
func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error { func (m *GroupMemberCancelMutedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b) return xxx_messageInfo_GroupMemberCancelMutedTips.Unmarshal(m, b)
@ -2984,7 +2984,7 @@ func (m *GroupMutedTips) Reset() { *m = GroupMutedTips{} }
func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) } func (m *GroupMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupMutedTips) ProtoMessage() {} func (*GroupMutedTips) ProtoMessage() {}
func (*GroupMutedTips) Descriptor() ([]byte, []int) { func (*GroupMutedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{38} return fileDescriptor_ws_aba301ea11ce8970, []int{38}
} }
func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error { func (m *GroupMutedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b) return xxx_messageInfo_GroupMutedTips.Unmarshal(m, b)
@ -3038,7 +3038,7 @@ func (m *GroupCancelMutedTips) Reset() { *m = GroupCancelMutedTips{} }
func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) } func (m *GroupCancelMutedTips) String() string { return proto.CompactTextString(m) }
func (*GroupCancelMutedTips) ProtoMessage() {} func (*GroupCancelMutedTips) ProtoMessage() {}
func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) { func (*GroupCancelMutedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{39} return fileDescriptor_ws_aba301ea11ce8970, []int{39}
} }
func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error { func (m *GroupCancelMutedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b) return xxx_messageInfo_GroupCancelMutedTips.Unmarshal(m, b)
@ -3093,7 +3093,7 @@ func (m *GroupMemberInfoSetTips) Reset() { *m = GroupMemberInfoSetTips{}
func (m *GroupMemberInfoSetTips) String() string { return proto.CompactTextString(m) } func (m *GroupMemberInfoSetTips) String() string { return proto.CompactTextString(m) }
func (*GroupMemberInfoSetTips) ProtoMessage() {} func (*GroupMemberInfoSetTips) ProtoMessage() {}
func (*GroupMemberInfoSetTips) Descriptor() ([]byte, []int) { func (*GroupMemberInfoSetTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{40} return fileDescriptor_ws_aba301ea11ce8970, []int{40}
} }
func (m *GroupMemberInfoSetTips) XXX_Unmarshal(b []byte) error { func (m *GroupMemberInfoSetTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GroupMemberInfoSetTips.Unmarshal(m, b) return xxx_messageInfo_GroupMemberInfoSetTips.Unmarshal(m, b)
@ -3153,7 +3153,7 @@ func (m *OrganizationChangedTips) Reset() { *m = OrganizationChangedTips
func (m *OrganizationChangedTips) String() string { return proto.CompactTextString(m) } func (m *OrganizationChangedTips) String() string { return proto.CompactTextString(m) }
func (*OrganizationChangedTips) ProtoMessage() {} func (*OrganizationChangedTips) ProtoMessage() {}
func (*OrganizationChangedTips) Descriptor() ([]byte, []int) { func (*OrganizationChangedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{41} return fileDescriptor_ws_aba301ea11ce8970, []int{41}
} }
func (m *OrganizationChangedTips) XXX_Unmarshal(b []byte) error { func (m *OrganizationChangedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrganizationChangedTips.Unmarshal(m, b) return xxx_messageInfo_OrganizationChangedTips.Unmarshal(m, b)
@ -3200,7 +3200,7 @@ func (m *FriendApplication) Reset() { *m = FriendApplication{} }
func (m *FriendApplication) String() string { return proto.CompactTextString(m) } func (m *FriendApplication) String() string { return proto.CompactTextString(m) }
func (*FriendApplication) ProtoMessage() {} func (*FriendApplication) ProtoMessage() {}
func (*FriendApplication) Descriptor() ([]byte, []int) { func (*FriendApplication) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{42} return fileDescriptor_ws_aba301ea11ce8970, []int{42}
} }
func (m *FriendApplication) XXX_Unmarshal(b []byte) error { func (m *FriendApplication) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendApplication.Unmarshal(m, b) return xxx_messageInfo_FriendApplication.Unmarshal(m, b)
@ -3253,7 +3253,7 @@ func (m *FromToUserID) Reset() { *m = FromToUserID{} }
func (m *FromToUserID) String() string { return proto.CompactTextString(m) } func (m *FromToUserID) String() string { return proto.CompactTextString(m) }
func (*FromToUserID) ProtoMessage() {} func (*FromToUserID) ProtoMessage() {}
func (*FromToUserID) Descriptor() ([]byte, []int) { func (*FromToUserID) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{43} return fileDescriptor_ws_aba301ea11ce8970, []int{43}
} }
func (m *FromToUserID) XXX_Unmarshal(b []byte) error { func (m *FromToUserID) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FromToUserID.Unmarshal(m, b) return xxx_messageInfo_FromToUserID.Unmarshal(m, b)
@ -3299,7 +3299,7 @@ func (m *FriendApplicationTips) Reset() { *m = FriendApplicationTips{} }
func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) } func (m *FriendApplicationTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationTips) ProtoMessage() {} func (*FriendApplicationTips) ProtoMessage() {}
func (*FriendApplicationTips) Descriptor() ([]byte, []int) { func (*FriendApplicationTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{44} return fileDescriptor_ws_aba301ea11ce8970, []int{44}
} }
func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error { func (m *FriendApplicationTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b) return xxx_messageInfo_FriendApplicationTips.Unmarshal(m, b)
@ -3339,7 +3339,7 @@ func (m *FriendApplicationApprovedTips) Reset() { *m = FriendApplication
func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) } func (m *FriendApplicationApprovedTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationApprovedTips) ProtoMessage() {} func (*FriendApplicationApprovedTips) ProtoMessage() {}
func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) { func (*FriendApplicationApprovedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{45} return fileDescriptor_ws_aba301ea11ce8970, []int{45}
} }
func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error { func (m *FriendApplicationApprovedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b) return xxx_messageInfo_FriendApplicationApprovedTips.Unmarshal(m, b)
@ -3386,7 +3386,7 @@ func (m *FriendApplicationRejectedTips) Reset() { *m = FriendApplication
func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) } func (m *FriendApplicationRejectedTips) String() string { return proto.CompactTextString(m) }
func (*FriendApplicationRejectedTips) ProtoMessage() {} func (*FriendApplicationRejectedTips) ProtoMessage() {}
func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) { func (*FriendApplicationRejectedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{46} return fileDescriptor_ws_aba301ea11ce8970, []int{46}
} }
func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error { func (m *FriendApplicationRejectedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b) return xxx_messageInfo_FriendApplicationRejectedTips.Unmarshal(m, b)
@ -3434,7 +3434,7 @@ func (m *FriendAddedTips) Reset() { *m = FriendAddedTips{} }
func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) } func (m *FriendAddedTips) String() string { return proto.CompactTextString(m) }
func (*FriendAddedTips) ProtoMessage() {} func (*FriendAddedTips) ProtoMessage() {}
func (*FriendAddedTips) Descriptor() ([]byte, []int) { func (*FriendAddedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{47} return fileDescriptor_ws_aba301ea11ce8970, []int{47}
} }
func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error { func (m *FriendAddedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b) return xxx_messageInfo_FriendAddedTips.Unmarshal(m, b)
@ -3487,7 +3487,7 @@ func (m *FriendDeletedTips) Reset() { *m = FriendDeletedTips{} }
func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) } func (m *FriendDeletedTips) String() string { return proto.CompactTextString(m) }
func (*FriendDeletedTips) ProtoMessage() {} func (*FriendDeletedTips) ProtoMessage() {}
func (*FriendDeletedTips) Descriptor() ([]byte, []int) { func (*FriendDeletedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{48} return fileDescriptor_ws_aba301ea11ce8970, []int{48}
} }
func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error { func (m *FriendDeletedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b) return xxx_messageInfo_FriendDeletedTips.Unmarshal(m, b)
@ -3525,7 +3525,7 @@ func (m *BlackAddedTips) Reset() { *m = BlackAddedTips{} }
func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) } func (m *BlackAddedTips) String() string { return proto.CompactTextString(m) }
func (*BlackAddedTips) ProtoMessage() {} func (*BlackAddedTips) ProtoMessage() {}
func (*BlackAddedTips) Descriptor() ([]byte, []int) { func (*BlackAddedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{49} return fileDescriptor_ws_aba301ea11ce8970, []int{49}
} }
func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error { func (m *BlackAddedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b) return xxx_messageInfo_BlackAddedTips.Unmarshal(m, b)
@ -3563,7 +3563,7 @@ func (m *BlackDeletedTips) Reset() { *m = BlackDeletedTips{} }
func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) } func (m *BlackDeletedTips) String() string { return proto.CompactTextString(m) }
func (*BlackDeletedTips) ProtoMessage() {} func (*BlackDeletedTips) ProtoMessage() {}
func (*BlackDeletedTips) Descriptor() ([]byte, []int) { func (*BlackDeletedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{50} return fileDescriptor_ws_aba301ea11ce8970, []int{50}
} }
func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error { func (m *BlackDeletedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b) return xxx_messageInfo_BlackDeletedTips.Unmarshal(m, b)
@ -3601,7 +3601,7 @@ func (m *FriendInfoChangedTips) Reset() { *m = FriendInfoChangedTips{} }
func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) } func (m *FriendInfoChangedTips) String() string { return proto.CompactTextString(m) }
func (*FriendInfoChangedTips) ProtoMessage() {} func (*FriendInfoChangedTips) ProtoMessage() {}
func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) { func (*FriendInfoChangedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{51} return fileDescriptor_ws_aba301ea11ce8970, []int{51}
} }
func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error { func (m *FriendInfoChangedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b) return xxx_messageInfo_FriendInfoChangedTips.Unmarshal(m, b)
@ -3640,7 +3640,7 @@ func (m *UserInfoUpdatedTips) Reset() { *m = UserInfoUpdatedTips{} }
func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) } func (m *UserInfoUpdatedTips) String() string { return proto.CompactTextString(m) }
func (*UserInfoUpdatedTips) ProtoMessage() {} func (*UserInfoUpdatedTips) ProtoMessage() {}
func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) { func (*UserInfoUpdatedTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{52} return fileDescriptor_ws_aba301ea11ce8970, []int{52}
} }
func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error { func (m *UserInfoUpdatedTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b) return xxx_messageInfo_UserInfoUpdatedTips.Unmarshal(m, b)
@ -3670,6 +3670,7 @@ func (m *UserInfoUpdatedTips) GetUserID() string {
// ////////////////////conversation///////////////////// // ////////////////////conversation/////////////////////
type ConversationUpdateTips struct { type ConversationUpdateTips struct {
UserID string `protobuf:"bytes,1,opt,name=UserID" json:"UserID,omitempty"` UserID string `protobuf:"bytes,1,opt,name=UserID" json:"UserID,omitempty"`
ConversationIDList []string `protobuf:"bytes,2,rep,name=conversationIDList" json:"conversationIDList,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:"-"`
@ -3679,7 +3680,7 @@ func (m *ConversationUpdateTips) Reset() { *m = ConversationUpdateTips{}
func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) } func (m *ConversationUpdateTips) String() string { return proto.CompactTextString(m) }
func (*ConversationUpdateTips) ProtoMessage() {} func (*ConversationUpdateTips) ProtoMessage() {}
func (*ConversationUpdateTips) Descriptor() ([]byte, []int) { func (*ConversationUpdateTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{53} return fileDescriptor_ws_aba301ea11ce8970, []int{53}
} }
func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error { func (m *ConversationUpdateTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b) return xxx_messageInfo_ConversationUpdateTips.Unmarshal(m, b)
@ -3706,6 +3707,13 @@ func (m *ConversationUpdateTips) GetUserID() string {
return "" return ""
} }
func (m *ConversationUpdateTips) GetConversationIDList() []string {
if m != nil {
return m.ConversationIDList
}
return nil
}
type ConversationSetPrivateTips struct { type ConversationSetPrivateTips struct {
RecvID string `protobuf:"bytes,1,opt,name=recvID" json:"recvID,omitempty"` RecvID string `protobuf:"bytes,1,opt,name=recvID" json:"recvID,omitempty"`
SendID string `protobuf:"bytes,2,opt,name=sendID" json:"sendID,omitempty"` SendID string `protobuf:"bytes,2,opt,name=sendID" json:"sendID,omitempty"`
@ -3719,7 +3727,7 @@ func (m *ConversationSetPrivateTips) Reset() { *m = ConversationSetPriva
func (m *ConversationSetPrivateTips) String() string { return proto.CompactTextString(m) } func (m *ConversationSetPrivateTips) String() string { return proto.CompactTextString(m) }
func (*ConversationSetPrivateTips) ProtoMessage() {} func (*ConversationSetPrivateTips) ProtoMessage() {}
func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) { func (*ConversationSetPrivateTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{54} return fileDescriptor_ws_aba301ea11ce8970, []int{54}
} }
func (m *ConversationSetPrivateTips) XXX_Unmarshal(b []byte) error { func (m *ConversationSetPrivateTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversationSetPrivateTips.Unmarshal(m, b) return xxx_messageInfo_ConversationSetPrivateTips.Unmarshal(m, b)
@ -3774,7 +3782,7 @@ func (m *DeleteMessageTips) Reset() { *m = DeleteMessageTips{} }
func (m *DeleteMessageTips) String() string { return proto.CompactTextString(m) } func (m *DeleteMessageTips) String() string { return proto.CompactTextString(m) }
func (*DeleteMessageTips) ProtoMessage() {} func (*DeleteMessageTips) ProtoMessage() {}
func (*DeleteMessageTips) Descriptor() ([]byte, []int) { func (*DeleteMessageTips) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{55} return fileDescriptor_ws_aba301ea11ce8970, []int{55}
} }
func (m *DeleteMessageTips) XXX_Unmarshal(b []byte) error { func (m *DeleteMessageTips) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteMessageTips.Unmarshal(m, b) return xxx_messageInfo_DeleteMessageTips.Unmarshal(m, b)
@ -3828,7 +3836,7 @@ func (m *RequestPagination) Reset() { *m = RequestPagination{} }
func (m *RequestPagination) String() string { return proto.CompactTextString(m) } func (m *RequestPagination) String() string { return proto.CompactTextString(m) }
func (*RequestPagination) ProtoMessage() {} func (*RequestPagination) ProtoMessage() {}
func (*RequestPagination) Descriptor() ([]byte, []int) { func (*RequestPagination) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{56} return fileDescriptor_ws_aba301ea11ce8970, []int{56}
} }
func (m *RequestPagination) XXX_Unmarshal(b []byte) error { func (m *RequestPagination) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_RequestPagination.Unmarshal(m, b) return xxx_messageInfo_RequestPagination.Unmarshal(m, b)
@ -3874,7 +3882,7 @@ func (m *ResponsePagination) Reset() { *m = ResponsePagination{} }
func (m *ResponsePagination) String() string { return proto.CompactTextString(m) } func (m *ResponsePagination) String() string { return proto.CompactTextString(m) }
func (*ResponsePagination) ProtoMessage() {} func (*ResponsePagination) ProtoMessage() {}
func (*ResponsePagination) Descriptor() ([]byte, []int) { func (*ResponsePagination) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{57} return fileDescriptor_ws_aba301ea11ce8970, []int{57}
} }
func (m *ResponsePagination) XXX_Unmarshal(b []byte) error { func (m *ResponsePagination) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ResponsePagination.Unmarshal(m, b) return xxx_messageInfo_ResponsePagination.Unmarshal(m, b)
@ -3927,7 +3935,7 @@ func (m *SignalReq) Reset() { *m = SignalReq{} }
func (m *SignalReq) String() string { return proto.CompactTextString(m) } func (m *SignalReq) String() string { return proto.CompactTextString(m) }
func (*SignalReq) ProtoMessage() {} func (*SignalReq) ProtoMessage() {}
func (*SignalReq) Descriptor() ([]byte, []int) { func (*SignalReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{58} return fileDescriptor_ws_aba301ea11ce8970, []int{58}
} }
func (m *SignalReq) XXX_Unmarshal(b []byte) error { func (m *SignalReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalReq.Unmarshal(m, b) return xxx_messageInfo_SignalReq.Unmarshal(m, b)
@ -4194,7 +4202,7 @@ func (m *SignalResp) Reset() { *m = SignalResp{} }
func (m *SignalResp) String() string { return proto.CompactTextString(m) } func (m *SignalResp) String() string { return proto.CompactTextString(m) }
func (*SignalResp) ProtoMessage() {} func (*SignalResp) ProtoMessage() {}
func (*SignalResp) Descriptor() ([]byte, []int) { func (*SignalResp) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{59} return fileDescriptor_ws_aba301ea11ce8970, []int{59}
} }
func (m *SignalResp) XXX_Unmarshal(b []byte) error { func (m *SignalResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalResp.Unmarshal(m, b) return xxx_messageInfo_SignalResp.Unmarshal(m, b)
@ -4463,7 +4471,7 @@ func (m *InvitationInfo) Reset() { *m = InvitationInfo{} }
func (m *InvitationInfo) String() string { return proto.CompactTextString(m) } func (m *InvitationInfo) String() string { return proto.CompactTextString(m) }
func (*InvitationInfo) ProtoMessage() {} func (*InvitationInfo) ProtoMessage() {}
func (*InvitationInfo) Descriptor() ([]byte, []int) { func (*InvitationInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{60} return fileDescriptor_ws_aba301ea11ce8970, []int{60}
} }
func (m *InvitationInfo) XXX_Unmarshal(b []byte) error { func (m *InvitationInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_InvitationInfo.Unmarshal(m, b) return xxx_messageInfo_InvitationInfo.Unmarshal(m, b)
@ -4566,7 +4574,7 @@ func (m *ParticipantMetaData) Reset() { *m = ParticipantMetaData{} }
func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) } func (m *ParticipantMetaData) String() string { return proto.CompactTextString(m) }
func (*ParticipantMetaData) ProtoMessage() {} func (*ParticipantMetaData) ProtoMessage() {}
func (*ParticipantMetaData) Descriptor() ([]byte, []int) { func (*ParticipantMetaData) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{61} return fileDescriptor_ws_aba301ea11ce8970, []int{61}
} }
func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error { func (m *ParticipantMetaData) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b) return xxx_messageInfo_ParticipantMetaData.Unmarshal(m, b)
@ -4621,7 +4629,7 @@ func (m *SignalInviteReq) Reset() { *m = SignalInviteReq{} }
func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) } func (m *SignalInviteReq) String() string { return proto.CompactTextString(m) }
func (*SignalInviteReq) ProtoMessage() {} func (*SignalInviteReq) ProtoMessage() {}
func (*SignalInviteReq) Descriptor() ([]byte, []int) { func (*SignalInviteReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{62} return fileDescriptor_ws_aba301ea11ce8970, []int{62}
} }
func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error { func (m *SignalInviteReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b) return xxx_messageInfo_SignalInviteReq.Unmarshal(m, b)
@ -4682,7 +4690,7 @@ func (m *SignalInviteReply) Reset() { *m = SignalInviteReply{} }
func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) } func (m *SignalInviteReply) String() string { return proto.CompactTextString(m) }
func (*SignalInviteReply) ProtoMessage() {} func (*SignalInviteReply) ProtoMessage() {}
func (*SignalInviteReply) Descriptor() ([]byte, []int) { func (*SignalInviteReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{63} return fileDescriptor_ws_aba301ea11ce8970, []int{63}
} }
func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error { func (m *SignalInviteReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b) return xxx_messageInfo_SignalInviteReply.Unmarshal(m, b)
@ -4737,7 +4745,7 @@ func (m *SignalInviteInGroupReq) Reset() { *m = SignalInviteInGroupReq{}
func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) } func (m *SignalInviteInGroupReq) String() string { return proto.CompactTextString(m) }
func (*SignalInviteInGroupReq) ProtoMessage() {} func (*SignalInviteInGroupReq) ProtoMessage() {}
func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) { func (*SignalInviteInGroupReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{64} return fileDescriptor_ws_aba301ea11ce8970, []int{64}
} }
func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error { func (m *SignalInviteInGroupReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b) return xxx_messageInfo_SignalInviteInGroupReq.Unmarshal(m, b)
@ -4798,7 +4806,7 @@ func (m *SignalInviteInGroupReply) Reset() { *m = SignalInviteInGroupRep
func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) } func (m *SignalInviteInGroupReply) String() string { return proto.CompactTextString(m) }
func (*SignalInviteInGroupReply) ProtoMessage() {} func (*SignalInviteInGroupReply) ProtoMessage() {}
func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) { func (*SignalInviteInGroupReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{65} return fileDescriptor_ws_aba301ea11ce8970, []int{65}
} }
func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error { func (m *SignalInviteInGroupReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b) return xxx_messageInfo_SignalInviteInGroupReply.Unmarshal(m, b)
@ -4853,7 +4861,7 @@ func (m *SignalCancelReq) Reset() { *m = SignalCancelReq{} }
func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) } func (m *SignalCancelReq) String() string { return proto.CompactTextString(m) }
func (*SignalCancelReq) ProtoMessage() {} func (*SignalCancelReq) ProtoMessage() {}
func (*SignalCancelReq) Descriptor() ([]byte, []int) { func (*SignalCancelReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{66} return fileDescriptor_ws_aba301ea11ce8970, []int{66}
} }
func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error { func (m *SignalCancelReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b) return xxx_messageInfo_SignalCancelReq.Unmarshal(m, b)
@ -4911,7 +4919,7 @@ func (m *SignalCancelReply) Reset() { *m = SignalCancelReply{} }
func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) } func (m *SignalCancelReply) String() string { return proto.CompactTextString(m) }
func (*SignalCancelReply) ProtoMessage() {} func (*SignalCancelReply) ProtoMessage() {}
func (*SignalCancelReply) Descriptor() ([]byte, []int) { func (*SignalCancelReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{67} return fileDescriptor_ws_aba301ea11ce8970, []int{67}
} }
func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error { func (m *SignalCancelReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b) return xxx_messageInfo_SignalCancelReply.Unmarshal(m, b)
@ -4946,7 +4954,7 @@ func (m *SignalAcceptReq) Reset() { *m = SignalAcceptReq{} }
func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) } func (m *SignalAcceptReq) String() string { return proto.CompactTextString(m) }
func (*SignalAcceptReq) ProtoMessage() {} func (*SignalAcceptReq) ProtoMessage() {}
func (*SignalAcceptReq) Descriptor() ([]byte, []int) { func (*SignalAcceptReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{68} return fileDescriptor_ws_aba301ea11ce8970, []int{68}
} }
func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error { func (m *SignalAcceptReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b) return xxx_messageInfo_SignalAcceptReq.Unmarshal(m, b)
@ -5014,7 +5022,7 @@ func (m *SignalAcceptReply) Reset() { *m = SignalAcceptReply{} }
func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) } func (m *SignalAcceptReply) String() string { return proto.CompactTextString(m) }
func (*SignalAcceptReply) ProtoMessage() {} func (*SignalAcceptReply) ProtoMessage() {}
func (*SignalAcceptReply) Descriptor() ([]byte, []int) { func (*SignalAcceptReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{69} return fileDescriptor_ws_aba301ea11ce8970, []int{69}
} }
func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error { func (m *SignalAcceptReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b) return xxx_messageInfo_SignalAcceptReply.Unmarshal(m, b)
@ -5068,7 +5076,7 @@ func (m *SignalHungUpReq) Reset() { *m = SignalHungUpReq{} }
func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) } func (m *SignalHungUpReq) String() string { return proto.CompactTextString(m) }
func (*SignalHungUpReq) ProtoMessage() {} func (*SignalHungUpReq) ProtoMessage() {}
func (*SignalHungUpReq) Descriptor() ([]byte, []int) { func (*SignalHungUpReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{70} return fileDescriptor_ws_aba301ea11ce8970, []int{70}
} }
func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error { func (m *SignalHungUpReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b) return xxx_messageInfo_SignalHungUpReq.Unmarshal(m, b)
@ -5119,7 +5127,7 @@ func (m *SignalHungUpReply) Reset() { *m = SignalHungUpReply{} }
func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) } func (m *SignalHungUpReply) String() string { return proto.CompactTextString(m) }
func (*SignalHungUpReply) ProtoMessage() {} func (*SignalHungUpReply) ProtoMessage() {}
func (*SignalHungUpReply) Descriptor() ([]byte, []int) { func (*SignalHungUpReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{71} return fileDescriptor_ws_aba301ea11ce8970, []int{71}
} }
func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error { func (m *SignalHungUpReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b) return xxx_messageInfo_SignalHungUpReply.Unmarshal(m, b)
@ -5154,7 +5162,7 @@ func (m *SignalRejectReq) Reset() { *m = SignalRejectReq{} }
func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) } func (m *SignalRejectReq) String() string { return proto.CompactTextString(m) }
func (*SignalRejectReq) ProtoMessage() {} func (*SignalRejectReq) ProtoMessage() {}
func (*SignalRejectReq) Descriptor() ([]byte, []int) { func (*SignalRejectReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{72} return fileDescriptor_ws_aba301ea11ce8970, []int{72}
} }
func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error { func (m *SignalRejectReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b) return xxx_messageInfo_SignalRejectReq.Unmarshal(m, b)
@ -5219,7 +5227,7 @@ func (m *SignalRejectReply) Reset() { *m = SignalRejectReply{} }
func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) } func (m *SignalRejectReply) String() string { return proto.CompactTextString(m) }
func (*SignalRejectReply) ProtoMessage() {} func (*SignalRejectReply) ProtoMessage() {}
func (*SignalRejectReply) Descriptor() ([]byte, []int) { func (*SignalRejectReply) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{73} return fileDescriptor_ws_aba301ea11ce8970, []int{73}
} }
func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error { func (m *SignalRejectReply) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b) return xxx_messageInfo_SignalRejectReply.Unmarshal(m, b)
@ -5253,7 +5261,7 @@ func (m *DelMsgListReq) Reset() { *m = DelMsgListReq{} }
func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) } func (m *DelMsgListReq) String() string { return proto.CompactTextString(m) }
func (*DelMsgListReq) ProtoMessage() {} func (*DelMsgListReq) ProtoMessage() {}
func (*DelMsgListReq) Descriptor() ([]byte, []int) { func (*DelMsgListReq) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{74} return fileDescriptor_ws_aba301ea11ce8970, []int{74}
} }
func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error { func (m *DelMsgListReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b) return xxx_messageInfo_DelMsgListReq.Unmarshal(m, b)
@ -5313,7 +5321,7 @@ func (m *DelMsgListResp) Reset() { *m = DelMsgListResp{} }
func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) } func (m *DelMsgListResp) String() string { return proto.CompactTextString(m) }
func (*DelMsgListResp) ProtoMessage() {} func (*DelMsgListResp) ProtoMessage() {}
func (*DelMsgListResp) Descriptor() ([]byte, []int) { func (*DelMsgListResp) Descriptor() ([]byte, []int) {
return fileDescriptor_ws_860ddb8af4f21a5d, []int{75} return fileDescriptor_ws_aba301ea11ce8970, []int{75}
} }
func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error { func (m *DelMsgListResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b) return xxx_messageInfo_DelMsgListResp.Unmarshal(m, b)
@ -5430,14 +5438,14 @@ func init() {
proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp") proto.RegisterType((*DelMsgListResp)(nil), "server_api_params.DelMsgListResp")
} }
func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_860ddb8af4f21a5d) } func init() { proto.RegisterFile("sdk_ws/ws.proto", fileDescriptor_ws_aba301ea11ce8970) }
var fileDescriptor_ws_860ddb8af4f21a5d = []byte{ var fileDescriptor_ws_aba301ea11ce8970 = []byte{
// 3499 bytes of a gzipped FileDescriptorProto // 3512 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3b, 0xcd, 0x6f, 0x24, 0x47, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x3b, 0xcd, 0x6f, 0x24, 0x47,
0xf5, 0xbf, 0xee, 0xf1, 0x8c, 0x3d, 0x6f, 0xfc, 0x31, 0xee, 0xdd, 0x38, 0xf3, 0x33, 0x9b, 0xc5, 0xf5, 0xbf, 0xee, 0xf1, 0x8c, 0x3d, 0x6f, 0xfc, 0x31, 0xee, 0xdd, 0x38, 0xf3, 0x33, 0x9b, 0xc5,
0x74, 0xac, 0x24, 0x2c, 0xc1, 0x1b, 0x6d, 0x08, 0x82, 0x7c, 0x2c, 0xf2, 0x47, 0xf6, 0x23, 0xd9, 0x74, 0xac, 0x24, 0x2c, 0xc1, 0x8b, 0x36, 0x04, 0x41, 0x3e, 0x16, 0xf9, 0x23, 0xfb, 0x91, 0xec,
0xb1, 0x9d, 0x9e, 0xdd, 0x04, 0x11, 0xa4, 0xa5, 0x3d, 0x5d, 0x1e, 0xf7, 0xba, 0xa7, 0xab, 0xdd, 0xd8, 0x4e, 0xcf, 0x6e, 0x82, 0x08, 0xd2, 0xa6, 0x3d, 0x5d, 0x1e, 0xf7, 0xba, 0xa7, 0xab, 0xdd,
0x1f, 0xde, 0x35, 0x17, 0x24, 0x90, 0x10, 0x37, 0x2e, 0x20, 0x24, 0x2e, 0x48, 0x5c, 0x10, 0x28, 0x1f, 0xde, 0x35, 0x17, 0x24, 0x90, 0x10, 0x37, 0x2e, 0x20, 0x24, 0x2e, 0x48, 0x5c, 0x10, 0x28,
0x8a, 0x10, 0x02, 0xc4, 0x01, 0x21, 0x84, 0xb8, 0x71, 0xe1, 0xc0, 0x8d, 0x03, 0x12, 0x67, 0xfe, 0x8a, 0x10, 0x02, 0xc4, 0x01, 0x21, 0x84, 0xb8, 0x71, 0xe1, 0xc0, 0x8d, 0x03, 0x12, 0x67, 0xfe,
0x01, 0x24, 0xa4, 0xa0, 0xaa, 0x57, 0xdd, 0x5d, 0xd5, 0xdd, 0x63, 0xcf, 0x5a, 0x56, 0x76, 0xa3, 0x01, 0x24, 0xa4, 0xa0, 0xaa, 0x57, 0xdd, 0x5d, 0xd5, 0xdd, 0x63, 0xcf, 0x5a, 0x56, 0x76, 0xa3,
@ -5456,15 +5464,15 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0x9a, 0xf8, 0x71, 0x67, 0x8a, 0x0f, 0x90, 0x51, 0xc6, 0x2c, 0xe8, 0xe4, 0x41, 0xa7, 0xc9, 0x59, 0x9a, 0xf8, 0x71, 0x67, 0x8a, 0x0f, 0x90, 0x51, 0xc6, 0x2c, 0xe8, 0xe4, 0x41, 0xa7, 0xc9, 0x59,
0xeb, 0xe4, 0x81, 0xb1, 0x00, 0x8d, 0x28, 0xb6, 0xe3, 0x24, 0xea, 0xc0, 0x92, 0xf6, 0x42, 0xdd, 0xeb, 0xe4, 0x81, 0xb1, 0x00, 0x8d, 0x28, 0xb6, 0xe3, 0x24, 0xea, 0xc0, 0x92, 0xf6, 0x42, 0xdd,
0x12, 0x90, 0xb1, 0x0c, 0x33, 0x9c, 0x2f, 0x4d, 0xa5, 0x69, 0x71, 0x12, 0x15, 0x99, 0x59, 0xec, 0x12, 0x90, 0xb1, 0x0c, 0x33, 0x9c, 0x2f, 0x4d, 0xa5, 0x69, 0x71, 0x12, 0x15, 0x99, 0x59, 0xec,
0xf6, 0x51, 0x40, 0x3a, 0xd3, 0x9c, 0x41, 0x8e, 0x30, 0x2e, 0x41, 0xdb, 0x27, 0xc4, 0x79, 0x97, 0xf6, 0x51, 0x40, 0x3a, 0xd3, 0x9c, 0x41, 0x8e, 0x30, 0x2e, 0x41, 0xdb, 0x27, 0xc4, 0x79, 0x87,
0x84, 0xb9, 0xd5, 0x66, 0xf8, 0xa0, 0x12, 0xde, 0x78, 0x0e, 0x66, 0x3d, 0x4a, 0xf7, 0xbb, 0x5c, 0x84, 0xb9, 0xd5, 0x66, 0xf8, 0xa0, 0x12, 0xde, 0x78, 0x0e, 0x66, 0x3d, 0x4a, 0xf7, 0xbb, 0x5c,
0x54, 0xe6, 0xa7, 0xce, 0x2c, 0x1f, 0x59, 0xc0, 0x1a, 0x2f, 0xc2, 0xbc, 0x1d, 0x04, 0xde, 0x11, 0x54, 0xe6, 0xa7, 0xce, 0x2c, 0x1f, 0x59, 0xc0, 0x1a, 0x2f, 0xc2, 0xbc, 0x1d, 0x04, 0xde, 0x11,
0xa2, 0xae, 0x85, 0x2e, 0xf1, 0x9d, 0xce, 0x1c, 0x1f, 0x5a, 0xfe, 0x60, 0x7c, 0x11, 0x16, 0x64, 0xa2, 0xae, 0x85, 0x2e, 0xf1, 0x9d, 0xce, 0x1c, 0x1f, 0x5a, 0xfe, 0x60, 0x7c, 0x09, 0x16, 0x64,
0xff, 0xdc, 0x09, 0x9c, 0xd4, 0x76, 0x6d, 0x6e, 0x9a, 0x11, 0x5f, 0x8d, 0x15, 0x30, 0x94, 0x2f, 0xff, 0xdc, 0x09, 0x9c, 0xd4, 0x76, 0x6d, 0x6e, 0x9a, 0x11, 0x5f, 0x8d, 0x15, 0x30, 0x94, 0x2f,
0x68, 0x82, 0x79, 0x6e, 0x82, 0x8a, 0x2f, 0xe6, 0x0f, 0x6a, 0x30, 0x97, 0x45, 0xd8, 0x35, 0x1a, 0x68, 0x82, 0x79, 0x6e, 0x82, 0x8a, 0x2f, 0xe6, 0x0f, 0x6a, 0x30, 0x97, 0x45, 0xd8, 0x35, 0x1a,
0xf6, 0x48, 0xfc, 0x18, 0xc7, 0x19, 0xc6, 0x40, 0x23, 0x8b, 0x81, 0xeb, 0x15, 0x7e, 0x62, 0xb1, 0xf6, 0x48, 0xfc, 0x18, 0xc7, 0x19, 0xc6, 0x40, 0x23, 0x8b, 0x81, 0xeb, 0x15, 0x7e, 0x62, 0xb1,
0xd5, 0xba, 0xf2, 0xa9, 0x95, 0x01, 0xa5, 0x03, 0x8f, 0x60, 0x22, 0xed, 0x24, 0xbb, 0x2b, 0x37, 0xd5, 0xba, 0xf2, 0xa9, 0x95, 0x01, 0xa5, 0x03, 0x8f, 0x60, 0x22, 0xed, 0x24, 0xbb, 0x2b, 0x37,
0xfd, 0xf8, 0xe5, 0x2b, 0xef, 0xda, 0x5e, 0x42, 0x2a, 0x9c, 0xb8, 0x5e, 0x72, 0xe2, 0xd4, 0xc9, 0xfd, 0xf8, 0xa5, 0x2b, 0xef, 0xd8, 0x5e, 0x42, 0x2a, 0x9c, 0xb8, 0x5e, 0x72, 0xe2, 0xd4, 0xc9,
0x6c, 0x8a, 0x1e, 0xbe, 0x59, 0xe5, 0xe1, 0xe6, 0xc9, 0x7c, 0xca, 0x54, 0xe6, 0x47, 0x3a, 0x9c, 0x6c, 0x8a, 0x1e, 0xbe, 0x59, 0xe5, 0xe1, 0xe6, 0xc9, 0x7c, 0xca, 0x54, 0xe6, 0x47, 0x3a, 0x9c,
0xe3, 0x6e, 0x11, 0xd8, 0xc4, 0xf3, 0x4e, 0x28, 0x01, 0x0b, 0xd0, 0x48, 0xd0, 0xd9, 0xe8, 0x17, 0xe3, 0x6e, 0x11, 0xd8, 0xc4, 0xf3, 0x4e, 0x28, 0x01, 0x0b, 0xd0, 0x48, 0xd0, 0xd9, 0xe8, 0x17,
0x01, 0x31, 0x97, 0x85, 0xd4, 0x23, 0xb7, 0xc8, 0x21, 0xf1, 0xb8, 0x47, 0xea, 0x56, 0x8e, 0x30, 0x01, 0x31, 0x97, 0x85, 0xd4, 0x23, 0xb7, 0xc8, 0x21, 0xf1, 0xb8, 0x47, 0xea, 0x56, 0x8e, 0x30,
@ -5472,7 +5480,7 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0xdf, 0xf7, 0x99, 0xaf, 0xd1, 0x0f, 0x19, 0x2c, 0xbb, 0xa8, 0xa1, 0xba, 0xe8, 0x39, 0x98, 0xb5, 0xdf, 0xf7, 0x99, 0xaf, 0xd1, 0x0f, 0x19, 0x2c, 0xbb, 0xa8, 0xa1, 0xba, 0xe8, 0x39, 0x98, 0xb5,
0x83, 0xa0, 0x6b, 0xfb, 0x03, 0x12, 0xe2, 0xa4, 0x93, 0x98, 0x0e, 0x2a, 0x96, 0x15, 0x04, 0x36, 0x83, 0xa0, 0x6b, 0xfb, 0x03, 0x12, 0xe2, 0xa4, 0x93, 0x98, 0x0e, 0x2a, 0x96, 0x15, 0x04, 0x36,
0x53, 0x8f, 0x26, 0x61, 0x9f, 0x70, 0x6b, 0xd7, 0x2d, 0x09, 0xc3, 0xf8, 0xd0, 0x80, 0x84, 0x52, 0x53, 0x8f, 0x26, 0x61, 0x9f, 0x70, 0x6b, 0xd7, 0x2d, 0x09, 0xc3, 0xf8, 0xd0, 0x80, 0x84, 0x52,
0x1e, 0x63, 0xea, 0x17, 0xb0, 0x22, 0x24, 0x20, 0x0b, 0x09, 0x56, 0x48, 0x92, 0x98, 0xbc, 0xe9, 0x1e, 0x63, 0xea, 0x17, 0xb0, 0x22, 0x24, 0x20, 0x0b, 0x09, 0x56, 0x48, 0x92, 0x98, 0xbc, 0xe1,
0x3b, 0x5c, 0xa9, 0x96, 0x28, 0x24, 0x39, 0x8a, 0x15, 0x08, 0xd7, 0x3f, 0x74, 0xe3, 0xac, 0x5c, 0x3b, 0x5c, 0xa9, 0x96, 0x28, 0x24, 0x39, 0x8a, 0x15, 0x08, 0xd7, 0x3f, 0x74, 0xe3, 0xac, 0x5c,
0x4d, 0x63, 0x81, 0x50, 0x90, 0xe6, 0x77, 0x35, 0x98, 0xdd, 0x4e, 0x76, 0x3c, 0xb7, 0xcf, 0x11, 0x4d, 0x63, 0x81, 0x50, 0x90, 0xe6, 0x77, 0x35, 0x98, 0xdd, 0x4e, 0x76, 0x3c, 0xb7, 0xcf, 0x11,
0xcc, 0xf8, 0xb9, 0x89, 0x35, 0xc5, 0xc4, 0xb2, 0xa1, 0xf4, 0xd1, 0x86, 0xaa, 0xa9, 0x86, 0x5a, 0xcc, 0xf8, 0xb9, 0x89, 0x35, 0xc5, 0xc4, 0xb2, 0xa1, 0xf4, 0xd1, 0x86, 0xaa, 0xa9, 0x86, 0x5a,
@ -5483,14 +5491,14 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0x68, 0x96, 0x96, 0x82, 0x72, 0x04, 0x41, 0x65, 0x04, 0x5d, 0x82, 0xf6, 0xc0, 0xa3, 0x3b, 0xb6, 0x68, 0x96, 0x96, 0x82, 0x72, 0x04, 0x41, 0x65, 0x04, 0x5d, 0x82, 0xf6, 0xc0, 0xa3, 0x3b, 0xb6,
0x67, 0x91, 0xfe, 0x61, 0x37, 0x1a, 0x6c, 0x05, 0x31, 0x77, 0x77, 0xdd, 0x2a, 0xe1, 0xcd, 0x7f, 0x67, 0x91, 0xfe, 0x61, 0x37, 0x1a, 0x6c, 0x05, 0x31, 0x77, 0x77, 0xdd, 0x2a, 0xe1, 0xcd, 0x7f,
0x6b, 0x00, 0x98, 0x5a, 0xdc, 0x8c, 0x85, 0xf5, 0x4a, 0x2b, 0xaf, 0x57, 0x0b, 0xd0, 0x08, 0xc9, 0x6b, 0x00, 0x98, 0x5a, 0xdc, 0x8c, 0x85, 0xf5, 0x4a, 0x2b, 0xaf, 0x57, 0x0b, 0xd0, 0x08, 0xc9,
0xd0, 0x0e, 0xf7, 0xd3, 0x74, 0x42, 0xa8, 0x20, 0x7c, 0xad, 0x24, 0xfc, 0x6b, 0x00, 0xbb, 0x7c, 0xd0, 0x0e, 0xf7, 0xd3, 0x74, 0x42, 0xa8, 0x20, 0x7c, 0xad, 0x24, 0xfc, 0xab, 0x00, 0xbb, 0x7c,
0x1e, 0xc6, 0x87, 0x9b, 0x95, 0x25, 0x7f, 0xa9, 0x05, 0x58, 0x49, 0x3d, 0x6a, 0x49, 0xc3, 0x59, 0x1e, 0xc6, 0x87, 0x9b, 0x95, 0x25, 0x7f, 0xa9, 0x05, 0x58, 0x49, 0x3d, 0x6a, 0x49, 0xc3, 0x59,
0xae, 0xda, 0x8e, 0x23, 0x52, 0xa2, 0x8e, 0xb9, 0x9a, 0x21, 0x2a, 0x32, 0xa2, 0x71, 0x4c, 0x46, 0xae, 0xda, 0x8e, 0x23, 0x52, 0xa2, 0x8e, 0xb9, 0x9a, 0x21, 0x2a, 0x32, 0xa2, 0x71, 0x4c, 0x46,
0x4c, 0x66, 0x01, 0xf4, 0x2f, 0x0d, 0x9a, 0x6b, 0x9e, 0xdd, 0xdf, 0x1f, 0x53, 0x75, 0x55, 0x45, 0x4c, 0x66, 0x01, 0xf4, 0x2f, 0x0d, 0x9a, 0x6b, 0x9e, 0xdd, 0xdf, 0x1f, 0x53, 0x75, 0x55, 0x45,
0xbd, 0xa4, 0xe2, 0x75, 0x98, 0xd9, 0x61, 0xec, 0x52, 0x15, 0xb8, 0x15, 0x5a, 0x57, 0x3e, 0x53, 0xbd, 0xa4, 0xe2, 0x75, 0x98, 0xd9, 0x61, 0xec, 0x52, 0x15, 0xb8, 0x15, 0x5a, 0x57, 0x3e, 0x53,
0xa1, 0xa5, 0x9a, 0x40, 0x96, 0x4a, 0xa7, 0xaa, 0x3b, 0x71, 0xb2, 0xba, 0xf5, 0x63, 0xd4, 0xcd, 0xa1, 0xa5, 0x9a, 0x40, 0x96, 0x4a, 0xa7, 0xaa, 0x3b, 0x71, 0xb2, 0xba, 0xf5, 0x63, 0xd4, 0xcd,
0xd6, 0x04, 0xf3, 0x47, 0x35, 0x98, 0xe6, 0xa5, 0xd3, 0x22, 0x07, 0x09, 0x89, 0x62, 0xe3, 0x0d, 0xd6, 0x04, 0xf3, 0x47, 0x35, 0x98, 0xe6, 0xa5, 0xd3, 0x22, 0x07, 0x09, 0x89, 0x62, 0xe3, 0x75,
0x98, 0x4a, 0x52, 0x51, 0xb5, 0x71, 0x45, 0xcd, 0x48, 0x8c, 0x57, 0xc5, 0x9a, 0xc7, 0xe9, 0x75, 0x98, 0x4a, 0x52, 0x51, 0xb5, 0x71, 0x45, 0xcd, 0x48, 0x8c, 0x57, 0xc4, 0x9a, 0xc7, 0xe9, 0x75,
0x4e, 0x7f, 0xa1, 0x82, 0x3e, 0x5b, 0x44, 0xad, 0x7c, 0x38, 0x5b, 0xed, 0xf6, 0x6c, 0xdf, 0xf1, 0x4e, 0x7f, 0xa1, 0x82, 0x3e, 0x5b, 0x44, 0xad, 0x7c, 0x38, 0x5b, 0xed, 0xf6, 0x6c, 0xdf, 0xf1,
0x88, 0x45, 0xa2, 0xc4, 0x8b, 0x45, 0xfd, 0x55, 0x70, 0x18, 0x69, 0x07, 0xdd, 0x68, 0x20, 0xd6, 0x88, 0x45, 0xa2, 0xc4, 0x8b, 0x45, 0xfd, 0x55, 0x70, 0x18, 0x69, 0x07, 0xdd, 0x68, 0x20, 0xd6,
0x42, 0x01, 0x31, 0xeb, 0xe0, 0x38, 0xf6, 0x09, 0x55, 0xcf, 0x11, 0x2c, 0xa9, 0x43, 0x72, 0xc0, 0x42, 0x01, 0x31, 0xeb, 0xe0, 0x38, 0xf6, 0x09, 0x55, 0xcf, 0x11, 0x2c, 0xa9, 0x43, 0x72, 0xc0,
@ -5519,29 +5527,29 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0x92, 0xb6, 0xa3, 0x0d, 0x65, 0x3b, 0x5a, 0x5c, 0x8d, 0x7f, 0xa7, 0xc1, 0x79, 0xe6, 0xe5, 0x92, 0x92, 0xb6, 0xa3, 0x0d, 0x65, 0x3b, 0x5a, 0x5c, 0x8d, 0x7f, 0xa7, 0xc1, 0x79, 0xe6, 0xe5, 0x92,
0x1a, 0x5b, 0xd0, 0xa6, 0x85, 0x48, 0x10, 0xcb, 0xd5, 0xb3, 0x15, 0xcb, 0x4d, 0x31, 0x68, 0xac, 0x1a, 0x5b, 0xd0, 0xa6, 0x85, 0x48, 0x10, 0xcb, 0xd5, 0xb3, 0x15, 0xcb, 0x4d, 0x31, 0x68, 0xac,
0x12, 0x31, 0x63, 0xe8, 0x14, 0x26, 0x11, 0xeb, 0x57, 0x15, 0xc3, 0xa2, 0x3c, 0x56, 0x89, 0xd8, 0x12, 0x31, 0x63, 0xe8, 0x14, 0x26, 0x11, 0xeb, 0x57, 0x15, 0xc3, 0xa2, 0x3c, 0x56, 0x89, 0xd8,
0xfc, 0xbd, 0x06, 0x6d, 0x5c, 0x20, 0xa5, 0x3c, 0x3f, 0x73, 0xb1, 0xdf, 0x83, 0xf3, 0xc5, 0x99, 0xfc, 0xbd, 0x06, 0x6d, 0x5c, 0x20, 0xa5, 0x3c, 0x3f, 0x73, 0xb1, 0xdf, 0x85, 0xf3, 0xc5, 0x99,
0x6f, 0xb9, 0x51, 0xdc, 0xd1, 0x97, 0x6a, 0xe3, 0x8a, 0x5e, 0xc9, 0x80, 0xe5, 0xda, 0xd3, 0xdb, 0x6f, 0xb9, 0x51, 0xdc, 0xd1, 0x97, 0x6a, 0xe3, 0x8a, 0x5e, 0xc9, 0x80, 0xe5, 0xda, 0xd3, 0xdb,
0x89, 0xe7, 0x75, 0x49, 0x14, 0xd9, 0x03, 0xb2, 0x76, 0xd4, 0x23, 0x07, 0xec, 0x83, 0x45, 0x0e, 0x89, 0xe7, 0x75, 0x49, 0x14, 0xd9, 0x03, 0xb2, 0x76, 0xd4, 0x23, 0x07, 0xec, 0x83, 0x45, 0x0e,
0x46, 0xc6, 0x10, 0xeb, 0x96, 0x78, 0xbb, 0xe1, 0x52, 0x3f, 0x0b, 0x21, 0x19, 0xc5, 0xd2, 0x2a, 0x46, 0xc6, 0x10, 0xeb, 0x96, 0x78, 0xbb, 0xe1, 0x52, 0x3f, 0x0b, 0x21, 0x19, 0xc5, 0xd2, 0x2a,
0x42, 0x3e, 0x9d, 0xda, 0x52, 0x8d, 0x2d, 0xc4, 0x02, 0x34, 0xbe, 0x01, 0xd3, 0xbc, 0x13, 0x10, 0x42, 0x3e, 0x9d, 0xda, 0x52, 0x8d, 0x2d, 0xc4, 0x02, 0x34, 0xde, 0x87, 0x69, 0xde, 0x09, 0x88,
0xd3, 0x74, 0x26, 0xb8, 0x02, 0xaf, 0x57, 0xf6, 0x1e, 0x95, 0x52, 0x61, 0x4f, 0x21, 0xe0, 0x37, 0x69, 0x3a, 0x13, 0x5c, 0x81, 0xd7, 0x2a, 0x7b, 0x8f, 0x4a, 0xa9, 0xb0, 0xa7, 0x10, 0xf0, 0x1b,
0xfd, 0x38, 0x3c, 0xb2, 0x14, 0x8e, 0x8b, 0xef, 0xc3, 0x7c, 0x69, 0x88, 0xd1, 0x86, 0xda, 0x3e, 0x7e, 0x1c, 0x1e, 0x59, 0x0a, 0xc7, 0xc5, 0xf7, 0x60, 0xbe, 0x34, 0xc4, 0x68, 0x43, 0x6d, 0x9f,
0x39, 0x12, 0x7a, 0xb0, 0x9f, 0xc6, 0x4b, 0x50, 0x3f, 0x64, 0x1b, 0x4d, 0xe1, 0xfd, 0xc5, 0x0a, 0x1c, 0x09, 0x3d, 0xd8, 0x4f, 0xe3, 0x0b, 0x50, 0x3f, 0x64, 0x1b, 0x4d, 0xe1, 0xfd, 0xc5, 0x0a,
0x09, 0x84, 0xcc, 0x16, 0x0e, 0x7c, 0x55, 0xff, 0x92, 0x66, 0x3e, 0x9b, 0x29, 0x26, 0xeb, 0xa8, 0x09, 0x84, 0xcc, 0x16, 0x0e, 0x7c, 0x45, 0xff, 0xb2, 0x66, 0x3e, 0x9b, 0x29, 0x26, 0xeb, 0xa8,
0x29, 0x3a, 0x9a, 0x6f, 0x43, 0xab, 0x1b, 0x0d, 0x36, 0xec, 0xd8, 0xe6, 0x03, 0x5f, 0x87, 0xd6, 0x29, 0x3a, 0x9a, 0x6f, 0x41, 0xab, 0x1b, 0x0d, 0x36, 0xec, 0xd8, 0xe6, 0x03, 0x5f, 0x83, 0xd6,
0x30, 0x07, 0xf9, 0xe0, 0xea, 0xf9, 0x04, 0x91, 0x25, 0x0f, 0x37, 0xff, 0xaa, 0x43, 0xa7, 0xda, 0x30, 0x07, 0xf9, 0xe0, 0xea, 0xf9, 0x04, 0x91, 0x25, 0x0f, 0x37, 0xff, 0xaa, 0x43, 0xa7, 0xda,
0x14, 0x51, 0xc0, 0x64, 0x20, 0x61, 0xb8, 0x4e, 0x1d, 0xc2, 0x55, 0xab, 0x5b, 0x29, 0xc8, 0x7c, 0x14, 0x51, 0xc0, 0x64, 0x20, 0x61, 0xb8, 0x4e, 0x1d, 0xc2, 0x55, 0xab, 0x5b, 0x29, 0xc8, 0x7c,
0x47, 0xc2, 0x90, 0xad, 0x61, 0xa2, 0x55, 0x47, 0xc8, 0x58, 0x81, 0x09, 0x2f, 0x75, 0xcb, 0xf1, 0x47, 0xc2, 0x90, 0xad, 0x61, 0xa2, 0x55, 0x47, 0xc8, 0x58, 0x81, 0x09, 0x2f, 0x75, 0xcb, 0xf1,
0x52, 0xf0, 0x71, 0xc6, 0x10, 0xda, 0xdc, 0xba, 0x92, 0x42, 0xc2, 0x67, 0xab, 0x63, 0xfb, 0x2c, 0x52, 0xf0, 0x71, 0xc6, 0x10, 0xda, 0xdc, 0xba, 0x92, 0x42, 0xc2, 0x67, 0xab, 0x63, 0xfb, 0x2c,
0x0a, 0xd0, 0x69, 0x12, 0x0f, 0x74, 0x5c, 0x89, 0xf5, 0x62, 0x1f, 0x9e, 0xaa, 0x1c, 0x5a, 0xe1, 0x0a, 0xd0, 0x69, 0x12, 0x0f, 0x74, 0x5c, 0x89, 0xf5, 0x62, 0x1f, 0x9e, 0xaa, 0x1c, 0x5a, 0xe1,
0xc0, 0x2f, 0xa8, 0x0e, 0xbc, 0x38, 0x5a, 0x95, 0xa2, 0x13, 0x03, 0x30, 0xae, 0x93, 0xb8, 0x6b, 0xc0, 0x2f, 0xaa, 0x0e, 0xbc, 0x38, 0x5a, 0x95, 0xa2, 0x13, 0x03, 0x30, 0xae, 0x93, 0xb8, 0x6b,
0x3f, 0x58, 0xf5, 0x9d, 0xae, 0xeb, 0xf7, 0xc8, 0x01, 0x8b, 0xf6, 0x25, 0x68, 0x89, 0x63, 0x83, 0x3f, 0x58, 0xf5, 0x9d, 0xae, 0xeb, 0xf7, 0xc8, 0x01, 0x8b, 0xf6, 0x25, 0x68, 0x89, 0x63, 0x83,
0xcc, 0x4d, 0x4d, 0x4b, 0x46, 0x8d, 0x3c, 0x4d, 0x28, 0xe4, 0x43, 0xad, 0x94, 0x0f, 0xe6, 0x55, 0xcc, 0x4d, 0x4d, 0x4b, 0x46, 0x8d, 0x3c, 0x4d, 0x28, 0xe4, 0x43, 0xad, 0x94, 0x0f, 0xe6, 0x55,
0x98, 0x96, 0xa7, 0xe3, 0x8b, 0x88, 0xfd, 0xa0, 0x47, 0x0e, 0xb8, 0x42, 0x33, 0x96, 0x80, 0x38, 0x98, 0x96, 0xa7, 0xe3, 0x8b, 0x88, 0xfd, 0xa0, 0x47, 0x0e, 0xb8, 0x42, 0x33, 0x96, 0x80, 0x38,
0x9e, 0x8f, 0x10, 0x3b, 0x0c, 0x01, 0x99, 0x7f, 0xd1, 0xe1, 0x5c, 0x49, 0xe4, 0x28, 0x78, 0x58, 0x9e, 0x8f, 0x10, 0x3b, 0x0c, 0x01, 0x99, 0x7f, 0xd1, 0xe1, 0x5c, 0x49, 0xe4, 0x28, 0x78, 0x58,
0x3e, 0x72, 0xbc, 0xd4, 0x46, 0xc5, 0xcb, 0x84, 0x12, 0x2f, 0xfb, 0x30, 0x8f, 0x4e, 0x92, 0xa6, 0x3e, 0x72, 0xbc, 0xd4, 0x46, 0xc5, 0xcb, 0x84, 0x12, 0x2f, 0xfb, 0x30, 0x8f, 0x4e, 0x92, 0xa6,
0xee, 0xd4, 0x79, 0x00, 0xbc, 0x51, 0xd5, 0xf0, 0x97, 0x85, 0x14, 0xbe, 0x97, 0xb0, 0xe8, 0xfc, 0xee, 0xd4, 0x79, 0x00, 0xbc, 0x5e, 0xd5, 0xf0, 0x97, 0x85, 0x14, 0xbe, 0x97, 0xb0, 0xe8, 0xfc,
0x32, 0xdf, 0x45, 0x02, 0x0b, 0xd5, 0x83, 0x2b, 0xdc, 0xff, 0x8a, 0xea, 0xfe, 0x4f, 0x57, 0xb9, 0x32, 0xdf, 0x45, 0x02, 0x0b, 0xd5, 0x83, 0x2b, 0xdc, 0xff, 0xb2, 0xea, 0xfe, 0x4f, 0x57, 0xb9,
0x5f, 0x96, 0x44, 0xf2, 0xff, 0x01, 0xcc, 0xb1, 0xa2, 0xda, 0x23, 0xbe, 0xd3, 0x8d, 0x06, 0xdc, 0x5f, 0x96, 0x44, 0xf2, 0xff, 0x01, 0xcc, 0xb1, 0xa2, 0xda, 0x23, 0xbe, 0xd3, 0x8d, 0x06, 0xdc,
0x90, 0x4b, 0xd0, 0x42, 0xfa, 0x6e, 0x34, 0xc8, 0x37, 0x80, 0x12, 0x8a, 0x8d, 0xe8, 0x7b, 0x2e, 0x90, 0x4b, 0xd0, 0x42, 0xfa, 0x6e, 0x34, 0xc8, 0x37, 0x80, 0x12, 0x8a, 0x8d, 0xe8, 0x7b, 0x2e,
0x2b, 0x9e, 0x7c, 0x84, 0x28, 0x7a, 0x12, 0x8a, 0x2d, 0x90, 0x11, 0x11, 0x27, 0x2c, 0xcc, 0xba, 0x2b, 0x9e, 0x7c, 0x84, 0x28, 0x7a, 0x12, 0x8a, 0x2d, 0x90, 0x11, 0x11, 0x27, 0x2c, 0xcc, 0xba,
@ -5560,7 +5568,7 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0xd5, 0x44, 0xa8, 0x23, 0xad, 0x22, 0x29, 0xeb, 0xfc, 0xec, 0x18, 0x37, 0x39, 0xbc, 0xc0, 0x9d, 0xd5, 0x44, 0xa8, 0x23, 0xad, 0x22, 0x29, 0xeb, 0xfc, 0xec, 0x18, 0x37, 0x39, 0xbc, 0xc0, 0x9d,
0xe7, 0x05, 0x4e, 0xc1, 0xf1, 0x73, 0x42, 0xa9, 0xd0, 0x3f, 0xc5, 0x0d, 0x27, 0xa3, 0x90, 0x4b, 0xe7, 0x05, 0x4e, 0xc1, 0xf1, 0x73, 0x42, 0xa9, 0xd0, 0x3f, 0xc5, 0x0d, 0x27, 0xa3, 0x90, 0x4b,
0x6c, 0xf7, 0xf7, 0x08, 0x3f, 0x34, 0xea, 0x2c, 0x60, 0xff, 0x28, 0xe3, 0x44, 0x77, 0xf7, 0x74, 0x6c, 0xf7, 0xf7, 0x08, 0x3f, 0x34, 0xea, 0x2c, 0x60, 0xff, 0x28, 0xe3, 0x44, 0x77, 0xf7, 0x74,
0xda, 0xdd, 0x2d, 0xbe, 0x0a, 0xd3, 0xb2, 0x82, 0x15, 0xc9, 0x7c, 0x5e, 0x4e, 0xe6, 0x29, 0x39, 0xda, 0xdd, 0x2d, 0xbe, 0x02, 0xd3, 0xb2, 0x82, 0x15, 0xc9, 0x7c, 0x5e, 0x4e, 0xe6, 0x29, 0x39,
0x57, 0x7f, 0xa8, 0xc1, 0x5c, 0x41, 0x35, 0x36, 0x3a, 0x76, 0x63, 0x8f, 0x08, 0x0e, 0x08, 0xb0, 0x57, 0x7f, 0xa8, 0xc1, 0x5c, 0x41, 0x35, 0x36, 0x3a, 0x76, 0x63, 0x8f, 0x08, 0x0e, 0x08, 0xb0,
0xdd, 0x91, 0x43, 0xa2, 0xbe, 0x48, 0x1e, 0xfe, 0x5b, 0x48, 0x52, 0xcb, 0xb6, 0xec, 0x26, 0x4c, 0xdd, 0x91, 0x43, 0xa2, 0xbe, 0x48, 0x1e, 0xfe, 0x5b, 0x48, 0x52, 0xcb, 0xb6, 0xec, 0x26, 0x4c,
0xbb, 0x5b, 0x3d, 0xc6, 0xa8, 0x47, 0x13, 0xdf, 0xc9, 0x0e, 0xda, 0x25, 0x1c, 0xdf, 0xb6, 0x6f, 0xbb, 0x5b, 0x3d, 0xc6, 0xa8, 0x47, 0x13, 0xdf, 0xc9, 0x0e, 0xda, 0x25, 0x1c, 0xdf, 0xb6, 0x6f,
@ -5574,19 +5582,19 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0x9b, 0xad, 0x8b, 0xd9, 0xf9, 0x7a, 0xcd, 0x52, 0x91, 0xc6, 0x26, 0xcc, 0x72, 0xb1, 0xb7, 0xd2, 0x9b, 0xad, 0x8b, 0xd9, 0xf9, 0x7a, 0xcd, 0x52, 0x91, 0xc6, 0x26, 0xcc, 0x72, 0xb1, 0xb7, 0xd2,
0x03, 0x38, 0xee, 0x83, 0xf1, 0x67, 0x2c, 0x50, 0x9b, 0x3f, 0xd5, 0x84, 0x19, 0xd9, 0xd7, 0x1e, 0x03, 0x38, 0xee, 0x83, 0xf1, 0x67, 0x2c, 0x50, 0x9b, 0x3f, 0xd5, 0x84, 0x19, 0xd9, 0xd7, 0x1e,
0x41, 0xdb, 0xe7, 0x26, 0xd1, 0x4e, 0x65, 0x92, 0x45, 0x98, 0x1a, 0x26, 0xd2, 0x79, 0x60, 0xcd, 0x41, 0xdb, 0xe7, 0x26, 0xd1, 0x4e, 0x65, 0x92, 0x45, 0x98, 0x1a, 0x26, 0xd2, 0x79, 0x60, 0xcd,
0xca, 0xe0, 0xdc, 0x45, 0xb5, 0xb1, 0x5d, 0x64, 0xfe, 0x4c, 0x83, 0xce, 0x5b, 0xd4, 0xf5, 0xf9, 0xca, 0xe0, 0xdc, 0x45, 0xb5, 0xb1, 0x5d, 0x64, 0xfe, 0x4c, 0x83, 0xce, 0x9b, 0xd4, 0xf5, 0xf9,
0x87, 0xd5, 0x20, 0xf0, 0xc4, 0x35, 0xcc, 0xa9, 0x7d, 0xfe, 0x15, 0x68, 0xda, 0xc8, 0xc6, 0x8f, 0x87, 0xd5, 0x20, 0xf0, 0xc4, 0x35, 0xcc, 0xa9, 0x7d, 0xfe, 0x55, 0x68, 0xda, 0xc8, 0xc6, 0x8f,
0x85, 0xdb, 0xc7, 0x38, 0xe3, 0xcb, 0x69, 0xa4, 0x83, 0x96, 0x9a, 0x7c, 0xd0, 0x62, 0x7e, 0xa8, 0x85, 0xdb, 0xc7, 0x38, 0xe3, 0xcb, 0x69, 0xa4, 0x83, 0x96, 0x9a, 0x7c, 0xd0, 0x62, 0x7e, 0xa8,
0xc1, 0x2c, 0x1a, 0xe5, 0x9d, 0xc4, 0x8d, 0x4f, 0x2d, 0xdf, 0x1a, 0x4c, 0x1d, 0x24, 0x6e, 0x7c, 0xc1, 0x2c, 0x1a, 0xe5, 0xed, 0xc4, 0x8d, 0x4f, 0x2d, 0xdf, 0x1a, 0x4c, 0x1d, 0x24, 0x6e, 0x7c,
0x8a, 0xa8, 0xcc, 0xe8, 0xca, 0xf1, 0x54, 0xab, 0x88, 0x27, 0xf3, 0x97, 0x1a, 0x5c, 0x28, 0x9a, 0x8a, 0xa8, 0xcc, 0xe8, 0xca, 0xf1, 0x54, 0xab, 0x88, 0x27, 0xf3, 0x97, 0x1a, 0x5c, 0x28, 0x9a,
0x75, 0xb5, 0xdf, 0x27, 0xc1, 0xa3, 0x4c, 0x29, 0xe5, 0xa0, 0x69, 0xa2, 0x70, 0xd0, 0x54, 0x29, 0x75, 0xb5, 0xdf, 0x27, 0xc1, 0xa3, 0x4c, 0x29, 0xe5, 0xa0, 0x69, 0xa2, 0x70, 0xd0, 0x54, 0x29,
0xb2, 0x45, 0xee, 0x91, 0xfe, 0xe3, 0x2b, 0xf2, 0x77, 0x74, 0xf8, 0xff, 0xeb, 0x59, 0xe2, 0xdd, 0xb2, 0x45, 0xee, 0x91, 0xfe, 0xe3, 0x2b, 0xf2, 0x77, 0x74, 0xf8, 0xff, 0xeb, 0x59, 0xe2, 0xdd,
0x0e, 0x6d, 0x3f, 0xda, 0x25, 0x61, 0xf8, 0x08, 0xe5, 0xbd, 0x05, 0x33, 0x3e, 0xb9, 0x9f, 0xcb, 0x0e, 0x6d, 0x3f, 0xda, 0x25, 0x61, 0xf8, 0x08, 0xe5, 0xbd, 0x05, 0x33, 0x3e, 0xb9, 0x9f, 0xcb,
0x24, 0xd2, 0x71, 0x5c, 0x36, 0x2a, 0xf1, 0x78, 0xb5, 0xcb, 0xfc, 0x8f, 0x06, 0x6d, 0xe4, 0xf3, 0x24, 0xd2, 0x71, 0x5c, 0x36, 0x2a, 0xf1, 0x78, 0xb5, 0xcb, 0xfc, 0x8f, 0x06, 0x6d, 0xe4, 0xf3,
0xb6, 0xdb, 0xdf, 0x7f, 0x84, 0xca, 0x6f, 0xc2, 0xec, 0x3e, 0x97, 0x80, 0x41, 0xa7, 0x28, 0xdb, 0x96, 0xdb, 0xdf, 0x7f, 0x84, 0xca, 0x6f, 0xc2, 0xec, 0x3e, 0x97, 0x80, 0x41, 0xa7, 0x28, 0xdb,
0x05, 0xea, 0x31, 0xd5, 0xff, 0x48, 0x83, 0xf9, 0xf4, 0xf6, 0xf7, 0xd0, 0x7d, 0x94, 0xc1, 0xba, 0x05, 0xea, 0x31, 0xd5, 0xff, 0x48, 0x83, 0xf9, 0xf4, 0xf6, 0xf7, 0xd0, 0x7d, 0x94, 0xc1, 0xba,
0x0d, 0x73, 0x78, 0xd2, 0x7e, 0x5a, 0x03, 0x14, 0xc9, 0xc7, 0xb4, 0xc0, 0x6f, 0x34, 0x98, 0x43, 0x0d, 0x73, 0x78, 0xd2, 0x7e, 0x5a, 0x03, 0x14, 0xc9, 0xc7, 0xb4, 0xc0, 0x6f, 0x34, 0x98, 0x43,
0x4e, 0x6f, 0xfa, 0x31, 0x09, 0x4f, 0xad, 0xff, 0x0d, 0x68, 0x11, 0x3f, 0x0e, 0x6d, 0xff, 0x34, 0x4e, 0x6f, 0xf8, 0x31, 0x09, 0x4f, 0xad, 0xff, 0x0d, 0x68, 0x11, 0x3f, 0x0e, 0x6d, 0xff, 0x34,
0x15, 0x52, 0x26, 0x1d, 0xb3, 0x48, 0x7e, 0xa8, 0x81, 0xc1, 0x59, 0x6d, 0xb8, 0xd1, 0xd0, 0x8d, 0x15, 0x52, 0x26, 0x1d, 0xb3, 0x48, 0x7e, 0xa8, 0x81, 0xc1, 0x59, 0x6d, 0xb8, 0xd1, 0xd0, 0x8d,
0xa2, 0x47, 0xe8, 0xba, 0xf1, 0x04, 0xfe, 0xb1, 0x0e, 0xe7, 0x25, 0x2e, 0xdd, 0x24, 0x7e, 0xdc, 0xa2, 0x47, 0xe8, 0xba, 0xf1, 0x04, 0xfe, 0xb1, 0x0e, 0xe7, 0x25, 0x2e, 0xdd, 0x24, 0x7e, 0xdc,
0x45, 0x36, 0x36, 0xa0, 0xc9, 0x7a, 0x04, 0xf9, 0x1e, 0x74, 0xdc, 0x89, 0x72, 0x42, 0xd6, 0xc5, 0x45, 0x36, 0x36, 0xa0, 0xc9, 0x7a, 0x04, 0xf9, 0x1e, 0x74, 0xdc, 0x89, 0x72, 0x42, 0xd6, 0xc5,
@ -5594,63 +5602,64 @@ var fileDescriptor_ws_860ddb8af4f21a5d = []byte{
0x89, 0xcd, 0xba, 0xed, 0xf7, 0x89, 0xf7, 0xc4, 0x98, 0xc8, 0xfc, 0x85, 0x06, 0xb3, 0x38, 0xe4, 0x89, 0xcd, 0xba, 0xed, 0xf7, 0x89, 0xf7, 0xc4, 0x98, 0xc8, 0xfc, 0x85, 0x06, 0xb3, 0x38, 0xe4,
0xf1, 0x57, 0x99, 0xad, 0xf5, 0x18, 0xc8, 0x9f, 0x18, 0x2f, 0xb1, 0xf0, 0x5a, 0x90, 0xb8, 0xc8, 0xf1, 0x57, 0x99, 0xad, 0xf5, 0x18, 0xc8, 0x9f, 0x18, 0x2f, 0xb1, 0xf0, 0x5a, 0x90, 0xb8, 0xc8,
0x7d, 0xf5, 0xe3, 0x1b, 0x5a, 0x37, 0xa0, 0xd5, 0xdf, 0xb3, 0xfd, 0xc1, 0xa9, 0x82, 0x4b, 0x26, 0x7d, 0xf5, 0xe3, 0x1b, 0x5a, 0x37, 0xa0, 0xd5, 0xdf, 0xb3, 0xfd, 0xc1, 0xa9, 0x82, 0x4b, 0x26,
0x35, 0x63, 0x78, 0x5a, 0x3e, 0xb4, 0x5f, 0xc7, 0x4f, 0x5c, 0xfd, 0x97, 0x0b, 0xaa, 0x1c, 0xfb, 0x35, 0x63, 0x78, 0x5a, 0x3e, 0xb4, 0x5f, 0xc7, 0x4f, 0x5c, 0xfd, 0x97, 0x0a, 0xaa, 0x1c, 0xfb,
0xce, 0xe1, 0xe1, 0x8c, 0xbe, 0x0f, 0xf3, 0x78, 0x53, 0x2c, 0xf5, 0x84, 0x46, 0x07, 0x26, 0x6d, 0xce, 0xe1, 0xe1, 0x8c, 0xbe, 0x0f, 0xf3, 0x78, 0x53, 0x2c, 0xf5, 0x84, 0x46, 0x07, 0x26, 0x6d,
0x07, 0x8f, 0x2e, 0x34, 0x4e, 0x94, 0x82, 0xea, 0x4b, 0x02, 0xf1, 0x2e, 0x2d, 0x7f, 0x49, 0x70, 0x07, 0x8f, 0x2e, 0x34, 0x4e, 0x94, 0x82, 0xea, 0x4b, 0x02, 0xf1, 0x2e, 0x2d, 0x7f, 0x49, 0x70,
0x11, 0xc0, 0x76, 0x9c, 0xf7, 0x68, 0xe8, 0xb8, 0x7e, 0xda, 0xe0, 0x4b, 0x18, 0xf3, 0x2d, 0x98, 0x11, 0xc0, 0x76, 0x9c, 0x77, 0x69, 0xe8, 0xb8, 0x7e, 0xda, 0xe0, 0x4b, 0x18, 0xf3, 0x4d, 0x98,
0xbe, 0x16, 0xd2, 0xe1, 0x6d, 0xe9, 0xce, 0xf7, 0xd8, 0x5b, 0x69, 0xf9, 0xbe, 0x58, 0x57, 0xef, 0xbe, 0x16, 0xd2, 0xe1, 0x6d, 0xe9, 0xce, 0xf7, 0xd8, 0x5b, 0x69, 0xf9, 0xbe, 0x58, 0x57, 0xef,
0x8b, 0xcd, 0xaf, 0xc3, 0x53, 0x25, 0xc1, 0xb9, 0xb1, 0xd6, 0xf1, 0x2a, 0x3b, 0x9d, 0x44, 0x84, 0x8b, 0xcd, 0x6f, 0xc0, 0x53, 0x25, 0xc1, 0xb9, 0xb1, 0xd6, 0xf1, 0x2a, 0x3b, 0x9d, 0x44, 0x84,
0x4c, 0xd5, 0x59, 0x9e, 0x2c, 0x8b, 0xa5, 0x10, 0x99, 0xdf, 0xd6, 0xe0, 0x99, 0x12, 0xfb, 0xd5, 0x4c, 0xd5, 0x59, 0x9e, 0x2c, 0x8b, 0xa5, 0x10, 0x99, 0xdf, 0xd6, 0xe0, 0x99, 0x12, 0xfb, 0xd5,
0x20, 0x08, 0xe9, 0xa1, 0xf0, 0xc9, 0x59, 0x4c, 0xa3, 0x36, 0xbf, 0x7a, 0xb1, 0xf9, 0xad, 0x14, 0x20, 0x08, 0xe9, 0xa1, 0xf0, 0xc9, 0x59, 0x4c, 0xa3, 0x36, 0xbf, 0x7a, 0xb1, 0xf9, 0xad, 0x14,
0x42, 0x69, 0xd8, 0x3f, 0x06, 0x21, 0x7e, 0xae, 0xc1, 0x9c, 0x10, 0xc2, 0x71, 0xc4, 0xb4, 0xaf, 0x42, 0x69, 0xd8, 0x3f, 0x06, 0x21, 0x7e, 0xae, 0xc1, 0x9c, 0x10, 0xc2, 0x71, 0xc4, 0xb4, 0x2f,
0x40, 0x03, 0x1f, 0xd3, 0x88, 0x09, 0x9f, 0xa9, 0x9c, 0x30, 0x7d, 0x04, 0x64, 0x89, 0xc1, 0xe5, 0x43, 0x03, 0x1f, 0xd3, 0x88, 0x09, 0x9f, 0xa9, 0x9c, 0x30, 0x7d, 0x04, 0x64, 0x89, 0xc1, 0xe5,
0x88, 0xd4, 0xab, 0x32, 0xea, 0xcb, 0x59, 0xb0, 0x8f, 0xfd, 0xdc, 0x45, 0x10, 0x98, 0x5f, 0x4d, 0x88, 0xd4, 0xab, 0x32, 0xea, 0x2b, 0x59, 0xb0, 0x8f, 0xfd, 0xdc, 0x45, 0x10, 0x98, 0x5f, 0x4b,
0x83, 0x79, 0x83, 0x78, 0xe4, 0x2c, 0x6d, 0x64, 0xde, 0x81, 0x59, 0xfe, 0xb2, 0x27, 0xb7, 0xc1, 0x83, 0x79, 0x83, 0x78, 0xe4, 0x2c, 0x6d, 0x64, 0xde, 0x81, 0x59, 0xfe, 0xb2, 0x27, 0xb7, 0xc1,
0x99, 0xb0, 0x7d, 0x0f, 0xda, 0x9c, 0xed, 0x99, 0xcb, 0x9b, 0x65, 0x07, 0xb3, 0x8f, 0x5c, 0x4a, 0x99, 0xb0, 0x7d, 0x17, 0xda, 0x9c, 0xed, 0x99, 0xcb, 0x9b, 0x65, 0x07, 0xb3, 0x8f, 0x5c, 0x4a,
0xce, 0x84, 0xfb, 0xe7, 0xe1, 0x5c, 0x6a, 0x7b, 0x7c, 0x11, 0x8b, 0xbc, 0x47, 0xdc, 0xed, 0x99, 0xce, 0x84, 0xfb, 0xe7, 0xe1, 0x5c, 0x6a, 0x7b, 0x7c, 0x11, 0x8b, 0xbc, 0x47, 0xdc, 0xed, 0x99,
0x2f, 0xc1, 0xc2, 0x3a, 0xf5, 0x0f, 0x49, 0x18, 0x29, 0x8f, 0x68, 0x91, 0x42, 0x49, 0x7e, 0x01, 0xef, 0xc3, 0xc2, 0x3a, 0xf5, 0x0f, 0x49, 0x18, 0x29, 0x8f, 0x68, 0x91, 0x42, 0x49, 0x7e, 0x01,
0x99, 0xf7, 0x60, 0x51, 0xa6, 0xe8, 0x91, 0x78, 0x3b, 0x74, 0x0f, 0x25, 0x2a, 0x71, 0xa8, 0xad, 0x19, 0x2b, 0x60, 0xf4, 0x25, 0x0a, 0x71, 0xba, 0xa8, 0xf3, 0xd3, 0xc5, 0x8a, 0x2f, 0xe6, 0x3d,
0x29, 0x87, 0xda, 0xf9, 0x21, 0xb8, 0xae, 0x1c, 0x82, 0x5f, 0x80, 0xa6, 0x1b, 0x09, 0x06, 0x3c, 0x58, 0x94, 0x67, 0xe8, 0x91, 0x78, 0x3b, 0x74, 0x0f, 0xa5, 0x59, 0xc4, 0x21, 0xb8, 0xa6, 0x1c,
0xa8, 0xa6, 0xac, 0x1c, 0x61, 0xda, 0x30, 0x8f, 0xe6, 0x17, 0x97, 0x4c, 0x7c, 0x8a, 0x45, 0x98, 0x82, 0xe7, 0x87, 0xe6, 0xba, 0x72, 0x68, 0x7e, 0x01, 0x9a, 0x6e, 0x24, 0x18, 0xf0, 0x20, 0x9c,
0xc2, 0x98, 0xca, 0x26, 0xc9, 0xe0, 0x91, 0x57, 0x36, 0x23, 0x2f, 0x28, 0xcd, 0x1e, 0xcc, 0x8b, 0xb2, 0x72, 0x84, 0x69, 0xc3, 0x3c, 0xba, 0x4b, 0x5c, 0x4a, 0xf1, 0x29, 0x16, 0x61, 0x0a, 0x63,
0x87, 0x38, 0xdb, 0xf6, 0xc0, 0xf5, 0xb1, 0xc8, 0x5e, 0x04, 0x08, 0xec, 0x41, 0xfa, 0xf4, 0x0f, 0x30, 0x9b, 0x24, 0x83, 0x47, 0x5e, 0xf1, 0x8c, 0xbc, 0xd0, 0x34, 0x7b, 0x30, 0x2f, 0x1e, 0xee,
0xaf, 0xda, 0x24, 0x0c, 0xfb, 0x1e, 0xed, 0xd1, 0xfb, 0xe2, 0xbb, 0x8e, 0xdf, 0x73, 0x8c, 0xf9, 0x6c, 0xdb, 0x03, 0xd7, 0xc7, 0xa2, 0x7c, 0x11, 0x20, 0xb0, 0x07, 0xe9, 0x53, 0x41, 0xbc, 0x9a,
0x2e, 0x18, 0x16, 0x89, 0x02, 0xea, 0x47, 0x44, 0xe2, 0xba, 0x04, 0xad, 0xf5, 0x24, 0x0c, 0x89, 0x93, 0x30, 0xec, 0x7b, 0xb4, 0x47, 0xef, 0x8b, 0xef, 0x3a, 0x7e, 0xcf, 0x31, 0xe6, 0x3b, 0x60,
0xcf, 0xa6, 0x4a, 0xdf, 0xb6, 0xc9, 0x28, 0xc6, 0xb7, 0x97, 0xf3, 0xc5, 0x63, 0x79, 0x09, 0x63, 0x58, 0x24, 0x0a, 0xa8, 0x1f, 0x11, 0x89, 0xeb, 0x12, 0xb4, 0xd6, 0x93, 0x30, 0x24, 0x3e, 0x9b,
0xfe, 0xa4, 0x06, 0xcd, 0x9e, 0x3b, 0xf0, 0x6d, 0xcf, 0x22, 0x07, 0xc6, 0xeb, 0xd0, 0xc0, 0x2d, 0x2a, 0x7d, 0x0b, 0x27, 0xa3, 0x18, 0xdf, 0x5e, 0xce, 0x17, 0x8f, 0xf1, 0x25, 0x8c, 0xf9, 0x93,
0x8b, 0x88, 0x94, 0xaa, 0x63, 0x62, 0x1c, 0x8d, 0x7b, 0x33, 0x8b, 0x1c, 0xdc, 0xf8, 0x3f, 0x4b, 0x1a, 0x34, 0x7b, 0xee, 0xc0, 0xb7, 0x3d, 0x8b, 0x1c, 0x18, 0xaf, 0x41, 0x03, 0xb7, 0x38, 0x22,
0xd0, 0x18, 0xef, 0xa4, 0xcf, 0x95, 0x6e, 0xe2, 0x11, 0x94, 0x58, 0xbf, 0x3e, 0x7b, 0x02, 0x13, 0xb2, 0xaa, 0x8e, 0x95, 0x71, 0x34, 0xee, 0xe5, 0x2c, 0x72, 0x70, 0xe3, 0xff, 0x2c, 0x41, 0x63,
0x31, 0x1a, 0x79, 0xa9, 0x1c, 0x98, 0x40, 0x7d, 0xde, 0xd2, 0x88, 0xf2, 0x30, 0x5a, 0x20, 0xec, 0xbc, 0x9d, 0x3e, 0x6f, 0xba, 0x89, 0x47, 0x56, 0x62, 0xbd, 0xfb, 0xec, 0x09, 0x4c, 0xc4, 0x68,
0x7c, 0x84, 0x40, 0x48, 0xc3, 0xa8, 0x6d, 0x7e, 0x48, 0x23, 0x56, 0xea, 0xd1, 0xd4, 0x78, 0x96, 0xe4, 0xa5, 0x72, 0x60, 0x02, 0xf5, 0x79, 0x0b, 0x24, 0xca, 0xc9, 0x68, 0x81, 0xb0, 0x53, 0x12,
0x23, 0xa8, 0x91, 0x86, 0x51, 0xef, 0x25, 0xfe, 0xe0, 0x4e, 0x20, 0xce, 0x0e, 0x47, 0x53, 0xdf, 0x02, 0x21, 0x0d, 0xa3, 0xb6, 0xf9, 0xa1, 0x8e, 0x58, 0xd9, 0x47, 0x53, 0xe3, 0xd9, 0x8f, 0xa0,
0xe0, 0xc3, 0x04, 0x35, 0xd2, 0x30, 0xea, 0x90, 0x17, 0x6f, 0x6e, 0xf4, 0xe3, 0xa8, 0xb1, 0xc6, 0x46, 0x1a, 0x46, 0xbd, 0x97, 0xf8, 0x83, 0x3b, 0x81, 0x38, 0x6b, 0x1c, 0x4d, 0x7d, 0x83, 0x0f,
0x0b, 0x6a, 0xa4, 0x59, 0x6b, 0xc2, 0x64, 0x60, 0x1f, 0x79, 0xd4, 0x76, 0xcc, 0x0f, 0x6a, 0x00, 0x13, 0xd4, 0x48, 0xc3, 0xa8, 0x43, 0x5e, 0xec, 0xb9, 0xd1, 0x8f, 0xa3, 0xc6, 0x35, 0x41, 0x50,
0xe9, 0xc0, 0x88, 0x37, 0x3a, 0x8a, 0x8b, 0x96, 0x4f, 0x74, 0x51, 0xe0, 0x1d, 0x49, 0x4e, 0xea, 0x23, 0xcd, 0x5a, 0x13, 0x26, 0x03, 0xfb, 0xc8, 0xa3, 0xb6, 0x63, 0x7e, 0x50, 0x03, 0x48, 0x07,
0x55, 0x3b, 0xe9, 0x73, 0xe3, 0x3a, 0x09, 0xb9, 0x15, 0xdc, 0x74, 0xb5, 0xe0, 0xa6, 0xe5, 0x13, 0x46, 0xbc, 0x31, 0x52, 0x5c, 0xb4, 0x7c, 0xa2, 0x8b, 0x02, 0xef, 0x48, 0x72, 0x52, 0xaf, 0xda,
0xdd, 0x24, 0x84, 0x12, 0x8e, 0xba, 0x5a, 0x70, 0xd4, 0xf2, 0x89, 0x8e, 0x12, 0xf4, 0xc2, 0x55, 0x49, 0x9f, 0x1b, 0xd7, 0x49, 0xc8, 0xad, 0xe0, 0xa6, 0xab, 0x05, 0x37, 0x2d, 0x9f, 0xe8, 0x26,
0x57, 0x0b, 0xae, 0x5a, 0x3e, 0xd1, 0x55, 0x82, 0x5e, 0x38, 0xeb, 0x6a, 0xc1, 0x59, 0xcb, 0x27, 0x21, 0x94, 0x70, 0xd4, 0xd5, 0x82, 0xa3, 0x96, 0x4f, 0x74, 0x94, 0xa0, 0x17, 0xae, 0xba, 0x5a,
0x3a, 0x4b, 0xd0, 0x97, 0xdd, 0xf5, 0x37, 0x1d, 0x66, 0xb9, 0xc9, 0xf0, 0xe6, 0xd6, 0xdf, 0xa5, 0x70, 0xd5, 0xf2, 0x89, 0xae, 0x12, 0xf4, 0xc2, 0x59, 0x57, 0x0b, 0xce, 0x5a, 0x3e, 0xd1, 0x59,
0xe5, 0x67, 0x7c, 0x5a, 0xc5, 0x33, 0x3e, 0xe3, 0x45, 0x98, 0x47, 0x04, 0x91, 0xae, 0x58, 0x74, 0x82, 0xbe, 0xec, 0xae, 0xbf, 0xe9, 0x30, 0xcb, 0x4d, 0x86, 0x15, 0xce, 0xdf, 0xa5, 0xe5, 0x67,
0x7e, 0xc5, 0x52, 0xfe, 0xc0, 0x2f, 0x95, 0x92, 0x28, 0xa6, 0xc3, 0x0d, 0x3b, 0xb6, 0xd3, 0xe6, 0x7f, 0x5a, 0xc5, 0xb3, 0x3f, 0xe3, 0x45, 0x98, 0x47, 0x04, 0x91, 0xae, 0x64, 0xb0, 0x68, 0x96,
0x2b, 0xc7, 0xc8, 0x57, 0x7e, 0x13, 0xa5, 0x17, 0xed, 0x21, 0xa5, 0xc3, 0xec, 0x2e, 0x4f, 0x40, 0x3f, 0xf0, 0x4b, 0xa8, 0x24, 0x8a, 0xe9, 0x70, 0xc3, 0x8e, 0xed, 0xb4, 0x59, 0xcb, 0x31, 0xf2,
0x8c, 0x22, 0x76, 0x87, 0x84, 0x26, 0xb1, 0x28, 0x13, 0x29, 0x88, 0x6f, 0xaf, 0x1c, 0xd7, 0xe6, 0x15, 0xe1, 0x44, 0xe9, 0x05, 0x7c, 0x48, 0xe9, 0x30, 0xbb, 0xfb, 0x13, 0x10, 0xa3, 0x88, 0xdd,
0x17, 0x65, 0xe2, 0x61, 0x52, 0x86, 0xe0, 0x95, 0x2d, 0xbf, 0xf8, 0x13, 0x2f, 0xce, 0x73, 0xcc, 0x21, 0xa1, 0x49, 0x2c, 0xca, 0x44, 0x0a, 0xe2, 0x5b, 0x2d, 0xc7, 0xb5, 0xf9, 0xc5, 0x9a, 0x78,
0x18, 0x97, 0x74, 0xfc, 0xcf, 0x0b, 0x6e, 0xec, 0xca, 0x0f, 0x96, 0xea, 0x96, 0x82, 0x33, 0xff, 0xc8, 0x94, 0x21, 0x78, 0x65, 0xcb, 0x2f, 0x0a, 0xc5, 0x0b, 0xf5, 0x1c, 0x33, 0xc6, 0xa5, 0x1e,
0xa9, 0xc1, 0xb9, 0x6d, 0x3b, 0x8c, 0xdd, 0xbe, 0x1b, 0xd8, 0x7e, 0xdc, 0x25, 0xb1, 0xcd, 0xf5, 0xff, 0xb3, 0x83, 0x1b, 0xbb, 0xf2, 0x03, 0xa7, 0xba, 0xa5, 0xe0, 0xcc, 0x7f, 0x6a, 0x70, 0x6e,
0x54, 0x9e, 0x91, 0x6a, 0x0f, 0xf7, 0x8c, 0x74, 0x1b, 0xe6, 0x06, 0xea, 0x0e, 0xe4, 0x21, 0x37, 0xdb, 0x0e, 0x63, 0xb7, 0xef, 0x06, 0xb6, 0x1f, 0x77, 0x49, 0x6c, 0x73, 0x3d, 0x95, 0x67, 0xa7,
0x0f, 0x45, 0x72, 0xe5, 0x4d, 0x6c, 0xed, 0xa1, 0xdf, 0xc4, 0x9a, 0xdf, 0xd3, 0x61, 0xae, 0x50, 0xda, 0xc3, 0x3d, 0x3b, 0xdd, 0x86, 0xb9, 0x81, 0xba, 0x63, 0x79, 0xc8, 0xcd, 0x46, 0x91, 0x5c,
0x5e, 0x8f, 0x5d, 0x9b, 0x56, 0x01, 0xdc, 0x2c, 0xd4, 0x8e, 0x39, 0xa0, 0x57, 0xe3, 0xd1, 0x92, 0x79, 0x43, 0x5b, 0x7b, 0xe8, 0x37, 0xb4, 0xe6, 0xf7, 0x74, 0x98, 0x2b, 0x94, 0xd7, 0x63, 0xd7,
0x88, 0xaa, 0x6e, 0x08, 0x6b, 0xa7, 0xbf, 0x21, 0xbc, 0x01, 0xad, 0x20, 0x77, 0xd2, 0x31, 0xfb, 0xa6, 0x55, 0x00, 0x37, 0x0b, 0xb5, 0x63, 0x0e, 0xf4, 0xd5, 0x78, 0xb4, 0x24, 0xa2, 0xaa, 0x1b,
0xa3, 0x0a, 0x57, 0x5a, 0x32, 0xa9, 0xf9, 0x3e, 0xcc, 0x97, 0xaa, 0x18, 0xbf, 0xb6, 0xa3, 0xfb, 0xc5, 0xda, 0xe9, 0x6f, 0x14, 0x6f, 0x40, 0x2b, 0xc8, 0x9d, 0x74, 0xcc, 0x7e, 0xaa, 0xc2, 0x95,
0xc4, 0xcf, 0xae, 0xed, 0x18, 0x20, 0x05, 0xb4, 0x5e, 0x0c, 0x68, 0xcf, 0x3d, 0x94, 0x1f, 0xe8, 0x96, 0x4c, 0x6a, 0xbe, 0x07, 0xf3, 0xa5, 0x2a, 0xc6, 0xaf, 0xf9, 0xe8, 0x3e, 0xf1, 0xb3, 0x6b,
0x0b, 0xd0, 0xfc, 0xbe, 0x0e, 0x0b, 0xd5, 0x2b, 0xd0, 0x93, 0x6a, 0xee, 0x1d, 0xe8, 0x8c, 0xaa, 0x3e, 0x06, 0x48, 0x01, 0xad, 0x17, 0x03, 0xda, 0x73, 0x0f, 0xe5, 0x07, 0xfd, 0x02, 0x34, 0xbf,
0xf6, 0x67, 0x66, 0xf5, 0x3c, 0xba, 0xb3, 0xb5, 0xfa, 0x49, 0x35, 0xf7, 0xb9, 0x34, 0xba, 0xa5, 0xaf, 0xc3, 0x42, 0xf5, 0x0a, 0xf4, 0xa4, 0x9a, 0x7b, 0x07, 0x3a, 0xa3, 0xaa, 0xfd, 0x99, 0x59,
0xe5, 0xd0, 0xfc, 0x75, 0x66, 0x9f, 0xac, 0x1b, 0x79, 0x42, 0xed, 0x63, 0x5c, 0x82, 0x36, 0xaa, 0x3d, 0x8f, 0xee, 0x6c, 0xad, 0x7e, 0x52, 0xcd, 0x7d, 0x2e, 0x8d, 0x6e, 0x69, 0x39, 0x34, 0x7f,
0x29, 0x3d, 0x29, 0xc1, 0xe6, 0xb6, 0x84, 0xcf, 0x2b, 0x85, 0xd4, 0x1a, 0x9c, 0x59, 0xcc, 0xfe, 0x9d, 0xd9, 0x27, 0xeb, 0x46, 0x9e, 0x50, 0xfb, 0x18, 0x97, 0xa0, 0x8d, 0x6a, 0x4a, 0x4f, 0x50,
0x41, 0x4b, 0x7d, 0x92, 0xf5, 0x78, 0x9f, 0x28, 0x9f, 0xe4, 0x91, 0x26, 0x35, 0x3e, 0x52, 0xa4, 0xb0, 0xb9, 0x2d, 0xe1, 0xf3, 0x4a, 0x21, 0xb5, 0x06, 0x67, 0x16, 0xb3, 0x7f, 0xd0, 0x52, 0x9f,
0x65, 0xbd, 0xe7, 0xff, 0x22, 0xed, 0xe4, 0x48, 0xcb, 0x6c, 0x29, 0x35, 0x81, 0xe6, 0xb7, 0x60, 0x64, 0x3d, 0xde, 0x27, 0xca, 0x27, 0x79, 0xa4, 0x49, 0x8d, 0x8f, 0x14, 0x69, 0x59, 0xef, 0xf9,
0x66, 0x83, 0x78, 0xdd, 0x68, 0x90, 0xbe, 0x79, 0x3d, 0xd3, 0xcd, 0x64, 0xf1, 0x65, 0xe0, 0x44, 0xbf, 0x48, 0x3b, 0x39, 0xd2, 0x32, 0x5b, 0x4a, 0x4d, 0xa0, 0xf9, 0x2d, 0x98, 0xd9, 0x20, 0x5e,
0xf9, 0x65, 0xe0, 0x1a, 0xcc, 0xca, 0x02, 0x9c, 0xe6, 0x4d, 0xe7, 0xda, 0x85, 0xaf, 0x2d, 0xae, 0x37, 0x1a, 0xa4, 0x6f, 0x64, 0xcf, 0x74, 0x33, 0x59, 0x7c, 0x49, 0x38, 0x51, 0x7e, 0x49, 0xb8,
0x88, 0xff, 0x4a, 0xbf, 0x56, 0x32, 0xe2, 0x4e, 0x83, 0xff, 0xbb, 0xf2, 0xe5, 0xff, 0x06, 0x00, 0x06, 0xb3, 0xb2, 0x00, 0xa7, 0x79, 0x03, 0xba, 0x76, 0xe1, 0xeb, 0x8b, 0x2b, 0xe2, 0xbf, 0xd5,
0x00, 0xff, 0xff, 0x8e, 0xa2, 0xa5, 0x98, 0x84, 0x3d, 0x00, 0x00, 0xaf, 0x96, 0x8c, 0xb8, 0xd3, 0xe0, 0xff, 0xc6, 0x7c, 0xe9, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff,
0x36, 0xc8, 0xed, 0x00, 0xb4, 0x3d, 0x00, 0x00,
} }

@ -487,6 +487,7 @@ message UserInfoUpdatedTips{
//////////////////////conversation///////////////////// //////////////////////conversation/////////////////////
message ConversationUpdateTips{ message ConversationUpdateTips{
string UserID = 1; string UserID = 1;
repeated string conversationIDList = 2;
} }
message ConversationSetPrivateTips{ message ConversationSetPrivateTips{

Loading…
Cancel
Save