mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-04-06 04:15:46 +08:00
Merge branch 'v2.3.0release'
This commit is contained in:
commit
026f61126a
@ -139,15 +139,16 @@ func main() {
|
|||||||
chatGroup.POST("/send_msg", apiChat.SendMsg)
|
chatGroup.POST("/send_msg", apiChat.SendMsg)
|
||||||
chatGroup.POST("/pull_msg_by_seq", apiChat.PullMsgBySeqList)
|
chatGroup.POST("/pull_msg_by_seq", apiChat.PullMsgBySeqList)
|
||||||
chatGroup.POST("/del_msg", apiChat.DelMsg)
|
chatGroup.POST("/del_msg", apiChat.DelMsg)
|
||||||
|
chatGroup.POST("/del_super_group_msg", apiChat.DelSuperGroupMsg)
|
||||||
chatGroup.POST("/clear_msg", apiChat.ClearMsg)
|
chatGroup.POST("/clear_msg", apiChat.ClearMsg)
|
||||||
chatGroup.POST("/manage_send_msg", manage.ManagementSendMsg)
|
chatGroup.POST("/manage_send_msg", manage.ManagementSendMsg)
|
||||||
chatGroup.POST("/batch_send_msg", manage.ManagementBatchSendMsg)
|
chatGroup.POST("/batch_send_msg", manage.ManagementBatchSendMsg)
|
||||||
}
|
}
|
||||||
//Manager
|
//Manager
|
||||||
managementGroup := r.Group("/manager")
|
//managementGroup := r.Group("/manager")
|
||||||
{
|
//{
|
||||||
managementGroup.POST("/delete_user", manage.DeleteUser) //1
|
// managementGroup.POST("/delete_user", manage.DeleteUser) //1
|
||||||
}
|
//}
|
||||||
//Conversation
|
//Conversation
|
||||||
conversationGroup := r.Group("/conversation")
|
conversationGroup := r.Group("/conversation")
|
||||||
{ //1
|
{ //1
|
||||||
|
@ -38,6 +38,7 @@ redis:
|
|||||||
dbMaxIdle: 128
|
dbMaxIdle: 128
|
||||||
dbMaxActive: 0
|
dbMaxActive: 0
|
||||||
dbIdleTimeout: 120
|
dbIdleTimeout: 120
|
||||||
|
dbUserName: #only redis version 6.0+ need username
|
||||||
dbPassWord: openIM #redis密码 建议修改
|
dbPassWord: openIM #redis密码 建议修改
|
||||||
enableCluster: false #如果外部redis以集群方式启动,需要打开此开关
|
enableCluster: false #如果外部redis以集群方式启动,需要打开此开关
|
||||||
|
|
||||||
@ -174,7 +175,7 @@ rpcregistername: #rpc注册服务名,默认即可
|
|||||||
log:
|
log:
|
||||||
storageLocation: ../logs/
|
storageLocation: ../logs/
|
||||||
rotationTime: 24
|
rotationTime: 24
|
||||||
remainRotationCount: 3 #日志数量
|
remainRotationCount: 2 #日志数量
|
||||||
#日志级别 6表示全都打印,测试阶段建议设置为6
|
#日志级别 6表示全都打印,测试阶段建议设置为6
|
||||||
remainLogLevel: 6
|
remainLogLevel: 6
|
||||||
elasticSearchSwitch: false
|
elasticSearchSwitch: false
|
||||||
@ -706,6 +707,7 @@ demo:
|
|||||||
superCode: 666666 #超级验证码,建议修改掉,收不到短信验证码时可以用此替代
|
superCode: 666666 #超级验证码,建议修改掉,收不到短信验证码时可以用此替代
|
||||||
# second
|
# second
|
||||||
codeTTL: 60
|
codeTTL: 60
|
||||||
|
useSuperCode: true
|
||||||
mail: #仅支持qq邮箱,具体操作参考 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 必须修改
|
mail: #仅支持qq邮箱,具体操作参考 https://service.mail.qq.com/cgi-bin/help?subtype=1&id=28&no=1001256 必须修改
|
||||||
title: "openIM"
|
title: "openIM"
|
||||||
senderMail: "765567899@qq.com"
|
senderMail: "765567899@qq.com"
|
||||||
|
139
docker-compose-mongos.yaml
Normal file
139
docker-compose-mongos.yaml
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
version: "3"
|
||||||
|
#fixme Clone openIM Server project before using docker-compose,project address:https://github.com/OpenIMSDK/Open-IM-Server.git
|
||||||
|
|
||||||
|
services:
|
||||||
|
mysql:
|
||||||
|
image: mysql:5.7
|
||||||
|
ports:
|
||||||
|
- 13306:3306
|
||||||
|
- 23306:33060
|
||||||
|
container_name: mysql
|
||||||
|
volumes:
|
||||||
|
- ./components/mysql/data:/var/lib/mysql
|
||||||
|
- /etc/localtime:/etc/localtime
|
||||||
|
environment:
|
||||||
|
MYSQL_ROOT_PASSWORD: openIM
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
mongos:
|
||||||
|
image: mongo:latest
|
||||||
|
ports:
|
||||||
|
- 37017:27017
|
||||||
|
container_name: mongos
|
||||||
|
command: mongos --configdb config/103.116.45.174:27019 --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- ./components/mongos_mongodb/data/db:/data/db
|
||||||
|
- ./components/mongos_mongodb/data/logs:/data/logs
|
||||||
|
- ./components/mongos_mongodb/data/conf:/etc/mongo
|
||||||
|
- ./components/mongos_mongodb/data/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
# environment:
|
||||||
|
# - MONGO_INITDB_ROOT_USERNAME=openIM
|
||||||
|
# - MONGO_INITDB_ROOT_PASSWORD=openIM
|
||||||
|
|
||||||
|
|
||||||
|
#TZ: Asia/Shanghai
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis
|
||||||
|
ports:
|
||||||
|
- 16379:6379
|
||||||
|
container_name: redis
|
||||||
|
volumes:
|
||||||
|
- ./components/redis/data:/data
|
||||||
|
#redis config file
|
||||||
|
- ./components/redis/config/redis.conf:/usr/local/redis/config/redis.conf
|
||||||
|
environment:
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
restart: always
|
||||||
|
sysctls:
|
||||||
|
net.core.somaxconn: 1024
|
||||||
|
command: redis-server --requirepass openIM --appendonly yes
|
||||||
|
|
||||||
|
|
||||||
|
zookeeper:
|
||||||
|
image: wurstmeister/zookeeper
|
||||||
|
ports:
|
||||||
|
- 2181:2181
|
||||||
|
container_name: zookeeper
|
||||||
|
volumes:
|
||||||
|
- /etc/localtime:/etc/localtime
|
||||||
|
environment:
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
restart: always
|
||||||
|
|
||||||
|
|
||||||
|
kafka:
|
||||||
|
image: wurstmeister/kafka
|
||||||
|
container_name: kafka
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 9092:9092
|
||||||
|
environment:
|
||||||
|
TZ: Asia/Shanghai
|
||||||
|
KAFKA_BROKER_ID: 0
|
||||||
|
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
|
||||||
|
KAFKA_CREATE_TOPICS: "ws2ms_chat:8:1,ms2ps_chat:8:1,msg_to_mongo:8:1"
|
||||||
|
KAFKA_ADVERTISED_LISTENERS: INSIDE://127.0.0.1:9092,OUTSIDE://103.116.45.174:9092
|
||||||
|
KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9093
|
||||||
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
|
||||||
|
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
|
||||||
|
depends_on:
|
||||||
|
- zookeeper
|
||||||
|
|
||||||
|
etcd:
|
||||||
|
image: quay.io/coreos/etcd
|
||||||
|
ports:
|
||||||
|
- 2379:2379
|
||||||
|
- 2380:2380
|
||||||
|
container_name: etcd
|
||||||
|
volumes:
|
||||||
|
- /etc/timezone:/etc/timezone
|
||||||
|
- /etc/localtime:/etc/localtime
|
||||||
|
environment:
|
||||||
|
ETCDCTL_API: 3
|
||||||
|
restart: always
|
||||||
|
command: /usr/local/bin/etcd --name etcd0 --data-dir /etcd-data --listen-client-urls http://0.0.0.0:2379 --advertise-client-urls http://0.0.0.0:2379 --listen-peer-urls http://0.0.0.0:2380 --initial-advertise-peer-urls http://0.0.0.0:2380 --initial-cluster etcd0=http://0.0.0.0:2380 --initial-cluster-token tkn --initial-cluster-state new
|
||||||
|
|
||||||
|
minio:
|
||||||
|
image: minio/minio
|
||||||
|
ports:
|
||||||
|
- 10005:9000
|
||||||
|
- 9090:9090
|
||||||
|
container_name: minio
|
||||||
|
volumes:
|
||||||
|
- /mnt/data:/data
|
||||||
|
- /mnt/config:/root/.minio
|
||||||
|
environment:
|
||||||
|
MINIO_ROOT_USER: user12345
|
||||||
|
MINIO_ROOT_PASSWORD: key12345
|
||||||
|
restart: always
|
||||||
|
command: minio server /data --console-address ':9090'
|
||||||
|
|
||||||
|
open_im_server:
|
||||||
|
image: openim/open_im_server:v2.2.0
|
||||||
|
container_name: open_im_server
|
||||||
|
volumes:
|
||||||
|
- ./logs:/Open-IM-Server/logs
|
||||||
|
- ./config/config.yaml:/Open-IM-Server/config/config.yaml
|
||||||
|
- ./db/sdk:/Open-IM-Server/db/sdk
|
||||||
|
- ./script:/Open-IM-Server/script
|
||||||
|
restart: always
|
||||||
|
depends_on:
|
||||||
|
- kafka
|
||||||
|
- mysql
|
||||||
|
- mongos
|
||||||
|
- redis
|
||||||
|
- etcd
|
||||||
|
- minio
|
||||||
|
network_mode: "host"
|
||||||
|
logging:
|
||||||
|
driver: json-file
|
||||||
|
options:
|
||||||
|
max-size: "1g"
|
||||||
|
max-file: "2"
|
113
docker-compose-shard-cluster.yaml
Normal file
113
docker-compose-shard-cluster.yaml
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
version: '3'
|
||||||
|
networks:
|
||||||
|
mongo-network:
|
||||||
|
external: false
|
||||||
|
services:
|
||||||
|
# 配置服务器configsvr
|
||||||
|
config:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: config
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27019:27019
|
||||||
|
command: --configsvr --replSet "config" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- ./components/config_mongodb/data/db:/data/db
|
||||||
|
- ./components/config_mongodb/data/logs:/data/logs
|
||||||
|
- ./components/config_mongodb/data/conf:/etc/mongo
|
||||||
|
- ./components/config_mongodb/data/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
|
||||||
|
# shard分片1
|
||||||
|
shard1:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: shard1
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27118:27018
|
||||||
|
command: --shardsvr --replSet "shard1" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- /data01/mongo/shard1/db:/data/db
|
||||||
|
- /data01/mongo/shard1/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
|
||||||
|
# shard分片2
|
||||||
|
shard2:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: shard2
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27218:27018
|
||||||
|
command: --shardsvr --replSet "shard2" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- /data02/mongo/shard2/db:/data/db
|
||||||
|
- /data02/mongo/shard2/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
# - ${PWD}/key.file:/data/mongodb/key.file
|
||||||
|
|
||||||
|
# shard分片3
|
||||||
|
shard3:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: shard3
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27318:27018
|
||||||
|
command: --shardsvr --replSet "shard3" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- /data03/mongo/shard3/db:/data/db
|
||||||
|
- /data03/mongo/shard3/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
# shard分片4
|
||||||
|
shard4:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: shard4
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27418:27018
|
||||||
|
command: --shardsvr --replSet "shard4" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- /data04/mongo/shard4/db:/data/db
|
||||||
|
- /data04/mongo/shard4/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
||||||
|
# shard分片5
|
||||||
|
shard5:
|
||||||
|
image: mongo:latest
|
||||||
|
networks:
|
||||||
|
- mongo-network
|
||||||
|
container_name: shard5
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- 27518:27018
|
||||||
|
command: --shardsvr --replSet "shard5" --bind_ip_all
|
||||||
|
volumes:
|
||||||
|
- /data05/mongo/shard5/db:/data/db
|
||||||
|
- /data05/mongo/shard5/configdb:/data/configdb
|
||||||
|
environment:
|
||||||
|
- TZ=Asia/Shanghai
|
||||||
|
# cache
|
||||||
|
- wiredTigerCacheSizeGB=1
|
@ -12,6 +12,7 @@ import (
|
|||||||
"Open_IM/pkg/utils"
|
"Open_IM/pkg/utils"
|
||||||
"context"
|
"context"
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
|
"github.com/golang/protobuf/proto"
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
@ -72,6 +73,83 @@ func DelMsg(c *gin.Context) {
|
|||||||
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
||||||
c.JSON(http.StatusOK, resp)
|
c.JSON(http.StatusOK, resp)
|
||||||
}
|
}
|
||||||
|
func DelSuperGroupMsg(c *gin.Context) {
|
||||||
|
var (
|
||||||
|
req api.DelSuperGroupMsgReq
|
||||||
|
resp api.DelSuperGroupMsgResp
|
||||||
|
)
|
||||||
|
if err := c.BindJSON(&req); err != nil {
|
||||||
|
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": err.Error()})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req:", req)
|
||||||
|
|
||||||
|
ok, opUserID, errInfo := token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
|
||||||
|
if !ok {
|
||||||
|
errMsg := req.OperationID + " " + opUserID + " " + "GetUserIDFromToken failed " + errInfo + " token:" + c.Request.Header.Get("token")
|
||||||
|
log.NewError(req.OperationID, errMsg)
|
||||||
|
c.JSON(http.StatusBadRequest, gin.H{"errCode": 500, "errMsg": errMsg})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
options := make(map[string]bool, 5)
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsConversationUpdate, false)
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsSenderConversationUpdate, false)
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsUnreadCount, false)
|
||||||
|
utils.SetSwitchFromOptions(options, constant.IsOfflinePush, false)
|
||||||
|
pbData := rpc.SendMsgReq{
|
||||||
|
OperationID: req.OperationID,
|
||||||
|
MsgData: &pbCommon.MsgData{
|
||||||
|
SendID: req.UserID,
|
||||||
|
RecvID: req.UserID,
|
||||||
|
ClientMsgID: utils.GetMsgID(req.UserID),
|
||||||
|
SessionType: constant.SingleChatType,
|
||||||
|
MsgFrom: constant.SysMsgType,
|
||||||
|
ContentType: constant.MsgDeleteNotification,
|
||||||
|
// ForceList: params.ForceList,
|
||||||
|
CreateTime: utils.GetCurrentTimestampByMill(),
|
||||||
|
Options: options,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
var tips pbCommon.TipsComm
|
||||||
|
deleteMsg := api.MsgDeleteNotificationElem{
|
||||||
|
GroupID: req.GroupID,
|
||||||
|
IsAllDelete: req.IsAllDelete,
|
||||||
|
SeqList: req.SeqList,
|
||||||
|
}
|
||||||
|
tips.JsonDetail = utils.StructToJsonString(deleteMsg)
|
||||||
|
var err error
|
||||||
|
pbData.MsgData.Content, err = proto.Marshal(&tips)
|
||||||
|
if err != nil {
|
||||||
|
log.Error(req.OperationID, "Marshal failed ", err.Error(), tips.String())
|
||||||
|
resp.ErrCode = 400
|
||||||
|
resp.ErrMsg = err.Error()
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
||||||
|
c.JSON(http.StatusOK, resp)
|
||||||
|
}
|
||||||
|
log.Info(req.OperationID, "", "api DelSuperGroupMsg call start..., [data: %s]", pbData.String())
|
||||||
|
etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfflineMessageName, req.OperationID)
|
||||||
|
if etcdConn == nil {
|
||||||
|
errMsg := req.OperationID + "getcdv3.GetConn == nil"
|
||||||
|
log.NewError(req.OperationID, errMsg)
|
||||||
|
c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": errMsg})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
client := rpc.NewChatClient(etcdConn)
|
||||||
|
|
||||||
|
log.Info(req.OperationID, "", "api DelSuperGroupMsg call, api call rpc...")
|
||||||
|
|
||||||
|
RpcResp, err := client.SendMsg(context.Background(), &pbData)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(req.OperationID, "call delete UserSendMsg rpc server failed", err.Error())
|
||||||
|
c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "call UserSendMsg rpc server failed"})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
log.Info(req.OperationID, "", "api DelSuperGroupMsg call end..., [data: %s] [reply: %s]", pbData.String(), RpcResp.String())
|
||||||
|
resp.ErrCode = RpcResp.ErrCode
|
||||||
|
resp.ErrMsg = RpcResp.ErrMsg
|
||||||
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), resp)
|
||||||
|
c.JSON(http.StatusOK, resp)
|
||||||
|
}
|
||||||
|
|
||||||
// @Summary 清空用户消息
|
// @Summary 清空用户消息
|
||||||
// @Description 清空用户消息
|
// @Description 清空用户消息
|
||||||
|
@ -3,6 +3,7 @@ package group
|
|||||||
import (
|
import (
|
||||||
api "Open_IM/pkg/base_info"
|
api "Open_IM/pkg/base_info"
|
||||||
"Open_IM/pkg/common/config"
|
"Open_IM/pkg/common/config"
|
||||||
|
"Open_IM/pkg/common/constant"
|
||||||
"Open_IM/pkg/common/log"
|
"Open_IM/pkg/common/log"
|
||||||
"Open_IM/pkg/common/token_verify"
|
"Open_IM/pkg/common/token_verify"
|
||||||
"Open_IM/pkg/grpc-etcdv3/getcdv3"
|
"Open_IM/pkg/grpc-etcdv3/getcdv3"
|
||||||
@ -316,7 +317,12 @@ func InviteUserToGroup(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
req := &rpc.InviteUserToGroupReq{}
|
req := &rpc.InviteUserToGroupReq{}
|
||||||
utils.CopyStructFields(req, ¶ms)
|
utils.CopyStructFields(req, ¶ms)
|
||||||
|
if len(req.InvitedUserIDList) > constant.MaxNotificationNum {
|
||||||
|
errMsg := req.OperationID + " too many, Limit: " + utils.IntToString(constant.MaxNotificationNum)
|
||||||
|
log.NewError(req.OperationID, errMsg, len(req.InvitedUserIDList))
|
||||||
|
c.JSON(http.StatusRequestEntityTooLarge, gin.H{"errCode": 400, "errMsg": errMsg})
|
||||||
|
return
|
||||||
|
}
|
||||||
var ok bool
|
var ok bool
|
||||||
var errInfo string
|
var errInfo string
|
||||||
ok, req.OpUserID, errInfo = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
|
ok, req.OpUserID, errInfo = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
|
||||||
@ -779,12 +785,7 @@ func SetGroupInfo(c *gin.Context) {
|
|||||||
req := &rpc.SetGroupInfoReq{GroupInfoForSet: &open_im_sdk.GroupInfoForSet{}}
|
req := &rpc.SetGroupInfoReq{GroupInfoForSet: &open_im_sdk.GroupInfoForSet{}}
|
||||||
utils.CopyStructFields(req.GroupInfoForSet, ¶ms)
|
utils.CopyStructFields(req.GroupInfoForSet, ¶ms)
|
||||||
req.OperationID = params.OperationID
|
req.OperationID = params.OperationID
|
||||||
|
argsHandle(¶ms, req)
|
||||||
if params.NeedVerification != nil {
|
|
||||||
req.GroupInfoForSet.NeedVerification = &wrappers.Int32Value{Value: *params.NeedVerification}
|
|
||||||
log.NewInfo(req.OperationID, "NeedVerification ", req.GroupInfoForSet.NeedVerification)
|
|
||||||
}
|
|
||||||
|
|
||||||
var ok bool
|
var ok bool
|
||||||
var errInfo string
|
var errInfo string
|
||||||
ok, req.OpUserID, errInfo = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
|
ok, req.OpUserID, errInfo = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
|
||||||
@ -815,6 +816,20 @@ func SetGroupInfo(c *gin.Context) {
|
|||||||
c.JSON(http.StatusOK, resp)
|
c.JSON(http.StatusOK, resp)
|
||||||
log.NewInfo(req.OperationID, "SetGroupInfo api return ", resp)
|
log.NewInfo(req.OperationID, "SetGroupInfo api return ", resp)
|
||||||
}
|
}
|
||||||
|
func argsHandle(params *api.SetGroupInfoReq, req *rpc.SetGroupInfoReq) {
|
||||||
|
if params.NeedVerification != nil {
|
||||||
|
req.GroupInfoForSet.NeedVerification = &wrappers.Int32Value{Value: *params.NeedVerification}
|
||||||
|
log.NewInfo(req.OperationID, "NeedVerification ", req.GroupInfoForSet.NeedVerification)
|
||||||
|
}
|
||||||
|
if params.LookMemberInfo != nil {
|
||||||
|
req.GroupInfoForSet.LookMemberInfo = &wrappers.Int32Value{Value: *params.LookMemberInfo}
|
||||||
|
log.NewInfo(req.OperationID, "LookMemberInfo ", req.GroupInfoForSet.LookMemberInfo)
|
||||||
|
}
|
||||||
|
if params.ApplyMemberFriend != nil {
|
||||||
|
req.GroupInfoForSet.ApplyMemberFriend = &wrappers.Int32Value{Value: *params.ApplyMemberFriend}
|
||||||
|
log.NewInfo(req.OperationID, "ApplyMemberFriend ", req.GroupInfoForSet.ApplyMemberFriend)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// @Summary 转让群主
|
// @Summary 转让群主
|
||||||
// @Description 转让群主
|
// @Description 转让群主
|
||||||
|
@ -47,7 +47,7 @@ func GetJoinedSuperGroupList(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
GroupListResp := api.GetJoinedSuperGroupListResp{GetJoinedGroupListResp: api.GetJoinedGroupListResp{CommResp: api.CommResp{ErrCode: rpcResp.CommonResp.ErrCode, ErrMsg: rpcResp.CommonResp.ErrMsg}, GroupInfoList: rpcResp.GroupList}}
|
GroupListResp := api.GetJoinedSuperGroupListResp{GetJoinedGroupListResp: api.GetJoinedGroupListResp{CommResp: api.CommResp{ErrCode: rpcResp.CommonResp.ErrCode, ErrMsg: rpcResp.CommonResp.ErrMsg}, GroupInfoList: rpcResp.GroupList}}
|
||||||
GroupListResp.Data = jsonData.JsonDataList(GroupListResp.GroupInfoList)
|
GroupListResp.Data = jsonData.JsonDataList(GroupListResp.GroupInfoList)
|
||||||
log.NewInfo(req.OperationID, "GetJoinedGroupList api return ", GroupListResp)
|
log.NewInfo(req.OperationID, "GetJoinedSuperGroupList api return ", GroupListResp)
|
||||||
c.JSON(http.StatusOK, GroupListResp)
|
c.JSON(http.StatusOK, GroupListResp)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type ParamsLogin struct {
|
type ParamsLogin struct {
|
||||||
|
UserID string `json:"userID"`
|
||||||
Email string `json:"email"`
|
Email string `json:"email"`
|
||||||
PhoneNumber string `json:"phoneNumber"`
|
PhoneNumber string `json:"phoneNumber"`
|
||||||
Password string `json:"password"`
|
Password string `json:"password"`
|
||||||
@ -32,11 +33,13 @@ func Login(c *gin.Context) {
|
|||||||
var account string
|
var account string
|
||||||
if params.Email != "" {
|
if params.Email != "" {
|
||||||
account = params.Email
|
account = params.Email
|
||||||
} else {
|
} else if params.PhoneNumber != "" {
|
||||||
account = params.PhoneNumber
|
account = params.PhoneNumber
|
||||||
|
} else {
|
||||||
|
account = params.UserID
|
||||||
}
|
}
|
||||||
|
|
||||||
r, err := im_mysql_model.GetRegister(account, params.AreaCode)
|
r, err := im_mysql_model.GetRegister(account, params.AreaCode, params.UserID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(params.OperationID, "user have not register", params.Password, account, err.Error())
|
log.NewError(params.OperationID, "user have not register", params.Password, account, err.Error())
|
||||||
c.JSON(http.StatusOK, gin.H{"errCode": constant.NotRegistered, "errMsg": "Mobile phone number is not registered"})
|
c.JSON(http.StatusOK, gin.H{"errCode": constant.NotRegistered, "errMsg": "Mobile phone number is not registered"})
|
||||||
|
@ -34,7 +34,8 @@ func ResetPassword(c *gin.Context) {
|
|||||||
} else {
|
} else {
|
||||||
account = req.PhoneNumber
|
account = req.PhoneNumber
|
||||||
}
|
}
|
||||||
if req.VerificationCode != config.Config.Demo.SuperCode {
|
|
||||||
|
if (config.Config.Demo.UseSuperCode && req.VerificationCode != config.Config.Demo.SuperCode) || !config.Config.Demo.UseSuperCode {
|
||||||
accountKey := req.AreaCode + account + "_" + constant.VerificationCodeForResetSuffix
|
accountKey := req.AreaCode + account + "_" + constant.VerificationCodeForResetSuffix
|
||||||
v, err := db.DB.GetAccountCode(accountKey)
|
v, err := db.DB.GetAccountCode(accountKey)
|
||||||
if err != nil || v != req.VerificationCode {
|
if err != nil || v != req.VerificationCode {
|
||||||
@ -43,7 +44,7 @@ func ResetPassword(c *gin.Context) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
user, err := im_mysql_model.GetRegister(account, req.AreaCode)
|
user, err := im_mysql_model.GetRegister(account, req.AreaCode, "")
|
||||||
if err != nil || user.Account == "" {
|
if err != nil || user.Account == "" {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, utils.GetSelfFuncName(), "get register error", err.Error())
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "get register error", err.Error())
|
||||||
|
@ -66,7 +66,7 @@ func SendVerificationCode(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
switch params.UsedFor {
|
switch params.UsedFor {
|
||||||
case constant.VerificationCodeForRegister:
|
case constant.VerificationCodeForRegister:
|
||||||
_, err := im_mysql_model.GetRegister(account, params.AreaCode)
|
_, err := im_mysql_model.GetRegister(account, params.AreaCode, "")
|
||||||
if err == nil {
|
if err == nil {
|
||||||
log.NewError(params.OperationID, "The phone number has been registered", params)
|
log.NewError(params.OperationID, "The phone number has been registered", params)
|
||||||
c.JSON(http.StatusOK, gin.H{"errCode": constant.HasRegistered, "errMsg": "The phone number has been registered"})
|
c.JSON(http.StatusOK, gin.H{"errCode": constant.HasRegistered, "errMsg": "The phone number has been registered"})
|
||||||
|
@ -18,6 +18,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type ParamsSetPassword struct {
|
type ParamsSetPassword struct {
|
||||||
|
UserID string `json:"userID"`
|
||||||
Email string `json:"email"`
|
Email string `json:"email"`
|
||||||
Nickname string `json:"nickname"`
|
Nickname string `json:"nickname"`
|
||||||
PhoneNumber string `json:"phoneNumber"`
|
PhoneNumber string `json:"phoneNumber"`
|
||||||
@ -40,29 +41,37 @@ func SetPassword(c *gin.Context) {
|
|||||||
var account string
|
var account string
|
||||||
if params.Email != "" {
|
if params.Email != "" {
|
||||||
account = params.Email
|
account = params.Email
|
||||||
} else {
|
} else if params.PhoneNumber != "" {
|
||||||
account = params.PhoneNumber
|
account = params.PhoneNumber
|
||||||
|
} else {
|
||||||
|
account = params.UserID
|
||||||
}
|
}
|
||||||
if params.Nickname == "" {
|
if params.Nickname == "" {
|
||||||
params.Nickname = account
|
params.Nickname = account
|
||||||
}
|
}
|
||||||
if params.VerificationCode != config.Config.Demo.SuperCode {
|
if params.UserID == "" {
|
||||||
accountKey := params.AreaCode + account + "_" + constant.VerificationCodeForRegisterSuffix
|
if (config.Config.Demo.UseSuperCode && params.VerificationCode != config.Config.Demo.SuperCode) || !config.Config.Demo.UseSuperCode {
|
||||||
v, err := db.DB.GetAccountCode(accountKey)
|
accountKey := params.AreaCode + account + "_" + constant.VerificationCodeForRegisterSuffix
|
||||||
if err != nil || v != params.VerificationCode {
|
v, err := db.DB.GetAccountCode(accountKey)
|
||||||
log.NewError(params.OperationID, "password Verification code error", account, params.VerificationCode)
|
if err != nil || v != params.VerificationCode {
|
||||||
data := make(map[string]interface{})
|
log.NewError(params.OperationID, "password Verification code error", account, params.VerificationCode)
|
||||||
data["PhoneNumber"] = account
|
data := make(map[string]interface{})
|
||||||
c.JSON(http.StatusOK, gin.H{"errCode": constant.CodeInvalidOrExpired, "errMsg": "Verification code error!", "data": data})
|
data["PhoneNumber"] = account
|
||||||
return
|
c.JSON(http.StatusOK, gin.H{"errCode": constant.CodeInvalidOrExpired, "errMsg": "Verification code error!", "data": data})
|
||||||
|
return
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//userID := utils.Base64Encode(account)
|
//userID := utils.Base64Encode(account)
|
||||||
|
var userID string
|
||||||
userID := utils.Md5(params.OperationID + strconv.FormatInt(time.Now().UnixNano(), 10))
|
if params.UserID == "" {
|
||||||
bi := big.NewInt(0)
|
userID = utils.Md5(params.OperationID + strconv.FormatInt(time.Now().UnixNano(), 10))
|
||||||
bi.SetString(userID[0:8], 16)
|
bi := big.NewInt(0)
|
||||||
userID = bi.String()
|
bi.SetString(userID[0:8], 16)
|
||||||
|
userID = bi.String()
|
||||||
|
} else {
|
||||||
|
userID = params.UserID
|
||||||
|
}
|
||||||
|
|
||||||
url := config.Config.Demo.ImAPIURL + "/auth/user_register"
|
url := config.Config.Demo.ImAPIURL + "/auth/user_register"
|
||||||
openIMRegisterReq := api.UserRegisterReq{}
|
openIMRegisterReq := api.UserRegisterReq{}
|
||||||
@ -73,6 +82,7 @@ func SetPassword(c *gin.Context) {
|
|||||||
openIMRegisterReq.Secret = config.Config.Secret
|
openIMRegisterReq.Secret = config.Config.Secret
|
||||||
openIMRegisterReq.FaceURL = params.FaceURL
|
openIMRegisterReq.FaceURL = params.FaceURL
|
||||||
openIMRegisterResp := api.UserRegisterResp{}
|
openIMRegisterResp := api.UserRegisterResp{}
|
||||||
|
log.NewDebug(params.OperationID, utils.GetSelfFuncName(), "register req:", openIMRegisterReq)
|
||||||
bMsg, err := http2.Post(url, openIMRegisterReq, 2)
|
bMsg, err := http2.Post(url, openIMRegisterReq, 2)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(params.OperationID, "request openIM register error", account, "err", err.Error())
|
log.NewError(params.OperationID, "request openIM register error", account, "err", err.Error())
|
||||||
@ -97,7 +107,9 @@ func SetPassword(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
log.Info(params.OperationID, "end setPassword", account, params.Password)
|
log.Info(params.OperationID, "end setPassword", account, params.Password)
|
||||||
// demo onboarding
|
// demo onboarding
|
||||||
onboardingProcess(params.OperationID, userID, params.Nickname, params.FaceURL, params.AreaCode+params.PhoneNumber, params.Email)
|
if params.UserID == "" {
|
||||||
|
onboardingProcess(params.OperationID, userID, params.Nickname, params.FaceURL, params.AreaCode+params.PhoneNumber, params.Email)
|
||||||
|
}
|
||||||
c.JSON(http.StatusOK, gin.H{"errCode": constant.NoError, "errMsg": "", "data": openIMRegisterResp.UserToken})
|
c.JSON(http.StatusOK, gin.H{"errCode": constant.NoError, "errMsg": "", "data": openIMRegisterResp.UserToken})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -40,7 +40,7 @@ func Verify(c *gin.Context) {
|
|||||||
account = params.AreaCode + params.PhoneNumber
|
account = params.AreaCode + params.PhoneNumber
|
||||||
}
|
}
|
||||||
|
|
||||||
if params.VerificationCode == config.Config.Demo.SuperCode {
|
if config.Config.Demo.UseSuperCode && params.VerificationCode == config.Config.Demo.SuperCode {
|
||||||
log.NewInfo(params.OperationID, "Super Code Verified successfully", account)
|
log.NewInfo(params.OperationID, "Super Code Verified successfully", account)
|
||||||
data := make(map[string]interface{})
|
data := make(map[string]interface{})
|
||||||
data["account"] = account
|
data["account"] = account
|
||||||
|
@ -233,30 +233,32 @@ func MsgToSuperGroupUser(pushMsg *pbPush.PushMsgReq) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if len(onlineFailedUserIDList) > 0 {
|
||||||
|
callbackResp := callbackOfflinePush(pushMsg.OperationID, onlineFailedUserIDList[0], pushMsg.MsgData)
|
||||||
|
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), "offline callback Resp")
|
||||||
|
if callbackResp.ErrCode != 0 {
|
||||||
|
log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), "callbackOfflinePush result: ", callbackResp)
|
||||||
|
}
|
||||||
|
if callbackResp.ActionCode != constant.ActionAllow {
|
||||||
|
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), "offlinePush stop")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if offlinePusher == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
opts, err := GetOfflinePushOpts(pushMsg)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), "GetOfflinePushOpts failed", pushMsg, err.Error())
|
||||||
|
}
|
||||||
|
log.NewInfo(pushMsg.OperationID, utils.GetSelfFuncName(), onlineFailedUserIDList, content, jsonCustomContent, "opts:", opts)
|
||||||
|
pushResult, err := offlinePusher.Push(onlineFailedUserIDList, content, jsonCustomContent, pushMsg.OperationID, opts)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(pushMsg.OperationID, "offline push error", pushMsg.String(), err.Error())
|
||||||
|
} else {
|
||||||
|
log.NewDebug(pushMsg.OperationID, "offline push return result is ", pushResult, pushMsg.MsgData)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
callbackResp := callbackOfflinePush(pushMsg.OperationID, onlineFailedUserIDList[0], pushMsg.MsgData)
|
|
||||||
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), "offline callback Resp")
|
|
||||||
if callbackResp.ErrCode != 0 {
|
|
||||||
log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), "callbackOfflinePush result: ", callbackResp)
|
|
||||||
}
|
|
||||||
if callbackResp.ActionCode != constant.ActionAllow {
|
|
||||||
log.NewDebug(pushMsg.OperationID, utils.GetSelfFuncName(), "offlinePush stop")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if offlinePusher == nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
opts, err := GetOfflinePushOpts(pushMsg)
|
|
||||||
if err != nil {
|
|
||||||
log.NewError(pushMsg.OperationID, utils.GetSelfFuncName(), "GetOfflinePushOpts failed", pushMsg, err.Error())
|
|
||||||
}
|
|
||||||
log.NewInfo(pushMsg.OperationID, utils.GetSelfFuncName(), onlineFailedUserIDList, content, jsonCustomContent, "opts:", opts)
|
|
||||||
pushResult, err := offlinePusher.Push(onlineFailedUserIDList, content, jsonCustomContent, pushMsg.OperationID, opts)
|
|
||||||
if err != nil {
|
|
||||||
log.NewError(pushMsg.OperationID, "offline push error", pushMsg.String(), err.Error())
|
|
||||||
} else {
|
|
||||||
log.NewDebug(pushMsg.OperationID, "offline push return result is ", pushResult, pushMsg.MsgData)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -106,6 +106,10 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR
|
|||||||
utils.CopyStructFields(&groupInfo, req.GroupInfo)
|
utils.CopyStructFields(&groupInfo, req.GroupInfo)
|
||||||
groupInfo.CreatorUserID = req.OpUserID
|
groupInfo.CreatorUserID = req.OpUserID
|
||||||
groupInfo.GroupID = groupId
|
groupInfo.GroupID = groupId
|
||||||
|
|
||||||
|
if groupInfo.NotificationUpdateTime.Unix() < 0 {
|
||||||
|
groupInfo.NotificationUpdateTime = utils.UnixSecondToTime(0)
|
||||||
|
}
|
||||||
err := imdb.InsertIntoGroup(groupInfo)
|
err := imdb.InsertIntoGroup(groupInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "InsertIntoGroup failed, ", err.Error(), groupInfo)
|
log.NewError(req.OperationID, "InsertIntoGroup failed, ", err.Error(), groupInfo)
|
||||||
@ -122,7 +126,7 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR
|
|||||||
return &pbGroup.CreateGroupResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}, http.WrapError(constant.ErrDB)
|
return &pbGroup.CreateGroupResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}, http.WrapError(constant.ErrDB)
|
||||||
}
|
}
|
||||||
//to group member
|
//to group member
|
||||||
groupMember = db.GroupMember{GroupID: groupId, RoleLevel: constant.GroupOwner, OperatorUserID: req.OpUserID}
|
groupMember = db.GroupMember{GroupID: groupId, RoleLevel: constant.GroupOwner, OperatorUserID: req.OpUserID, JoinSource: constant.JoinByInvitation, InviterUserID: req.OpUserID}
|
||||||
utils.CopyStructFields(&groupMember, us)
|
utils.CopyStructFields(&groupMember, us)
|
||||||
err = imdb.InsertIntoGroupMember(groupMember)
|
err = imdb.InsertIntoGroupMember(groupMember)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -143,6 +147,8 @@ func (s *groupServer) CreateGroup(ctx context.Context, req *pbGroup.CreateGroupR
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
groupMember.RoleLevel = user.RoleLevel
|
groupMember.RoleLevel = user.RoleLevel
|
||||||
|
groupMember.JoinSource = constant.JoinByInvitation
|
||||||
|
groupMember.InviterUserID = req.OpUserID
|
||||||
utils.CopyStructFields(&groupMember, us)
|
utils.CopyStructFields(&groupMember, us)
|
||||||
err = imdb.InsertIntoGroupMember(groupMember)
|
err = imdb.InsertIntoGroupMember(groupMember)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -241,13 +247,22 @@ func (s *groupServer) GetJoinedGroupList(ctx context.Context, req *pbGroup.GetJo
|
|||||||
owner, err2 := imdb.GetGroupOwnerInfoByGroupID(v)
|
owner, err2 := imdb.GetGroupOwnerInfoByGroupID(v)
|
||||||
group, err := imdb.GetGroupInfoByGroupID(v)
|
group, err := imdb.GetGroupInfoByGroupID(v)
|
||||||
if num > 0 && owner != nil && err2 == nil && group != nil && err == nil {
|
if num > 0 && owner != nil && err2 == nil && group != nil && err == nil {
|
||||||
|
if group.Status == constant.GroupStatusDismissed {
|
||||||
|
log.NewError(req.OperationID, "constant.GroupStatusDismissed ", group)
|
||||||
|
continue
|
||||||
|
}
|
||||||
utils.CopyStructFields(&groupNode, group)
|
utils.CopyStructFields(&groupNode, group)
|
||||||
groupNode.CreateTime = uint32(group.CreateTime.Unix())
|
groupNode.CreateTime = uint32(group.CreateTime.Unix())
|
||||||
groupNode.MemberCount = uint32(num)
|
groupNode.NotificationUpdateTime = uint32(group.NotificationUpdateTime.Unix())
|
||||||
|
if group.NotificationUpdateTime.Unix() < 0 {
|
||||||
|
groupNode.NotificationUpdateTime = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
groupNode.MemberCount = num
|
||||||
groupNode.OwnerUserID = owner.UserID
|
groupNode.OwnerUserID = owner.UserID
|
||||||
resp.GroupList = append(resp.GroupList, &groupNode)
|
resp.GroupList = append(resp.GroupList, &groupNode)
|
||||||
} else {
|
} else {
|
||||||
log.NewError(req.OperationID, "check nil ", num, owner, err, group)
|
log.Debug(req.OperationID, "check nil ", num, owner, err, group, err2)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
log.NewDebug(req.OperationID, "joinedGroup ", groupNode)
|
log.NewDebug(req.OperationID, "joinedGroup ", groupNode)
|
||||||
@ -281,6 +296,8 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
|
|||||||
var groupRequest db.GroupRequest
|
var groupRequest db.GroupRequest
|
||||||
groupRequest.UserID = v
|
groupRequest.UserID = v
|
||||||
groupRequest.GroupID = req.GroupID
|
groupRequest.GroupID = req.GroupID
|
||||||
|
groupRequest.JoinSource = constant.JoinByInvitation
|
||||||
|
groupRequest.InviterUserID = req.OpUserID
|
||||||
err = imdb.InsertIntoGroupRequest(groupRequest)
|
err = imdb.InsertIntoGroupRequest(groupRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
var resultNode pbGroup.Id2Result
|
var resultNode pbGroup.Id2Result
|
||||||
@ -334,6 +351,8 @@ func (s *groupServer) InviteUserToGroup(ctx context.Context, req *pbGroup.Invite
|
|||||||
toInsertInfo.GroupID = req.GroupID
|
toInsertInfo.GroupID = req.GroupID
|
||||||
toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers
|
toInsertInfo.RoleLevel = constant.GroupOrdinaryUsers
|
||||||
toInsertInfo.OperatorUserID = req.OpUserID
|
toInsertInfo.OperatorUserID = req.OpUserID
|
||||||
|
toInsertInfo.InviterUserID = req.OpUserID
|
||||||
|
toInsertInfo.JoinSource = constant.JoinByInvitation
|
||||||
err = imdb.InsertIntoGroupMember(toInsertInfo)
|
err = imdb.InsertIntoGroupMember(toInsertInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "InsertIntoGroupMember failed ", req.GroupID, toUserInfo.UserID, toUserInfo.Nickname, toUserInfo.FaceURL)
|
log.NewError(req.OperationID, "InsertIntoGroupMember failed ", req.GroupID, toUserInfo.UserID, toUserInfo.Nickname, toUserInfo.FaceURL)
|
||||||
@ -762,10 +781,14 @@ func (s *groupServer) GroupApplicationResponse(_ context.Context, req *pbGroup.G
|
|||||||
}
|
}
|
||||||
err := imdb.UpdateGroupRequest(groupRequest)
|
err := imdb.UpdateGroupRequest(groupRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
//{openIM002 7836e478bc43ce1d3b8889cac983f59b 1 ok 0001-01-01 00:00:00 +0000 UTC openIM001 0001-01-01 00:00:00 +0000 UTC }
|
|
||||||
log.NewError(req.OperationID, "GroupApplicationResponse failed ", err.Error(), groupRequest)
|
log.NewError(req.OperationID, "GroupApplicationResponse failed ", err.Error(), groupRequest)
|
||||||
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
|
||||||
}
|
}
|
||||||
|
request, err := imdb.GetGroupRequestByGroupIDAndUserID(req.GroupID, req.FromUserID)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(req.OperationID, "GroupApplicationResponse failed ", err.Error(), req.GroupID, req.FromUserID)
|
||||||
|
return &pbGroup.GroupApplicationResponseResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
|
||||||
|
}
|
||||||
|
|
||||||
if req.HandleResult == constant.GroupResponseAgree {
|
if req.HandleResult == constant.GroupResponseAgree {
|
||||||
user, err := imdb.GetUserByUserID(req.FromUserID)
|
user, err := imdb.GetUserByUserID(req.FromUserID)
|
||||||
@ -780,7 +803,8 @@ func (s *groupServer) GroupApplicationResponse(_ context.Context, req *pbGroup.G
|
|||||||
member.OperatorUserID = req.OpUserID
|
member.OperatorUserID = req.OpUserID
|
||||||
member.FaceURL = user.FaceURL
|
member.FaceURL = user.FaceURL
|
||||||
member.Nickname = user.Nickname
|
member.Nickname = user.Nickname
|
||||||
|
member.JoinSource = request.JoinSource
|
||||||
|
member.InviterUserID = request.InviterUserID
|
||||||
err = imdb.InsertIntoGroupMember(member)
|
err = imdb.InsertIntoGroupMember(member)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "GroupApplicationResponse failed ", err.Error(), member)
|
log.NewError(req.OperationID, "GroupApplicationResponse failed ", err.Error(), member)
|
||||||
@ -878,7 +902,7 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq)
|
|||||||
return &pbGroup.JoinGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
|
return &pbGroup.JoinGroupResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, nil
|
||||||
}
|
}
|
||||||
//to group member
|
//to group member
|
||||||
groupMember := db.GroupMember{GroupID: req.GroupID, RoleLevel: constant.GroupOwner, OperatorUserID: req.OpUserID}
|
groupMember := db.GroupMember{GroupID: req.GroupID, RoleLevel: constant.GroupOwner, OperatorUserID: req.OpUserID, JoinSource: req.JoinSource}
|
||||||
utils.CopyStructFields(&groupMember, us)
|
utils.CopyStructFields(&groupMember, us)
|
||||||
err = imdb.InsertIntoGroupMember(groupMember)
|
err = imdb.InsertIntoGroupMember(groupMember)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -920,6 +944,7 @@ func (s *groupServer) JoinGroup(ctx context.Context, req *pbGroup.JoinGroupReq)
|
|||||||
groupRequest.UserID = req.OpUserID
|
groupRequest.UserID = req.OpUserID
|
||||||
groupRequest.ReqMsg = req.ReqMessage
|
groupRequest.ReqMsg = req.ReqMessage
|
||||||
groupRequest.GroupID = req.GroupID
|
groupRequest.GroupID = req.GroupID
|
||||||
|
groupRequest.JoinSource = req.JoinSource
|
||||||
err = imdb.InsertIntoGroupRequest(groupRequest)
|
err = imdb.InsertIntoGroupRequest(groupRequest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "InsertIntoGroupRequest failed ", err.Error(), groupRequest)
|
log.NewError(req.OperationID, "InsertIntoGroupRequest failed ", err.Error(), groupRequest)
|
||||||
@ -1092,7 +1117,24 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
|
|||||||
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB)
|
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if req.GroupInfoForSet.LookMemberInfo != nil {
|
||||||
|
changedType = changedType | (1 << 5)
|
||||||
|
m := make(map[string]interface{})
|
||||||
|
m["look_member_info"] = req.GroupInfoForSet.LookMemberInfo.Value
|
||||||
|
if err := imdb.UpdateGroupInfoDefaultZero(req.GroupInfoForSet.GroupID, m); err != nil {
|
||||||
|
log.NewError(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), m)
|
||||||
|
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if req.GroupInfoForSet.ApplyMemberFriend != nil {
|
||||||
|
changedType = changedType | (1 << 6)
|
||||||
|
m := make(map[string]interface{})
|
||||||
|
m["apply_member_friend"] = req.GroupInfoForSet.ApplyMemberFriend.Value
|
||||||
|
if err := imdb.UpdateGroupInfoDefaultZero(req.GroupInfoForSet.GroupID, m); err != nil {
|
||||||
|
log.NewError(req.OperationID, "UpdateGroupInfoDefaultZero failed ", err.Error(), m)
|
||||||
|
return &pbGroup.SetGroupInfoResp{CommonResp: &pbGroup.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}}, http.WrapError(constant.ErrDB)
|
||||||
|
}
|
||||||
|
}
|
||||||
//
|
//
|
||||||
//if req.RoleLevel != nil {
|
//if req.RoleLevel != nil {
|
||||||
//
|
//
|
||||||
@ -1100,6 +1142,10 @@ func (s *groupServer) SetGroupInfo(ctx context.Context, req *pbGroup.SetGroupInf
|
|||||||
//only administrators can set group information
|
//only administrators can set group information
|
||||||
var groupInfo db.Group
|
var groupInfo db.Group
|
||||||
utils.CopyStructFields(&groupInfo, req.GroupInfoForSet)
|
utils.CopyStructFields(&groupInfo, req.GroupInfoForSet)
|
||||||
|
if req.GroupInfoForSet.Notification != "" {
|
||||||
|
groupInfo.NotificationUserID = req.OpUserID
|
||||||
|
groupInfo.NotificationUpdateTime = time.Now()
|
||||||
|
}
|
||||||
err = imdb.SetGroupInfo(groupInfo)
|
err = imdb.SetGroupInfo(groupInfo)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, "SetGroupInfo failed ", err.Error(), groupInfo)
|
log.NewError(req.OperationID, "SetGroupInfo failed ", err.Error(), groupInfo)
|
||||||
|
@ -10,14 +10,19 @@ import (
|
|||||||
commonPb "Open_IM/pkg/proto/sdk_ws"
|
commonPb "Open_IM/pkg/proto/sdk_ws"
|
||||||
"Open_IM/pkg/utils"
|
"Open_IM/pkg/utils"
|
||||||
"context"
|
"context"
|
||||||
|
"go.mongodb.org/mongo-driver/mongo"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (s *groupServer) GetJoinedSuperGroupList(ctx context.Context, req *pbGroup.GetJoinedSuperGroupListReq) (*pbGroup.GetJoinedSuperGroupListResp, error) {
|
func (s *groupServer) GetJoinedSuperGroupList(ctx context.Context, req *pbGroup.GetJoinedSuperGroupListReq) (*pbGroup.GetJoinedSuperGroupListResp, error) {
|
||||||
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
|
||||||
resp := &pbGroup.GetJoinedSuperGroupListResp{CommonResp: &pbGroup.CommonResp{}}
|
resp := &pbGroup.GetJoinedSuperGroupListResp{CommonResp: &pbGroup.CommonResp{}}
|
||||||
userToSuperGroup, err := db.DB.GetSuperGroupByUserID(req.UserID)
|
userToSuperGroup, err := db.DB.GetSuperGroupByUserID(req.UserID)
|
||||||
|
if err == mongo.ErrNoDocuments {
|
||||||
|
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "GetSuperGroupByUserID failed ", err.Error(), req.UserID)
|
||||||
|
return resp, nil
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetSuperGroupByUserID failed", err.Error())
|
log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetSuperGroupByUserID failed ", err.Error(), req.UserID)
|
||||||
resp.CommonResp.ErrCode = constant.ErrDB.ErrCode
|
resp.CommonResp.ErrCode = constant.ErrDB.ErrCode
|
||||||
resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg
|
resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg
|
||||||
return resp, nil
|
return resp, nil
|
||||||
|
@ -57,7 +57,8 @@ func setGroupInfo(groupID string, groupInfo *open_im_sdk.GroupInfo) error {
|
|||||||
}
|
}
|
||||||
err = utils2.GroupDBCopyOpenIM(groupInfo, group)
|
err = utils2.GroupDBCopyOpenIM(groupInfo, group)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return utils.Wrap(err, "GetGroupMemberNumByGroupID failed")
|
log.NewWarn("", "GroupDBCopyOpenIM failed ", groupID, err.Error())
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@ -183,7 +184,16 @@ func groupNotification(contentType int32, m proto.Message, sendID, groupID, recv
|
|||||||
n.SendID = sendID
|
n.SendID = sendID
|
||||||
if groupID != "" {
|
if groupID != "" {
|
||||||
n.RecvID = groupID
|
n.RecvID = groupID
|
||||||
n.SessionType = constant.GroupChatType
|
group, err := imdb.GetGroupInfoByGroupID(groupID)
|
||||||
|
if err != nil {
|
||||||
|
log.NewError(operationID, "GetGroupInfoByGroupID failed ", err.Error(), groupID)
|
||||||
|
}
|
||||||
|
switch group.GroupType {
|
||||||
|
case constant.NormalGroup:
|
||||||
|
n.SessionType = constant.GroupChatType
|
||||||
|
default:
|
||||||
|
n.SessionType = constant.SuperGroupChatType
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
n.RecvID = recvUserID
|
n.RecvID = recvUserID
|
||||||
n.SessionType = constant.SingleChatType
|
n.SessionType = constant.SingleChatType
|
||||||
@ -223,6 +233,9 @@ func GroupCreatedNotification(operationID, opUserID, groupID string, initMemberL
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
GroupCreatedTips.MemberList = append(GroupCreatedTips.MemberList, &groupMemberInfo)
|
GroupCreatedTips.MemberList = append(GroupCreatedTips.MemberList, &groupMemberInfo)
|
||||||
|
if len(GroupCreatedTips.MemberList) == constant.MaxNotificationNum {
|
||||||
|
break
|
||||||
|
}
|
||||||
}
|
}
|
||||||
groupNotification(constant.GroupCreatedNotification, &GroupCreatedTips, opUserID, groupID, "", operationID)
|
groupNotification(constant.GroupCreatedNotification, &GroupCreatedTips, opUserID, groupID, "", operationID)
|
||||||
}
|
}
|
||||||
@ -527,7 +540,6 @@ func MemberInvitedNotification(operationID, groupID, opUserID, reason string, in
|
|||||||
}
|
}
|
||||||
MemberInvitedTips.InvitedUserList = append(MemberInvitedTips.InvitedUserList, &groupMemberInfo)
|
MemberInvitedTips.InvitedUserList = append(MemberInvitedTips.InvitedUserList, &groupMemberInfo)
|
||||||
}
|
}
|
||||||
|
|
||||||
groupNotification(constant.MemberInvitedNotification, &MemberInvitedTips, opUserID, groupID, "", operationID)
|
groupNotification(constant.MemberInvitedNotification, &MemberInvitedTips, opUserID, groupID, "", operationID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -331,8 +331,8 @@ func (rpc *rpcChat) SendMsg(_ context.Context, pb *pbChat.SendMsgReq) (*pbChat.S
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
log.Debug(pb.OperationID, "send msg cost time22 ", db.GetCurrentTimestampByMill()-newTime, pb.MsgData.ClientMsgID, "uidList : ", len(addUidList))
|
log.Debug(pb.OperationID, "send msg cost time22 ", db.GetCurrentTimestampByMill()-newTime, pb.MsgData.ClientMsgID, "uidList : ", len(addUidList))
|
||||||
wg.Add(1)
|
//wg.Add(1)
|
||||||
go rpc.sendMsgToGroup(addUidList, *pb, constant.OnlineStatus, &sendTag, &wg)
|
//go rpc.sendMsgToGroup(addUidList, *pb, constant.OnlineStatus, &sendTag, &wg)
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
newTime = db.GetCurrentTimestampByMill()
|
newTime = db.GetCurrentTimestampByMill()
|
||||||
// callback
|
// callback
|
||||||
|
@ -378,6 +378,13 @@ func (s *userServer) UpdateUserInfo(ctx context.Context, req *pbUser.UpdateUserI
|
|||||||
return &pbUser.UpdateUserInfoResp{CommonResp: &pbUser.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil
|
return &pbUser.UpdateUserInfoResp{CommonResp: &pbUser.CommonResp{ErrCode: constant.ErrAccess.ErrCode, ErrMsg: constant.ErrAccess.ErrMsg}}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
oldNickname := ""
|
||||||
|
if req.UserInfo.Nickname != "" {
|
||||||
|
u, err := imdb.GetUserByUserID(req.UserInfo.UserID)
|
||||||
|
if err == nil {
|
||||||
|
oldNickname = u.Nickname
|
||||||
|
}
|
||||||
|
}
|
||||||
var user db.User
|
var user db.User
|
||||||
utils.CopyStructFields(&user, req.UserInfo)
|
utils.CopyStructFields(&user, req.UserInfo)
|
||||||
if req.UserInfo.Birth != 0 {
|
if req.UserInfo.Birth != 0 {
|
||||||
@ -416,6 +423,9 @@ func (s *userServer) UpdateUserInfo(ctx context.Context, req *pbUser.UpdateUserI
|
|||||||
if req.UserInfo.FaceURL != "" {
|
if req.UserInfo.FaceURL != "" {
|
||||||
go s.SyncJoinedGroupMemberFaceURL(req.UserInfo.UserID, req.UserInfo.FaceURL, req.OperationID, req.OpUserID)
|
go s.SyncJoinedGroupMemberFaceURL(req.UserInfo.UserID, req.UserInfo.FaceURL, req.OperationID, req.OpUserID)
|
||||||
}
|
}
|
||||||
|
if req.UserInfo.Nickname != "" {
|
||||||
|
go s.SyncJoinedGroupMemberNickname(req.UserInfo.UserID, req.UserInfo.Nickname, oldNickname, req.OperationID, req.OpUserID)
|
||||||
|
}
|
||||||
//updateUserInfoToCacheReq := &cache.UpdateUserInfoToCacheReq{
|
//updateUserInfoToCacheReq := &cache.UpdateUserInfoToCacheReq{
|
||||||
// OperationID: req.OperationID,
|
// OperationID: req.OperationID,
|
||||||
// UserInfoList: []*sdkws.UserInfo{req.UserInfo},
|
// UserInfoList: []*sdkws.UserInfo{req.UserInfo},
|
||||||
@ -455,6 +465,7 @@ func (s *userServer) SetGlobalRecvMessageOpt(ctx context.Context, req *pbUser.Se
|
|||||||
chat.UserInfoUpdatedNotification(req.OperationID, req.UserID, req.UserID)
|
chat.UserInfoUpdatedNotification(req.OperationID, req.UserID, req.UserID)
|
||||||
return &pbUser.SetGlobalRecvMessageOptResp{CommonResp: &pbUser.CommonResp{}}, nil
|
return &pbUser.SetGlobalRecvMessageOptResp{CommonResp: &pbUser.CommonResp{}}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *userServer) SyncJoinedGroupMemberFaceURL(userID string, faceURL string, operationID string, opUserID string) {
|
func (s *userServer) SyncJoinedGroupMemberFaceURL(userID string, faceURL string, operationID string, opUserID string) {
|
||||||
joinedGroupIDList, err := imdb.GetJoinedGroupIDListByUserID(userID)
|
joinedGroupIDList, err := imdb.GetJoinedGroupIDListByUserID(userID)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -468,6 +479,26 @@ func (s *userServer) SyncJoinedGroupMemberFaceURL(userID string, faceURL string,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *userServer) SyncJoinedGroupMemberNickname(userID string, newNickname, oldNickname string, operationID string, opUserID string) {
|
||||||
|
joinedGroupIDList, err := imdb.GetJoinedGroupIDListByUserID(userID)
|
||||||
|
if err != nil {
|
||||||
|
log.NewWarn(operationID, "GetJoinedGroupIDListByUserID failed ", userID, err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
for _, v := range joinedGroupIDList {
|
||||||
|
member, err := imdb.GetGroupMemberInfoByGroupIDAndUserID(v, userID)
|
||||||
|
if err != nil {
|
||||||
|
log.NewWarn(operationID, "GetGroupMemberInfoByGroupIDAndUserID failed ", err.Error(), v, userID)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if member.Nickname == oldNickname {
|
||||||
|
groupMemberInfo := db.GroupMember{UserID: userID, GroupID: v, Nickname: newNickname}
|
||||||
|
imdb.UpdateGroupMemberInfo(groupMemberInfo)
|
||||||
|
chat.GroupMemberInfoSetNotification(operationID, opUserID, v, userID)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func (s *userServer) GetUsersByName(ctx context.Context, req *pbUser.GetUsersByNameReq) (*pbUser.GetUsersByNameResp, error) {
|
func (s *userServer) GetUsersByName(ctx context.Context, req *pbUser.GetUsersByNameReq) (*pbUser.GetUsersByNameResp, error) {
|
||||||
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req:", req.String())
|
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req:", req.String())
|
||||||
resp := &pbUser.GetUsersByNameResp{}
|
resp := &pbUser.GetUsersByNameResp{}
|
||||||
|
@ -72,7 +72,7 @@ type GetBlackListResp struct {
|
|||||||
|
|
||||||
type SetFriendRemarkReq struct {
|
type SetFriendRemarkReq struct {
|
||||||
ParamsCommFriend
|
ParamsCommFriend
|
||||||
Remark string `json:"remark" binding:"required"`
|
Remark string `json:"remark"`
|
||||||
}
|
}
|
||||||
type SetFriendRemarkResp struct {
|
type SetFriendRemarkResp struct {
|
||||||
CommResp
|
CommResp
|
||||||
|
@ -161,10 +161,13 @@ type ApplicationGroupResponseResp struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type JoinGroupReq struct {
|
type JoinGroupReq struct {
|
||||||
GroupID string `json:"groupID" binding:"required"`
|
GroupID string `json:"groupID" binding:"required"`
|
||||||
ReqMessage string `json:"reqMessage"`
|
ReqMessage string `json:"reqMessage"`
|
||||||
OperationID string `json:"operationID" binding:"required"`
|
OperationID string `json:"operationID" binding:"required"`
|
||||||
|
JoinSource int32 `json:"joinSource"`
|
||||||
|
InviterUserID string `json:"inviterUserID"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type JoinGroupResp struct {
|
type JoinGroupResp struct {
|
||||||
CommResp
|
CommResp
|
||||||
}
|
}
|
||||||
@ -178,14 +181,16 @@ type QuitGroupResp struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type SetGroupInfoReq struct {
|
type SetGroupInfoReq struct {
|
||||||
GroupID string `json:"groupID" binding:"required"`
|
GroupID string `json:"groupID" binding:"required"`
|
||||||
GroupName string `json:"groupName"`
|
GroupName string `json:"groupName"`
|
||||||
Notification string `json:"notification"`
|
Notification string `json:"notification"`
|
||||||
Introduction string `json:"introduction"`
|
Introduction string `json:"introduction"`
|
||||||
FaceURL string `json:"faceURL"`
|
FaceURL string `json:"faceURL"`
|
||||||
Ex string `json:"ex"`
|
Ex string `json:"ex"`
|
||||||
OperationID string `json:"operationID" binding:"required"`
|
OperationID string `json:"operationID" binding:"required"`
|
||||||
NeedVerification *int32 `json:"needVerification" binding "oneof=0 1 2"`
|
NeedVerification *int32 `json:"needVerification" `
|
||||||
|
LookMemberInfo *int32 `json:"lookMemberInfo"`
|
||||||
|
ApplyMemberFriend *int32 `json:"applyMemberFriend"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type SetGroupInfoResp struct {
|
type SetGroupInfoResp struct {
|
||||||
|
@ -18,3 +18,19 @@ type CleanUpMsgReq struct {
|
|||||||
type CleanUpMsgResp struct {
|
type CleanUpMsgResp struct {
|
||||||
CommResp
|
CommResp
|
||||||
}
|
}
|
||||||
|
type DelSuperGroupMsgReq struct {
|
||||||
|
UserID string `json:"userID,omitempty" binding:"required"`
|
||||||
|
GroupID string `json:"groupID,omitempty" binding:"required"`
|
||||||
|
SeqList []uint32 `json:"seqList,omitempty"`
|
||||||
|
IsAllDelete bool `json:"isAllDelete"`
|
||||||
|
OperationID string `json:"operationID,omitempty" binding:"required"`
|
||||||
|
}
|
||||||
|
|
||||||
|
type DelSuperGroupMsgResp struct {
|
||||||
|
CommResp
|
||||||
|
}
|
||||||
|
type MsgDeleteNotificationElem struct {
|
||||||
|
GroupID string `json:"groupID"`
|
||||||
|
IsAllDelete bool `json:"isAllDelete"`
|
||||||
|
SeqList []uint32 `json:"seqList"`
|
||||||
|
}
|
||||||
|
@ -32,7 +32,7 @@ type ApiUserInfo struct {
|
|||||||
|
|
||||||
type GroupAddMemberInfo struct {
|
type GroupAddMemberInfo struct {
|
||||||
UserID string `json:"userID" binding:"required"`
|
UserID string `json:"userID" binding:"required"`
|
||||||
RoleLevel int32 `json:"roleLevel" binding:"required"`
|
RoleLevel int32 `json:"roleLevel" binding:"required,oneof= 1 3"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func SetErrCodeMsg(c *gin.Context, status int) *CommResp {
|
func SetErrCodeMsg(c *gin.Context, status int) *CommResp {
|
||||||
|
@ -102,6 +102,7 @@ type config struct {
|
|||||||
DBMaxIdle int `yaml:"dbMaxIdle"`
|
DBMaxIdle int `yaml:"dbMaxIdle"`
|
||||||
DBMaxActive int `yaml:"dbMaxActive"`
|
DBMaxActive int `yaml:"dbMaxActive"`
|
||||||
DBIdleTimeout int `yaml:"dbIdleTimeout"`
|
DBIdleTimeout int `yaml:"dbIdleTimeout"`
|
||||||
|
DBUserName string `yaml:"dbUserName"`
|
||||||
DBPassWord string `yaml:"dbPassWord"`
|
DBPassWord string `yaml:"dbPassWord"`
|
||||||
EnableCluster bool `yaml:"enableCluster"`
|
EnableCluster bool `yaml:"enableCluster"`
|
||||||
}
|
}
|
||||||
@ -464,9 +465,10 @@ type config struct {
|
|||||||
VerificationCodeTemplateCode string `yaml:"verificationCodeTemplateCode"`
|
VerificationCodeTemplateCode string `yaml:"verificationCodeTemplateCode"`
|
||||||
Enable bool `yaml:"enable"`
|
Enable bool `yaml:"enable"`
|
||||||
}
|
}
|
||||||
SuperCode string `yaml:"superCode"`
|
SuperCode string `yaml:"superCode"`
|
||||||
CodeTTL int `yaml:"codeTTL"`
|
CodeTTL int `yaml:"codeTTL"`
|
||||||
Mail struct {
|
UseSuperCode bool `yaml:"useSuperCode"`
|
||||||
|
Mail struct {
|
||||||
Title string `yaml:"title"`
|
Title string `yaml:"title"`
|
||||||
SenderMail string `yaml:"senderMail"`
|
SenderMail string `yaml:"senderMail"`
|
||||||
SenderAuthorizationCode string `yaml:"senderAuthorizationCode"`
|
SenderAuthorizationCode string `yaml:"senderAuthorizationCode"`
|
||||||
|
@ -58,6 +58,7 @@ const (
|
|||||||
FriendRemarkSetNotification = 1206 //set_friend_remark?
|
FriendRemarkSetNotification = 1206 //set_friend_remark?
|
||||||
BlackAddedNotification = 1207 //add_black
|
BlackAddedNotification = 1207 //add_black
|
||||||
BlackDeletedNotification = 1208 //remove_black
|
BlackDeletedNotification = 1208 //remove_black
|
||||||
|
MsgDeleteNotification = 1209
|
||||||
|
|
||||||
ConversationOptChangeNotification = 1300 // change conversation opt
|
ConversationOptChangeNotification = 1300 // change conversation opt
|
||||||
|
|
||||||
@ -161,9 +162,9 @@ const (
|
|||||||
GroupStatusMuted = 3
|
GroupStatusMuted = 3
|
||||||
|
|
||||||
//GroupType
|
//GroupType
|
||||||
NormalGroup = 0
|
NormalGroup = 0
|
||||||
SuperGroup = 1
|
SuperGroup = 1
|
||||||
DepartmentGroup = 2
|
WorkingGroup = 2
|
||||||
|
|
||||||
GroupBaned = 3
|
GroupBaned = 3
|
||||||
GroupBanPrivateChat = 4
|
GroupBanPrivateChat = 4
|
||||||
@ -171,6 +172,10 @@ const (
|
|||||||
//UserJoinGroupSource
|
//UserJoinGroupSource
|
||||||
JoinByAdmin = 1
|
JoinByAdmin = 1
|
||||||
|
|
||||||
|
JoinByInvitation = 2
|
||||||
|
JoinBySearch = 3
|
||||||
|
JoinByQRCode = 4
|
||||||
|
|
||||||
//Minio
|
//Minio
|
||||||
MinioDurationTimes = 3600
|
MinioDurationTimes = 3600
|
||||||
|
|
||||||
@ -298,3 +303,5 @@ const BigVersion = "v2"
|
|||||||
const LogFileName = "OpenIM.log"
|
const LogFileName = "OpenIM.log"
|
||||||
|
|
||||||
const StatisticsTimeInterval = 60
|
const StatisticsTimeInterval = 60
|
||||||
|
|
||||||
|
const MaxNotificationNum = 100
|
||||||
|
@ -119,11 +119,14 @@ func init() {
|
|||||||
// )
|
// )
|
||||||
// },
|
// },
|
||||||
//}
|
//}
|
||||||
|
fmt.Println("tes", config.Config.Redis.DBUserName, config.Config.Redis.DBPassWord)
|
||||||
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
|
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
if config.Config.Redis.EnableCluster {
|
if config.Config.Redis.EnableCluster {
|
||||||
DB.rdb = go_redis.NewClusterClient(&go_redis.ClusterOptions{
|
DB.rdb = go_redis.NewClusterClient(&go_redis.ClusterOptions{
|
||||||
Addrs: config.Config.Redis.DBAddress,
|
Addrs: config.Config.Redis.DBAddress,
|
||||||
|
Username: config.Config.Redis.DBUserName,
|
||||||
|
Password: config.Config.Redis.DBPassWord, // no password set
|
||||||
PoolSize: 50,
|
PoolSize: 50,
|
||||||
})
|
})
|
||||||
_, err = DB.rdb.Ping(ctx).Result()
|
_, err = DB.rdb.Ping(ctx).Result()
|
||||||
@ -133,6 +136,7 @@ func init() {
|
|||||||
} else {
|
} else {
|
||||||
DB.rdb = go_redis.NewClient(&go_redis.Options{
|
DB.rdb = go_redis.NewClient(&go_redis.Options{
|
||||||
Addr: config.Config.Redis.DBAddress[0],
|
Addr: config.Config.Redis.DBAddress[0],
|
||||||
|
Username: config.Config.Redis.DBUserName,
|
||||||
Password: config.Config.Redis.DBPassWord, // no password set
|
Password: config.Config.Redis.DBPassWord, // no password set
|
||||||
DB: 0, // use default DB
|
DB: 0, // use default DB
|
||||||
PoolSize: 100, // 连接池大小
|
PoolSize: 100, // 连接池大小
|
||||||
|
@ -77,17 +77,21 @@ func (FriendRequest) TableName() string {
|
|||||||
type Group struct {
|
type Group struct {
|
||||||
//`json:"operationID" binding:"required"`
|
//`json:"operationID" binding:"required"`
|
||||||
//`protobuf:"bytes,1,opt,name=GroupID" json:"GroupID,omitempty"` `json:"operationID" binding:"required"`
|
//`protobuf:"bytes,1,opt,name=GroupID" json:"GroupID,omitempty"` `json:"operationID" binding:"required"`
|
||||||
GroupID string `gorm:"column:group_id;primary_key;size:64" json:"groupID" binding:"required"`
|
GroupID string `gorm:"column:group_id;primary_key;size:64" json:"groupID" binding:"required"`
|
||||||
GroupName string `gorm:"column:name;size:255" json:"groupName"`
|
GroupName string `gorm:"column:name;size:255" json:"groupName"`
|
||||||
Notification string `gorm:"column:notification;size:255" json:"notification"`
|
Notification string `gorm:"column:notification;size:255" json:"notification"`
|
||||||
Introduction string `gorm:"column:introduction;size:255" json:"introduction"`
|
Introduction string `gorm:"column:introduction;size:255" json:"introduction"`
|
||||||
FaceURL string `gorm:"column:face_url;size:255" json:"faceURL"`
|
FaceURL string `gorm:"column:face_url;size:255" json:"faceURL"`
|
||||||
CreateTime time.Time `gorm:"column:create_time"`
|
CreateTime time.Time `gorm:"column:create_time"`
|
||||||
Ex string `gorm:"column:ex" json:"ex;size:1024" json:"ex"`
|
Ex string `gorm:"column:ex" json:"ex;size:1024" json:"ex"`
|
||||||
Status int32 `gorm:"column:status"`
|
Status int32 `gorm:"column:status"`
|
||||||
CreatorUserID string `gorm:"column:creator_user_id;size:64"`
|
CreatorUserID string `gorm:"column:creator_user_id;size:64"`
|
||||||
GroupType int32 `gorm:"column:group_type"`
|
GroupType int32 `gorm:"column:group_type"`
|
||||||
NeedVerification int32 `gorm:"column:need_verification"`
|
NeedVerification int32 `gorm:"column:need_verification"`
|
||||||
|
LookMemberInfo int32 `gorm:"column:look_member_info" json:"lookMemberInfo"`
|
||||||
|
ApplyMemberFriend int32 `gorm:"column:apply_member_friend" json:"applyMemberFriend"`
|
||||||
|
NotificationUpdateTime time.Time `gorm:"column:notification_update_time"`
|
||||||
|
NotificationUserID string `gorm:"column:notification_user_id;size:64"`
|
||||||
}
|
}
|
||||||
|
|
||||||
//message GroupMemberFullInfo {
|
//message GroupMemberFullInfo {
|
||||||
@ -110,6 +114,7 @@ type GroupMember struct {
|
|||||||
RoleLevel int32 `gorm:"column:role_level"`
|
RoleLevel int32 `gorm:"column:role_level"`
|
||||||
JoinTime time.Time `gorm:"column:join_time"`
|
JoinTime time.Time `gorm:"column:join_time"`
|
||||||
JoinSource int32 `gorm:"column:join_source"`
|
JoinSource int32 `gorm:"column:join_source"`
|
||||||
|
InviterUserID string `gorm:"column:inviter_user_id;size:64"`
|
||||||
OperatorUserID string `gorm:"column:operator_user_id;size:64"`
|
OperatorUserID string `gorm:"column:operator_user_id;size:64"`
|
||||||
MuteEndTime time.Time `gorm:"column:mute_end_time"`
|
MuteEndTime time.Time `gorm:"column:mute_end_time"`
|
||||||
Ex string `gorm:"column:ex;size:1024"`
|
Ex string `gorm:"column:ex;size:1024"`
|
||||||
@ -127,15 +132,17 @@ type GroupMember struct {
|
|||||||
//string Ex = 9;
|
//string Ex = 9;
|
||||||
//}open_im_sdk.GroupRequest == imdb.GroupRequest
|
//}open_im_sdk.GroupRequest == imdb.GroupRequest
|
||||||
type GroupRequest struct {
|
type GroupRequest struct {
|
||||||
UserID string `gorm:"column:user_id;primary_key;size:64"`
|
UserID string `gorm:"column:user_id;primary_key;size:64"`
|
||||||
GroupID string `gorm:"column:group_id;primary_key;size:64"`
|
GroupID string `gorm:"column:group_id;primary_key;size:64"`
|
||||||
HandleResult int32 `gorm:"column:handle_result"`
|
HandleResult int32 `gorm:"column:handle_result"`
|
||||||
ReqMsg string `gorm:"column:req_msg;size:1024"`
|
ReqMsg string `gorm:"column:req_msg;size:1024"`
|
||||||
HandledMsg string `gorm:"column:handle_msg;size:1024"`
|
HandledMsg string `gorm:"column:handle_msg;size:1024"`
|
||||||
ReqTime time.Time `gorm:"column:req_time"`
|
ReqTime time.Time `gorm:"column:req_time"`
|
||||||
HandleUserID string `gorm:"column:handle_user_id;size:64"`
|
HandleUserID string `gorm:"column:handle_user_id;size:64"`
|
||||||
HandledTime time.Time `gorm:"column:handle_time"`
|
HandledTime time.Time `gorm:"column:handle_time"`
|
||||||
Ex string `gorm:"column:ex;size:1024"`
|
JoinSource int32 `gorm:"column:join_source"`
|
||||||
|
InviterUserID string `gorm:"column:inviter_user_id;size:64"`
|
||||||
|
Ex string `gorm:"column:ex;size:1024"`
|
||||||
}
|
}
|
||||||
|
|
||||||
//string UserID = 1;
|
//string UserID = 1;
|
||||||
|
@ -5,14 +5,14 @@ import (
|
|||||||
_ "github.com/jinzhu/gorm"
|
_ "github.com/jinzhu/gorm"
|
||||||
)
|
)
|
||||||
|
|
||||||
func GetRegister(account, areaCode string) (*db.Register, error) {
|
func GetRegister(account, areaCode, userID string) (*db.Register, error) {
|
||||||
dbConn, err := db.DB.MysqlDB.DefaultGormDB()
|
dbConn, err := db.DB.MysqlDB.DefaultGormDB()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
var r db.Register
|
var r db.Register
|
||||||
return &r, dbConn.Table("registers").Where("account = ? or account =? and area_code=?",
|
return &r, dbConn.Table("registers").Where("user_id = ? and user_id != ? or account = ? or account =? and area_code=?",
|
||||||
account, account, areaCode).Take(&r).Error
|
userID, "", account, account, areaCode).Take(&r).Error
|
||||||
}
|
}
|
||||||
|
|
||||||
func SetPassword(account, password, ex, userID, areaCode string) error {
|
func SetPassword(account, password, ex, userID, areaCode string) error {
|
||||||
|
@ -32,10 +32,12 @@ func InsertIntoGroup(groupInfo db.Group) error {
|
|||||||
groupInfo.GroupName = "Group Chat"
|
groupInfo.GroupName = "Group Chat"
|
||||||
}
|
}
|
||||||
groupInfo.CreateTime = time.Now()
|
groupInfo.CreateTime = time.Now()
|
||||||
|
|
||||||
err = dbConn.Table("groups").Create(groupInfo).Error
|
err = dbConn.Table("groups").Create(groupInfo).Error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -302,6 +302,6 @@ func GetRandomDepartmentID() (string, error) {
|
|||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
department := &db.Department{}
|
department := &db.Department{}
|
||||||
err = dbConn.Model(department).Order("RAND()").Where("related_group_id != ? AND department_id != ?", "", "0").First(department).Error
|
err = dbConn.Model(department).Order("RAND()").Where("related_group_id != ? AND department_id != ? AND department_type = ?", "", "0", 1).First(department).Error
|
||||||
return department.DepartmentID, err
|
return department.DepartmentID, err
|
||||||
}
|
}
|
||||||
|
@ -119,3 +119,9 @@ func Test_GetAccountCode(t *testing.T) {
|
|||||||
assert.Nil(t, err)
|
assert.Nil(t, err)
|
||||||
fmt.Println(code)
|
fmt.Println(code)
|
||||||
}
|
}
|
||||||
|
func Test_GetGroupMemberList(t *testing.T) {
|
||||||
|
groupID := "3791742301"
|
||||||
|
list, err := DB.GetGroupMemberIDListFromCache(groupID)
|
||||||
|
assert.Nil(t, err)
|
||||||
|
fmt.Println(list)
|
||||||
|
}
|
||||||
|
@ -98,6 +98,10 @@ func GroupDBCopyOpenIM(dst *open_im_sdk.GroupInfo, src *db.Group) error {
|
|||||||
return utils.Wrap(err, "")
|
return utils.Wrap(err, "")
|
||||||
}
|
}
|
||||||
dst.CreateTime = uint32(src.CreateTime.Unix())
|
dst.CreateTime = uint32(src.CreateTime.Unix())
|
||||||
|
dst.NotificationUpdateTime = uint32(src.NotificationUpdateTime.Unix())
|
||||||
|
if src.NotificationUpdateTime.Unix() < 0 {
|
||||||
|
dst.NotificationUpdateTime = 0
|
||||||
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -118,7 +122,7 @@ func GroupMemberDBCopyOpenIM(dst *open_im_sdk.GroupMemberFullInfo, src *db.Group
|
|||||||
dst.AppMangerLevel = 1
|
dst.AppMangerLevel = 1
|
||||||
}
|
}
|
||||||
dst.JoinTime = int32(src.JoinTime.Unix())
|
dst.JoinTime = int32(src.JoinTime.Unix())
|
||||||
if src.MuteEndTime.Unix() < 0 {
|
if src.JoinTime.Unix() < 0 {
|
||||||
dst.JoinTime = 0
|
dst.JoinTime = 0
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} }
|
|||||||
func (m *CommonResp) String() string { return proto.CompactTextString(m) }
|
func (m *CommonResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CommonResp) ProtoMessage() {}
|
func (*CommonResp) ProtoMessage() {}
|
||||||
func (*CommonResp) Descriptor() ([]byte, []int) {
|
func (*CommonResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{0}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{0}
|
||||||
}
|
}
|
||||||
func (m *CommonResp) XXX_Unmarshal(b []byte) error {
|
func (m *CommonResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CommonResp.Unmarshal(m, b)
|
return xxx_messageInfo_CommonResp.Unmarshal(m, b)
|
||||||
@ -83,7 +83,7 @@ func (m *GroupAddMemberInfo) Reset() { *m = GroupAddMemberInfo{} }
|
|||||||
func (m *GroupAddMemberInfo) String() string { return proto.CompactTextString(m) }
|
func (m *GroupAddMemberInfo) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GroupAddMemberInfo) ProtoMessage() {}
|
func (*GroupAddMemberInfo) ProtoMessage() {}
|
||||||
func (*GroupAddMemberInfo) Descriptor() ([]byte, []int) {
|
func (*GroupAddMemberInfo) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{1}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{1}
|
||||||
}
|
}
|
||||||
func (m *GroupAddMemberInfo) XXX_Unmarshal(b []byte) error {
|
func (m *GroupAddMemberInfo) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GroupAddMemberInfo.Unmarshal(m, b)
|
return xxx_messageInfo_GroupAddMemberInfo.Unmarshal(m, b)
|
||||||
@ -132,7 +132,7 @@ func (m *CreateGroupReq) Reset() { *m = CreateGroupReq{} }
|
|||||||
func (m *CreateGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *CreateGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CreateGroupReq) ProtoMessage() {}
|
func (*CreateGroupReq) ProtoMessage() {}
|
||||||
func (*CreateGroupReq) Descriptor() ([]byte, []int) {
|
func (*CreateGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{2}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{2}
|
||||||
}
|
}
|
||||||
func (m *CreateGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *CreateGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CreateGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_CreateGroupReq.Unmarshal(m, b)
|
||||||
@ -200,7 +200,7 @@ func (m *CreateGroupResp) Reset() { *m = CreateGroupResp{} }
|
|||||||
func (m *CreateGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *CreateGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CreateGroupResp) ProtoMessage() {}
|
func (*CreateGroupResp) ProtoMessage() {}
|
||||||
func (*CreateGroupResp) Descriptor() ([]byte, []int) {
|
func (*CreateGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{3}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{3}
|
||||||
}
|
}
|
||||||
func (m *CreateGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *CreateGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CreateGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_CreateGroupResp.Unmarshal(m, b)
|
||||||
@ -254,7 +254,7 @@ func (m *GetGroupsInfoReq) Reset() { *m = GetGroupsInfoReq{} }
|
|||||||
func (m *GetGroupsInfoReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupsInfoReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupsInfoReq) ProtoMessage() {}
|
func (*GetGroupsInfoReq) ProtoMessage() {}
|
||||||
func (*GetGroupsInfoReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupsInfoReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{4}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{4}
|
||||||
}
|
}
|
||||||
func (m *GetGroupsInfoReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupsInfoReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupsInfoReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupsInfoReq.Unmarshal(m, b)
|
||||||
@ -308,7 +308,7 @@ func (m *GetGroupsInfoResp) Reset() { *m = GetGroupsInfoResp{} }
|
|||||||
func (m *GetGroupsInfoResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupsInfoResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupsInfoResp) ProtoMessage() {}
|
func (*GetGroupsInfoResp) ProtoMessage() {}
|
||||||
func (*GetGroupsInfoResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupsInfoResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{5}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{5}
|
||||||
}
|
}
|
||||||
func (m *GetGroupsInfoResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupsInfoResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupsInfoResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupsInfoResp.Unmarshal(m, b)
|
||||||
@ -362,7 +362,7 @@ func (m *SetGroupInfoReq) Reset() { *m = SetGroupInfoReq{} }
|
|||||||
func (m *SetGroupInfoReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupInfoReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupInfoReq) ProtoMessage() {}
|
func (*SetGroupInfoReq) ProtoMessage() {}
|
||||||
func (*SetGroupInfoReq) Descriptor() ([]byte, []int) {
|
func (*SetGroupInfoReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{6}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{6}
|
||||||
}
|
}
|
||||||
func (m *SetGroupInfoReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupInfoReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupInfoReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupInfoReq.Unmarshal(m, b)
|
||||||
@ -414,7 +414,7 @@ func (m *SetGroupInfoResp) Reset() { *m = SetGroupInfoResp{} }
|
|||||||
func (m *SetGroupInfoResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupInfoResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupInfoResp) ProtoMessage() {}
|
func (*SetGroupInfoResp) ProtoMessage() {}
|
||||||
func (*SetGroupInfoResp) Descriptor() ([]byte, []int) {
|
func (*SetGroupInfoResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{7}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{7}
|
||||||
}
|
}
|
||||||
func (m *SetGroupInfoResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupInfoResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupInfoResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupInfoResp.Unmarshal(m, b)
|
||||||
@ -454,7 +454,7 @@ func (m *GetGroupApplicationListReq) Reset() { *m = GetGroupApplicationL
|
|||||||
func (m *GetGroupApplicationListReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupApplicationListReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupApplicationListReq) ProtoMessage() {}
|
func (*GetGroupApplicationListReq) ProtoMessage() {}
|
||||||
func (*GetGroupApplicationListReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupApplicationListReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{8}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{8}
|
||||||
}
|
}
|
||||||
func (m *GetGroupApplicationListReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupApplicationListReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupApplicationListReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupApplicationListReq.Unmarshal(m, b)
|
||||||
@ -508,7 +508,7 @@ func (m *GetGroupApplicationListResp) Reset() { *m = GetGroupApplication
|
|||||||
func (m *GetGroupApplicationListResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupApplicationListResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupApplicationListResp) ProtoMessage() {}
|
func (*GetGroupApplicationListResp) ProtoMessage() {}
|
||||||
func (*GetGroupApplicationListResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupApplicationListResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{9}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{9}
|
||||||
}
|
}
|
||||||
func (m *GetGroupApplicationListResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupApplicationListResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupApplicationListResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupApplicationListResp.Unmarshal(m, b)
|
||||||
@ -562,7 +562,7 @@ func (m *GetUserReqApplicationListReq) Reset() { *m = GetUserReqApplicat
|
|||||||
func (m *GetUserReqApplicationListReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetUserReqApplicationListReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetUserReqApplicationListReq) ProtoMessage() {}
|
func (*GetUserReqApplicationListReq) ProtoMessage() {}
|
||||||
func (*GetUserReqApplicationListReq) Descriptor() ([]byte, []int) {
|
func (*GetUserReqApplicationListReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{10}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{10}
|
||||||
}
|
}
|
||||||
func (m *GetUserReqApplicationListReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetUserReqApplicationListReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetUserReqApplicationListReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetUserReqApplicationListReq.Unmarshal(m, b)
|
||||||
@ -615,7 +615,7 @@ func (m *GetUserReqApplicationListResp) Reset() { *m = GetUserReqApplica
|
|||||||
func (m *GetUserReqApplicationListResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetUserReqApplicationListResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetUserReqApplicationListResp) ProtoMessage() {}
|
func (*GetUserReqApplicationListResp) ProtoMessage() {}
|
||||||
func (*GetUserReqApplicationListResp) Descriptor() ([]byte, []int) {
|
func (*GetUserReqApplicationListResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{11}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{11}
|
||||||
}
|
}
|
||||||
func (m *GetUserReqApplicationListResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetUserReqApplicationListResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetUserReqApplicationListResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetUserReqApplicationListResp.Unmarshal(m, b)
|
||||||
@ -664,7 +664,7 @@ func (m *TransferGroupOwnerReq) Reset() { *m = TransferGroupOwnerReq{} }
|
|||||||
func (m *TransferGroupOwnerReq) String() string { return proto.CompactTextString(m) }
|
func (m *TransferGroupOwnerReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*TransferGroupOwnerReq) ProtoMessage() {}
|
func (*TransferGroupOwnerReq) ProtoMessage() {}
|
||||||
func (*TransferGroupOwnerReq) Descriptor() ([]byte, []int) {
|
func (*TransferGroupOwnerReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{12}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{12}
|
||||||
}
|
}
|
||||||
func (m *TransferGroupOwnerReq) XXX_Unmarshal(b []byte) error {
|
func (m *TransferGroupOwnerReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_TransferGroupOwnerReq.Unmarshal(m, b)
|
return xxx_messageInfo_TransferGroupOwnerReq.Unmarshal(m, b)
|
||||||
@ -730,7 +730,7 @@ func (m *TransferGroupOwnerResp) Reset() { *m = TransferGroupOwnerResp{}
|
|||||||
func (m *TransferGroupOwnerResp) String() string { return proto.CompactTextString(m) }
|
func (m *TransferGroupOwnerResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*TransferGroupOwnerResp) ProtoMessage() {}
|
func (*TransferGroupOwnerResp) ProtoMessage() {}
|
||||||
func (*TransferGroupOwnerResp) Descriptor() ([]byte, []int) {
|
func (*TransferGroupOwnerResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{13}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{13}
|
||||||
}
|
}
|
||||||
func (m *TransferGroupOwnerResp) XXX_Unmarshal(b []byte) error {
|
func (m *TransferGroupOwnerResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_TransferGroupOwnerResp.Unmarshal(m, b)
|
return xxx_messageInfo_TransferGroupOwnerResp.Unmarshal(m, b)
|
||||||
@ -762,6 +762,8 @@ type JoinGroupReq struct {
|
|||||||
ReqMessage string `protobuf:"bytes,2,opt,name=ReqMessage" json:"ReqMessage,omitempty"`
|
ReqMessage string `protobuf:"bytes,2,opt,name=ReqMessage" json:"ReqMessage,omitempty"`
|
||||||
OpUserID string `protobuf:"bytes,3,opt,name=OpUserID" json:"OpUserID,omitempty"`
|
OpUserID string `protobuf:"bytes,3,opt,name=OpUserID" json:"OpUserID,omitempty"`
|
||||||
OperationID string `protobuf:"bytes,4,opt,name=OperationID" json:"OperationID,omitempty"`
|
OperationID string `protobuf:"bytes,4,opt,name=OperationID" json:"OperationID,omitempty"`
|
||||||
|
JoinSource int32 `protobuf:"varint,5,opt,name=JoinSource" json:"JoinSource,omitempty"`
|
||||||
|
InviterUserID string `protobuf:"bytes,6,opt,name=InviterUserID" json:"InviterUserID,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:"-"`
|
||||||
@ -771,7 +773,7 @@ func (m *JoinGroupReq) Reset() { *m = JoinGroupReq{} }
|
|||||||
func (m *JoinGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *JoinGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*JoinGroupReq) ProtoMessage() {}
|
func (*JoinGroupReq) ProtoMessage() {}
|
||||||
func (*JoinGroupReq) Descriptor() ([]byte, []int) {
|
func (*JoinGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{14}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{14}
|
||||||
}
|
}
|
||||||
func (m *JoinGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *JoinGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_JoinGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_JoinGroupReq.Unmarshal(m, b)
|
||||||
@ -819,6 +821,20 @@ func (m *JoinGroupReq) GetOperationID() string {
|
|||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *JoinGroupReq) GetJoinSource() int32 {
|
||||||
|
if m != nil {
|
||||||
|
return m.JoinSource
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *JoinGroupReq) GetInviterUserID() string {
|
||||||
|
if m != nil {
|
||||||
|
return m.InviterUserID
|
||||||
|
}
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
type JoinGroupResp struct {
|
type JoinGroupResp struct {
|
||||||
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"`
|
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=CommonResp" json:"CommonResp,omitempty"`
|
||||||
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
||||||
@ -830,7 +846,7 @@ func (m *JoinGroupResp) Reset() { *m = JoinGroupResp{} }
|
|||||||
func (m *JoinGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *JoinGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*JoinGroupResp) ProtoMessage() {}
|
func (*JoinGroupResp) ProtoMessage() {}
|
||||||
func (*JoinGroupResp) Descriptor() ([]byte, []int) {
|
func (*JoinGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{15}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{15}
|
||||||
}
|
}
|
||||||
func (m *JoinGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *JoinGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_JoinGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_JoinGroupResp.Unmarshal(m, b)
|
||||||
@ -873,7 +889,7 @@ func (m *GroupApplicationResponseReq) Reset() { *m = GroupApplicationRes
|
|||||||
func (m *GroupApplicationResponseReq) String() string { return proto.CompactTextString(m) }
|
func (m *GroupApplicationResponseReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GroupApplicationResponseReq) ProtoMessage() {}
|
func (*GroupApplicationResponseReq) ProtoMessage() {}
|
||||||
func (*GroupApplicationResponseReq) Descriptor() ([]byte, []int) {
|
func (*GroupApplicationResponseReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{16}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{16}
|
||||||
}
|
}
|
||||||
func (m *GroupApplicationResponseReq) XXX_Unmarshal(b []byte) error {
|
func (m *GroupApplicationResponseReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GroupApplicationResponseReq.Unmarshal(m, b)
|
return xxx_messageInfo_GroupApplicationResponseReq.Unmarshal(m, b)
|
||||||
@ -946,7 +962,7 @@ func (m *GroupApplicationResponseResp) Reset() { *m = GroupApplicationRe
|
|||||||
func (m *GroupApplicationResponseResp) String() string { return proto.CompactTextString(m) }
|
func (m *GroupApplicationResponseResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GroupApplicationResponseResp) ProtoMessage() {}
|
func (*GroupApplicationResponseResp) ProtoMessage() {}
|
||||||
func (*GroupApplicationResponseResp) Descriptor() ([]byte, []int) {
|
func (*GroupApplicationResponseResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{17}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{17}
|
||||||
}
|
}
|
||||||
func (m *GroupApplicationResponseResp) XXX_Unmarshal(b []byte) error {
|
func (m *GroupApplicationResponseResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GroupApplicationResponseResp.Unmarshal(m, b)
|
return xxx_messageInfo_GroupApplicationResponseResp.Unmarshal(m, b)
|
||||||
@ -986,7 +1002,7 @@ func (m *QuitGroupReq) Reset() { *m = QuitGroupReq{} }
|
|||||||
func (m *QuitGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *QuitGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*QuitGroupReq) ProtoMessage() {}
|
func (*QuitGroupReq) ProtoMessage() {}
|
||||||
func (*QuitGroupReq) Descriptor() ([]byte, []int) {
|
func (*QuitGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{18}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{18}
|
||||||
}
|
}
|
||||||
func (m *QuitGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *QuitGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_QuitGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_QuitGroupReq.Unmarshal(m, b)
|
||||||
@ -1038,7 +1054,7 @@ func (m *QuitGroupResp) Reset() { *m = QuitGroupResp{} }
|
|||||||
func (m *QuitGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *QuitGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*QuitGroupResp) ProtoMessage() {}
|
func (*QuitGroupResp) ProtoMessage() {}
|
||||||
func (*QuitGroupResp) Descriptor() ([]byte, []int) {
|
func (*QuitGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{19}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{19}
|
||||||
}
|
}
|
||||||
func (m *QuitGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *QuitGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_QuitGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_QuitGroupResp.Unmarshal(m, b)
|
||||||
@ -1080,7 +1096,7 @@ func (m *GetGroupMemberListReq) Reset() { *m = GetGroupMemberListReq{} }
|
|||||||
func (m *GetGroupMemberListReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMemberListReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMemberListReq) ProtoMessage() {}
|
func (*GetGroupMemberListReq) ProtoMessage() {}
|
||||||
func (*GetGroupMemberListReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupMemberListReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{20}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{20}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMemberListReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMemberListReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMemberListReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMemberListReq.Unmarshal(m, b)
|
||||||
@ -1149,7 +1165,7 @@ func (m *GetGroupMemberListResp) Reset() { *m = GetGroupMemberListResp{}
|
|||||||
func (m *GetGroupMemberListResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMemberListResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMemberListResp) ProtoMessage() {}
|
func (*GetGroupMemberListResp) ProtoMessage() {}
|
||||||
func (*GetGroupMemberListResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupMemberListResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{21}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{21}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMemberListResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMemberListResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMemberListResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMemberListResp.Unmarshal(m, b)
|
||||||
@ -1211,7 +1227,7 @@ func (m *GetGroupMembersInfoReq) Reset() { *m = GetGroupMembersInfoReq{}
|
|||||||
func (m *GetGroupMembersInfoReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMembersInfoReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMembersInfoReq) ProtoMessage() {}
|
func (*GetGroupMembersInfoReq) ProtoMessage() {}
|
||||||
func (*GetGroupMembersInfoReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupMembersInfoReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{22}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{22}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMembersInfoReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMembersInfoReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMembersInfoReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMembersInfoReq.Unmarshal(m, b)
|
||||||
@ -1272,7 +1288,7 @@ func (m *GetGroupMembersInfoResp) Reset() { *m = GetGroupMembersInfoResp
|
|||||||
func (m *GetGroupMembersInfoResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMembersInfoResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMembersInfoResp) ProtoMessage() {}
|
func (*GetGroupMembersInfoResp) ProtoMessage() {}
|
||||||
func (*GetGroupMembersInfoResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupMembersInfoResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{23}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{23}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMembersInfoResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMembersInfoResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMembersInfoResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMembersInfoResp.Unmarshal(m, b)
|
||||||
@ -1328,7 +1344,7 @@ func (m *KickGroupMemberReq) Reset() { *m = KickGroupMemberReq{} }
|
|||||||
func (m *KickGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
func (m *KickGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*KickGroupMemberReq) ProtoMessage() {}
|
func (*KickGroupMemberReq) ProtoMessage() {}
|
||||||
func (*KickGroupMemberReq) Descriptor() ([]byte, []int) {
|
func (*KickGroupMemberReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{24}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{24}
|
||||||
}
|
}
|
||||||
func (m *KickGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
func (m *KickGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_KickGroupMemberReq.Unmarshal(m, b)
|
return xxx_messageInfo_KickGroupMemberReq.Unmarshal(m, b)
|
||||||
@ -1395,7 +1411,7 @@ func (m *Id2Result) Reset() { *m = Id2Result{} }
|
|||||||
func (m *Id2Result) String() string { return proto.CompactTextString(m) }
|
func (m *Id2Result) String() string { return proto.CompactTextString(m) }
|
||||||
func (*Id2Result) ProtoMessage() {}
|
func (*Id2Result) ProtoMessage() {}
|
||||||
func (*Id2Result) Descriptor() ([]byte, []int) {
|
func (*Id2Result) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{25}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{25}
|
||||||
}
|
}
|
||||||
func (m *Id2Result) XXX_Unmarshal(b []byte) error {
|
func (m *Id2Result) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_Id2Result.Unmarshal(m, b)
|
return xxx_messageInfo_Id2Result.Unmarshal(m, b)
|
||||||
@ -1442,7 +1458,7 @@ func (m *KickGroupMemberResp) Reset() { *m = KickGroupMemberResp{} }
|
|||||||
func (m *KickGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
func (m *KickGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*KickGroupMemberResp) ProtoMessage() {}
|
func (*KickGroupMemberResp) ProtoMessage() {}
|
||||||
func (*KickGroupMemberResp) Descriptor() ([]byte, []int) {
|
func (*KickGroupMemberResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{26}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{26}
|
||||||
}
|
}
|
||||||
func (m *KickGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
func (m *KickGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_KickGroupMemberResp.Unmarshal(m, b)
|
return xxx_messageInfo_KickGroupMemberResp.Unmarshal(m, b)
|
||||||
@ -1496,7 +1512,7 @@ func (m *GetJoinedGroupListReq) Reset() { *m = GetJoinedGroupListReq{} }
|
|||||||
func (m *GetJoinedGroupListReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetJoinedGroupListReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetJoinedGroupListReq) ProtoMessage() {}
|
func (*GetJoinedGroupListReq) ProtoMessage() {}
|
||||||
func (*GetJoinedGroupListReq) Descriptor() ([]byte, []int) {
|
func (*GetJoinedGroupListReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{27}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{27}
|
||||||
}
|
}
|
||||||
func (m *GetJoinedGroupListReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetJoinedGroupListReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetJoinedGroupListReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetJoinedGroupListReq.Unmarshal(m, b)
|
||||||
@ -1550,7 +1566,7 @@ func (m *GetJoinedGroupListResp) Reset() { *m = GetJoinedGroupListResp{}
|
|||||||
func (m *GetJoinedGroupListResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetJoinedGroupListResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetJoinedGroupListResp) ProtoMessage() {}
|
func (*GetJoinedGroupListResp) ProtoMessage() {}
|
||||||
func (*GetJoinedGroupListResp) Descriptor() ([]byte, []int) {
|
func (*GetJoinedGroupListResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{28}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{28}
|
||||||
}
|
}
|
||||||
func (m *GetJoinedGroupListResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetJoinedGroupListResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetJoinedGroupListResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetJoinedGroupListResp.Unmarshal(m, b)
|
||||||
@ -1606,7 +1622,7 @@ func (m *InviteUserToGroupReq) Reset() { *m = InviteUserToGroupReq{} }
|
|||||||
func (m *InviteUserToGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *InviteUserToGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*InviteUserToGroupReq) ProtoMessage() {}
|
func (*InviteUserToGroupReq) ProtoMessage() {}
|
||||||
func (*InviteUserToGroupReq) Descriptor() ([]byte, []int) {
|
func (*InviteUserToGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{29}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{29}
|
||||||
}
|
}
|
||||||
func (m *InviteUserToGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *InviteUserToGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_InviteUserToGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_InviteUserToGroupReq.Unmarshal(m, b)
|
||||||
@ -1674,7 +1690,7 @@ func (m *InviteUserToGroupResp) Reset() { *m = InviteUserToGroupResp{} }
|
|||||||
func (m *InviteUserToGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *InviteUserToGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*InviteUserToGroupResp) ProtoMessage() {}
|
func (*InviteUserToGroupResp) ProtoMessage() {}
|
||||||
func (*InviteUserToGroupResp) Descriptor() ([]byte, []int) {
|
func (*InviteUserToGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{30}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{30}
|
||||||
}
|
}
|
||||||
func (m *InviteUserToGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *InviteUserToGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_InviteUserToGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_InviteUserToGroupResp.Unmarshal(m, b)
|
||||||
@ -1728,7 +1744,7 @@ func (m *GetGroupAllMemberReq) Reset() { *m = GetGroupAllMemberReq{} }
|
|||||||
func (m *GetGroupAllMemberReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupAllMemberReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupAllMemberReq) ProtoMessage() {}
|
func (*GetGroupAllMemberReq) ProtoMessage() {}
|
||||||
func (*GetGroupAllMemberReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupAllMemberReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{31}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{31}
|
||||||
}
|
}
|
||||||
func (m *GetGroupAllMemberReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupAllMemberReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupAllMemberReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupAllMemberReq.Unmarshal(m, b)
|
||||||
@ -1782,7 +1798,7 @@ func (m *GetGroupAllMemberResp) Reset() { *m = GetGroupAllMemberResp{} }
|
|||||||
func (m *GetGroupAllMemberResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupAllMemberResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupAllMemberResp) ProtoMessage() {}
|
func (*GetGroupAllMemberResp) ProtoMessage() {}
|
||||||
func (*GetGroupAllMemberResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupAllMemberResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{32}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{32}
|
||||||
}
|
}
|
||||||
func (m *GetGroupAllMemberResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupAllMemberResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupAllMemberResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupAllMemberResp.Unmarshal(m, b)
|
||||||
@ -1836,7 +1852,7 @@ func (m *CMSGroup) Reset() { *m = CMSGroup{} }
|
|||||||
func (m *CMSGroup) String() string { return proto.CompactTextString(m) }
|
func (m *CMSGroup) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CMSGroup) ProtoMessage() {}
|
func (*CMSGroup) ProtoMessage() {}
|
||||||
func (*CMSGroup) Descriptor() ([]byte, []int) {
|
func (*CMSGroup) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{33}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{33}
|
||||||
}
|
}
|
||||||
func (m *CMSGroup) XXX_Unmarshal(b []byte) error {
|
func (m *CMSGroup) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CMSGroup.Unmarshal(m, b)
|
return xxx_messageInfo_CMSGroup.Unmarshal(m, b)
|
||||||
@ -1890,7 +1906,7 @@ func (m *GetGroupReq) Reset() { *m = GetGroupReq{} }
|
|||||||
func (m *GetGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupReq) ProtoMessage() {}
|
func (*GetGroupReq) ProtoMessage() {}
|
||||||
func (*GetGroupReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{34}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{34}
|
||||||
}
|
}
|
||||||
func (m *GetGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupReq.Unmarshal(m, b)
|
||||||
@ -1944,7 +1960,7 @@ func (m *GetGroupResp) Reset() { *m = GetGroupResp{} }
|
|||||||
func (m *GetGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupResp) ProtoMessage() {}
|
func (*GetGroupResp) ProtoMessage() {}
|
||||||
func (*GetGroupResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{35}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{35}
|
||||||
}
|
}
|
||||||
func (m *GetGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupResp.Unmarshal(m, b)
|
||||||
@ -1997,7 +2013,7 @@ func (m *GetGroupsReq) Reset() { *m = GetGroupsReq{} }
|
|||||||
func (m *GetGroupsReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupsReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupsReq) ProtoMessage() {}
|
func (*GetGroupsReq) ProtoMessage() {}
|
||||||
func (*GetGroupsReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupsReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{36}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{36}
|
||||||
}
|
}
|
||||||
func (m *GetGroupsReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupsReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupsReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupsReq.Unmarshal(m, b)
|
||||||
@ -2044,7 +2060,7 @@ func (m *GetGroupsResp) Reset() { *m = GetGroupsResp{} }
|
|||||||
func (m *GetGroupsResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupsResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupsResp) ProtoMessage() {}
|
func (*GetGroupsResp) ProtoMessage() {}
|
||||||
func (*GetGroupsResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupsResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{37}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{37}
|
||||||
}
|
}
|
||||||
func (m *GetGroupsResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupsResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupsResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupsResp.Unmarshal(m, b)
|
||||||
@ -2097,7 +2113,7 @@ func (m *GetGroupMemberReq) Reset() { *m = GetGroupMemberReq{} }
|
|||||||
func (m *GetGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMemberReq) ProtoMessage() {}
|
func (*GetGroupMemberReq) ProtoMessage() {}
|
||||||
func (*GetGroupMemberReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupMemberReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{38}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{38}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMemberReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMemberReq.Unmarshal(m, b)
|
||||||
@ -2144,7 +2160,7 @@ func (m *OperateGroupStatusReq) Reset() { *m = OperateGroupStatusReq{} }
|
|||||||
func (m *OperateGroupStatusReq) String() string { return proto.CompactTextString(m) }
|
func (m *OperateGroupStatusReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*OperateGroupStatusReq) ProtoMessage() {}
|
func (*OperateGroupStatusReq) ProtoMessage() {}
|
||||||
func (*OperateGroupStatusReq) Descriptor() ([]byte, []int) {
|
func (*OperateGroupStatusReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{39}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{39}
|
||||||
}
|
}
|
||||||
func (m *OperateGroupStatusReq) XXX_Unmarshal(b []byte) error {
|
func (m *OperateGroupStatusReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_OperateGroupStatusReq.Unmarshal(m, b)
|
return xxx_messageInfo_OperateGroupStatusReq.Unmarshal(m, b)
|
||||||
@ -2195,7 +2211,7 @@ func (m *OperateGroupStatusResp) Reset() { *m = OperateGroupStatusResp{}
|
|||||||
func (m *OperateGroupStatusResp) String() string { return proto.CompactTextString(m) }
|
func (m *OperateGroupStatusResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*OperateGroupStatusResp) ProtoMessage() {}
|
func (*OperateGroupStatusResp) ProtoMessage() {}
|
||||||
func (*OperateGroupStatusResp) Descriptor() ([]byte, []int) {
|
func (*OperateGroupStatusResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{40}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{40}
|
||||||
}
|
}
|
||||||
func (m *OperateGroupStatusResp) XXX_Unmarshal(b []byte) error {
|
func (m *OperateGroupStatusResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_OperateGroupStatusResp.Unmarshal(m, b)
|
return xxx_messageInfo_OperateGroupStatusResp.Unmarshal(m, b)
|
||||||
@ -2229,7 +2245,7 @@ func (m *OperateUserRoleReq) Reset() { *m = OperateUserRoleReq{} }
|
|||||||
func (m *OperateUserRoleReq) String() string { return proto.CompactTextString(m) }
|
func (m *OperateUserRoleReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*OperateUserRoleReq) ProtoMessage() {}
|
func (*OperateUserRoleReq) ProtoMessage() {}
|
||||||
func (*OperateUserRoleReq) Descriptor() ([]byte, []int) {
|
func (*OperateUserRoleReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{41}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{41}
|
||||||
}
|
}
|
||||||
func (m *OperateUserRoleReq) XXX_Unmarshal(b []byte) error {
|
func (m *OperateUserRoleReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_OperateUserRoleReq.Unmarshal(m, b)
|
return xxx_messageInfo_OperateUserRoleReq.Unmarshal(m, b)
|
||||||
@ -2287,7 +2303,7 @@ func (m *OperateUserRoleResp) Reset() { *m = OperateUserRoleResp{} }
|
|||||||
func (m *OperateUserRoleResp) String() string { return proto.CompactTextString(m) }
|
func (m *OperateUserRoleResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*OperateUserRoleResp) ProtoMessage() {}
|
func (*OperateUserRoleResp) ProtoMessage() {}
|
||||||
func (*OperateUserRoleResp) Descriptor() ([]byte, []int) {
|
func (*OperateUserRoleResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{42}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{42}
|
||||||
}
|
}
|
||||||
func (m *OperateUserRoleResp) XXX_Unmarshal(b []byte) error {
|
func (m *OperateUserRoleResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_OperateUserRoleResp.Unmarshal(m, b)
|
return xxx_messageInfo_OperateUserRoleResp.Unmarshal(m, b)
|
||||||
@ -2319,7 +2335,7 @@ func (m *DeleteGroupReq) Reset() { *m = DeleteGroupReq{} }
|
|||||||
func (m *DeleteGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *DeleteGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DeleteGroupReq) ProtoMessage() {}
|
func (*DeleteGroupReq) ProtoMessage() {}
|
||||||
func (*DeleteGroupReq) Descriptor() ([]byte, []int) {
|
func (*DeleteGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{43}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{43}
|
||||||
}
|
}
|
||||||
func (m *DeleteGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *DeleteGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DeleteGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_DeleteGroupReq.Unmarshal(m, b)
|
||||||
@ -2363,7 +2379,7 @@ func (m *DeleteGroupResp) Reset() { *m = DeleteGroupResp{} }
|
|||||||
func (m *DeleteGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *DeleteGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DeleteGroupResp) ProtoMessage() {}
|
func (*DeleteGroupResp) ProtoMessage() {}
|
||||||
func (*DeleteGroupResp) Descriptor() ([]byte, []int) {
|
func (*DeleteGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{44}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{44}
|
||||||
}
|
}
|
||||||
func (m *DeleteGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *DeleteGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DeleteGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_DeleteGroupResp.Unmarshal(m, b)
|
||||||
@ -2395,7 +2411,7 @@ func (m *GetGroupByIdReq) Reset() { *m = GetGroupByIdReq{} }
|
|||||||
func (m *GetGroupByIdReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupByIdReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupByIdReq) ProtoMessage() {}
|
func (*GetGroupByIdReq) ProtoMessage() {}
|
||||||
func (*GetGroupByIdReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupByIdReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{45}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{45}
|
||||||
}
|
}
|
||||||
func (m *GetGroupByIdReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupByIdReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupByIdReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupByIdReq.Unmarshal(m, b)
|
||||||
@ -2440,7 +2456,7 @@ func (m *GetGroupByIdResp) Reset() { *m = GetGroupByIdResp{} }
|
|||||||
func (m *GetGroupByIdResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupByIdResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupByIdResp) ProtoMessage() {}
|
func (*GetGroupByIdResp) ProtoMessage() {}
|
||||||
func (*GetGroupByIdResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupByIdResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{46}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{46}
|
||||||
}
|
}
|
||||||
func (m *GetGroupByIdResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupByIdResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupByIdResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupByIdResp.Unmarshal(m, b)
|
||||||
@ -2481,7 +2497,7 @@ func (m *GetGroupMembersCMSReq) Reset() { *m = GetGroupMembersCMSReq{} }
|
|||||||
func (m *GetGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMembersCMSReq) ProtoMessage() {}
|
func (*GetGroupMembersCMSReq) ProtoMessage() {}
|
||||||
func (*GetGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
func (*GetGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{47}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{47}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMembersCMSReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMembersCMSReq.Unmarshal(m, b)
|
||||||
@ -2542,7 +2558,7 @@ func (m *GetGroupMembersCMSResp) Reset() { *m = GetGroupMembersCMSResp{}
|
|||||||
func (m *GetGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetGroupMembersCMSResp) ProtoMessage() {}
|
func (*GetGroupMembersCMSResp) ProtoMessage() {}
|
||||||
func (*GetGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
func (*GetGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{48}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{48}
|
||||||
}
|
}
|
||||||
func (m *GetGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetGroupMembersCMSResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetGroupMembersCMSResp.Unmarshal(m, b)
|
||||||
@ -2597,7 +2613,7 @@ func (m *RemoveGroupMembersCMSReq) Reset() { *m = RemoveGroupMembersCMSR
|
|||||||
func (m *RemoveGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
func (m *RemoveGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*RemoveGroupMembersCMSReq) ProtoMessage() {}
|
func (*RemoveGroupMembersCMSReq) ProtoMessage() {}
|
||||||
func (*RemoveGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
func (*RemoveGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{49}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{49}
|
||||||
}
|
}
|
||||||
func (m *RemoveGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
func (m *RemoveGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_RemoveGroupMembersCMSReq.Unmarshal(m, b)
|
return xxx_messageInfo_RemoveGroupMembersCMSReq.Unmarshal(m, b)
|
||||||
@ -2657,7 +2673,7 @@ func (m *RemoveGroupMembersCMSResp) Reset() { *m = RemoveGroupMembersCMS
|
|||||||
func (m *RemoveGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
func (m *RemoveGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*RemoveGroupMembersCMSResp) ProtoMessage() {}
|
func (*RemoveGroupMembersCMSResp) ProtoMessage() {}
|
||||||
func (*RemoveGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
func (*RemoveGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{50}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{50}
|
||||||
}
|
}
|
||||||
func (m *RemoveGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
func (m *RemoveGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_RemoveGroupMembersCMSResp.Unmarshal(m, b)
|
return xxx_messageInfo_RemoveGroupMembersCMSResp.Unmarshal(m, b)
|
||||||
@ -2705,7 +2721,7 @@ func (m *AddGroupMembersCMSReq) Reset() { *m = AddGroupMembersCMSReq{} }
|
|||||||
func (m *AddGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
func (m *AddGroupMembersCMSReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*AddGroupMembersCMSReq) ProtoMessage() {}
|
func (*AddGroupMembersCMSReq) ProtoMessage() {}
|
||||||
func (*AddGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
func (*AddGroupMembersCMSReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{51}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{51}
|
||||||
}
|
}
|
||||||
func (m *AddGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
func (m *AddGroupMembersCMSReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_AddGroupMembersCMSReq.Unmarshal(m, b)
|
return xxx_messageInfo_AddGroupMembersCMSReq.Unmarshal(m, b)
|
||||||
@ -2765,7 +2781,7 @@ func (m *AddGroupMembersCMSResp) Reset() { *m = AddGroupMembersCMSResp{}
|
|||||||
func (m *AddGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
func (m *AddGroupMembersCMSResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*AddGroupMembersCMSResp) ProtoMessage() {}
|
func (*AddGroupMembersCMSResp) ProtoMessage() {}
|
||||||
func (*AddGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
func (*AddGroupMembersCMSResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{52}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{52}
|
||||||
}
|
}
|
||||||
func (m *AddGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
func (m *AddGroupMembersCMSResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_AddGroupMembersCMSResp.Unmarshal(m, b)
|
return xxx_messageInfo_AddGroupMembersCMSResp.Unmarshal(m, b)
|
||||||
@ -2812,7 +2828,7 @@ func (m *DismissGroupReq) Reset() { *m = DismissGroupReq{} }
|
|||||||
func (m *DismissGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *DismissGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DismissGroupReq) ProtoMessage() {}
|
func (*DismissGroupReq) ProtoMessage() {}
|
||||||
func (*DismissGroupReq) Descriptor() ([]byte, []int) {
|
func (*DismissGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{53}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{53}
|
||||||
}
|
}
|
||||||
func (m *DismissGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *DismissGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DismissGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_DismissGroupReq.Unmarshal(m, b)
|
||||||
@ -2864,7 +2880,7 @@ func (m *DismissGroupResp) Reset() { *m = DismissGroupResp{} }
|
|||||||
func (m *DismissGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *DismissGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*DismissGroupResp) ProtoMessage() {}
|
func (*DismissGroupResp) ProtoMessage() {}
|
||||||
func (*DismissGroupResp) Descriptor() ([]byte, []int) {
|
func (*DismissGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{54}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{54}
|
||||||
}
|
}
|
||||||
func (m *DismissGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *DismissGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_DismissGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_DismissGroupResp.Unmarshal(m, b)
|
||||||
@ -2906,7 +2922,7 @@ func (m *MuteGroupMemberReq) Reset() { *m = MuteGroupMemberReq{} }
|
|||||||
func (m *MuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
func (m *MuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MuteGroupMemberReq) ProtoMessage() {}
|
func (*MuteGroupMemberReq) ProtoMessage() {}
|
||||||
func (*MuteGroupMemberReq) Descriptor() ([]byte, []int) {
|
func (*MuteGroupMemberReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{55}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{55}
|
||||||
}
|
}
|
||||||
func (m *MuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
func (m *MuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MuteGroupMemberReq.Unmarshal(m, b)
|
return xxx_messageInfo_MuteGroupMemberReq.Unmarshal(m, b)
|
||||||
@ -2972,7 +2988,7 @@ func (m *MuteGroupMemberResp) Reset() { *m = MuteGroupMemberResp{} }
|
|||||||
func (m *MuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
func (m *MuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MuteGroupMemberResp) ProtoMessage() {}
|
func (*MuteGroupMemberResp) ProtoMessage() {}
|
||||||
func (*MuteGroupMemberResp) Descriptor() ([]byte, []int) {
|
func (*MuteGroupMemberResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{56}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{56}
|
||||||
}
|
}
|
||||||
func (m *MuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
func (m *MuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MuteGroupMemberResp.Unmarshal(m, b)
|
return xxx_messageInfo_MuteGroupMemberResp.Unmarshal(m, b)
|
||||||
@ -3013,7 +3029,7 @@ func (m *CancelMuteGroupMemberReq) Reset() { *m = CancelMuteGroupMemberR
|
|||||||
func (m *CancelMuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
func (m *CancelMuteGroupMemberReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CancelMuteGroupMemberReq) ProtoMessage() {}
|
func (*CancelMuteGroupMemberReq) ProtoMessage() {}
|
||||||
func (*CancelMuteGroupMemberReq) Descriptor() ([]byte, []int) {
|
func (*CancelMuteGroupMemberReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{57}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{57}
|
||||||
}
|
}
|
||||||
func (m *CancelMuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
func (m *CancelMuteGroupMemberReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CancelMuteGroupMemberReq.Unmarshal(m, b)
|
return xxx_messageInfo_CancelMuteGroupMemberReq.Unmarshal(m, b)
|
||||||
@ -3072,7 +3088,7 @@ func (m *CancelMuteGroupMemberResp) Reset() { *m = CancelMuteGroupMember
|
|||||||
func (m *CancelMuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
func (m *CancelMuteGroupMemberResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CancelMuteGroupMemberResp) ProtoMessage() {}
|
func (*CancelMuteGroupMemberResp) ProtoMessage() {}
|
||||||
func (*CancelMuteGroupMemberResp) Descriptor() ([]byte, []int) {
|
func (*CancelMuteGroupMemberResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{58}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{58}
|
||||||
}
|
}
|
||||||
func (m *CancelMuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
func (m *CancelMuteGroupMemberResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CancelMuteGroupMemberResp.Unmarshal(m, b)
|
return xxx_messageInfo_CancelMuteGroupMemberResp.Unmarshal(m, b)
|
||||||
@ -3112,7 +3128,7 @@ func (m *MuteGroupReq) Reset() { *m = MuteGroupReq{} }
|
|||||||
func (m *MuteGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *MuteGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MuteGroupReq) ProtoMessage() {}
|
func (*MuteGroupReq) ProtoMessage() {}
|
||||||
func (*MuteGroupReq) Descriptor() ([]byte, []int) {
|
func (*MuteGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{59}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{59}
|
||||||
}
|
}
|
||||||
func (m *MuteGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *MuteGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MuteGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_MuteGroupReq.Unmarshal(m, b)
|
||||||
@ -3164,7 +3180,7 @@ func (m *MuteGroupResp) Reset() { *m = MuteGroupResp{} }
|
|||||||
func (m *MuteGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *MuteGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*MuteGroupResp) ProtoMessage() {}
|
func (*MuteGroupResp) ProtoMessage() {}
|
||||||
func (*MuteGroupResp) Descriptor() ([]byte, []int) {
|
func (*MuteGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{60}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{60}
|
||||||
}
|
}
|
||||||
func (m *MuteGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *MuteGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_MuteGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_MuteGroupResp.Unmarshal(m, b)
|
||||||
@ -3204,7 +3220,7 @@ func (m *CancelMuteGroupReq) Reset() { *m = CancelMuteGroupReq{} }
|
|||||||
func (m *CancelMuteGroupReq) String() string { return proto.CompactTextString(m) }
|
func (m *CancelMuteGroupReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CancelMuteGroupReq) ProtoMessage() {}
|
func (*CancelMuteGroupReq) ProtoMessage() {}
|
||||||
func (*CancelMuteGroupReq) Descriptor() ([]byte, []int) {
|
func (*CancelMuteGroupReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{61}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{61}
|
||||||
}
|
}
|
||||||
func (m *CancelMuteGroupReq) XXX_Unmarshal(b []byte) error {
|
func (m *CancelMuteGroupReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CancelMuteGroupReq.Unmarshal(m, b)
|
return xxx_messageInfo_CancelMuteGroupReq.Unmarshal(m, b)
|
||||||
@ -3256,7 +3272,7 @@ func (m *CancelMuteGroupResp) Reset() { *m = CancelMuteGroupResp{} }
|
|||||||
func (m *CancelMuteGroupResp) String() string { return proto.CompactTextString(m) }
|
func (m *CancelMuteGroupResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*CancelMuteGroupResp) ProtoMessage() {}
|
func (*CancelMuteGroupResp) ProtoMessage() {}
|
||||||
func (*CancelMuteGroupResp) Descriptor() ([]byte, []int) {
|
func (*CancelMuteGroupResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{62}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{62}
|
||||||
}
|
}
|
||||||
func (m *CancelMuteGroupResp) XXX_Unmarshal(b []byte) error {
|
func (m *CancelMuteGroupResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_CancelMuteGroupResp.Unmarshal(m, b)
|
return xxx_messageInfo_CancelMuteGroupResp.Unmarshal(m, b)
|
||||||
@ -3298,7 +3314,7 @@ func (m *SetGroupMemberNicknameReq) Reset() { *m = SetGroupMemberNicknam
|
|||||||
func (m *SetGroupMemberNicknameReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupMemberNicknameReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupMemberNicknameReq) ProtoMessage() {}
|
func (*SetGroupMemberNicknameReq) ProtoMessage() {}
|
||||||
func (*SetGroupMemberNicknameReq) Descriptor() ([]byte, []int) {
|
func (*SetGroupMemberNicknameReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{63}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{63}
|
||||||
}
|
}
|
||||||
func (m *SetGroupMemberNicknameReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupMemberNicknameReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupMemberNicknameReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupMemberNicknameReq.Unmarshal(m, b)
|
||||||
@ -3364,7 +3380,7 @@ func (m *SetGroupMemberNicknameResp) Reset() { *m = SetGroupMemberNickna
|
|||||||
func (m *SetGroupMemberNicknameResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupMemberNicknameResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupMemberNicknameResp) ProtoMessage() {}
|
func (*SetGroupMemberNicknameResp) ProtoMessage() {}
|
||||||
func (*SetGroupMemberNicknameResp) Descriptor() ([]byte, []int) {
|
func (*SetGroupMemberNicknameResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{64}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{64}
|
||||||
}
|
}
|
||||||
func (m *SetGroupMemberNicknameResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupMemberNicknameResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupMemberNicknameResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupMemberNicknameResp.Unmarshal(m, b)
|
||||||
@ -3404,7 +3420,7 @@ func (m *GetJoinedSuperGroupListReq) Reset() { *m = GetJoinedSuperGroupL
|
|||||||
func (m *GetJoinedSuperGroupListReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetJoinedSuperGroupListReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetJoinedSuperGroupListReq) ProtoMessage() {}
|
func (*GetJoinedSuperGroupListReq) ProtoMessage() {}
|
||||||
func (*GetJoinedSuperGroupListReq) Descriptor() ([]byte, []int) {
|
func (*GetJoinedSuperGroupListReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{65}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{65}
|
||||||
}
|
}
|
||||||
func (m *GetJoinedSuperGroupListReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetJoinedSuperGroupListReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetJoinedSuperGroupListReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetJoinedSuperGroupListReq.Unmarshal(m, b)
|
||||||
@ -3457,7 +3473,7 @@ func (m *GetJoinedSuperGroupListResp) Reset() { *m = GetJoinedSuperGroup
|
|||||||
func (m *GetJoinedSuperGroupListResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetJoinedSuperGroupListResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetJoinedSuperGroupListResp) ProtoMessage() {}
|
func (*GetJoinedSuperGroupListResp) ProtoMessage() {}
|
||||||
func (*GetJoinedSuperGroupListResp) Descriptor() ([]byte, []int) {
|
func (*GetJoinedSuperGroupListResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{66}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{66}
|
||||||
}
|
}
|
||||||
func (m *GetJoinedSuperGroupListResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetJoinedSuperGroupListResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetJoinedSuperGroupListResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetJoinedSuperGroupListResp.Unmarshal(m, b)
|
||||||
@ -3504,7 +3520,7 @@ func (m *GetSuperGroupsInfoReq) Reset() { *m = GetSuperGroupsInfoReq{} }
|
|||||||
func (m *GetSuperGroupsInfoReq) String() string { return proto.CompactTextString(m) }
|
func (m *GetSuperGroupsInfoReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSuperGroupsInfoReq) ProtoMessage() {}
|
func (*GetSuperGroupsInfoReq) ProtoMessage() {}
|
||||||
func (*GetSuperGroupsInfoReq) Descriptor() ([]byte, []int) {
|
func (*GetSuperGroupsInfoReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{67}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{67}
|
||||||
}
|
}
|
||||||
func (m *GetSuperGroupsInfoReq) XXX_Unmarshal(b []byte) error {
|
func (m *GetSuperGroupsInfoReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSuperGroupsInfoReq.Unmarshal(m, b)
|
return xxx_messageInfo_GetSuperGroupsInfoReq.Unmarshal(m, b)
|
||||||
@ -3557,7 +3573,7 @@ func (m *GetSuperGroupsInfoResp) Reset() { *m = GetSuperGroupsInfoResp{}
|
|||||||
func (m *GetSuperGroupsInfoResp) String() string { return proto.CompactTextString(m) }
|
func (m *GetSuperGroupsInfoResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*GetSuperGroupsInfoResp) ProtoMessage() {}
|
func (*GetSuperGroupsInfoResp) ProtoMessage() {}
|
||||||
func (*GetSuperGroupsInfoResp) Descriptor() ([]byte, []int) {
|
func (*GetSuperGroupsInfoResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{68}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{68}
|
||||||
}
|
}
|
||||||
func (m *GetSuperGroupsInfoResp) XXX_Unmarshal(b []byte) error {
|
func (m *GetSuperGroupsInfoResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_GetSuperGroupsInfoResp.Unmarshal(m, b)
|
return xxx_messageInfo_GetSuperGroupsInfoResp.Unmarshal(m, b)
|
||||||
@ -3609,7 +3625,7 @@ func (m *SetGroupMemberInfoReq) Reset() { *m = SetGroupMemberInfoReq{} }
|
|||||||
func (m *SetGroupMemberInfoReq) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupMemberInfoReq) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupMemberInfoReq) ProtoMessage() {}
|
func (*SetGroupMemberInfoReq) ProtoMessage() {}
|
||||||
func (*SetGroupMemberInfoReq) Descriptor() ([]byte, []int) {
|
func (*SetGroupMemberInfoReq) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{69}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{69}
|
||||||
}
|
}
|
||||||
func (m *SetGroupMemberInfoReq) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupMemberInfoReq) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupMemberInfoReq.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupMemberInfoReq.Unmarshal(m, b)
|
||||||
@ -3696,7 +3712,7 @@ func (m *SetGroupMemberInfoResp) Reset() { *m = SetGroupMemberInfoResp{}
|
|||||||
func (m *SetGroupMemberInfoResp) String() string { return proto.CompactTextString(m) }
|
func (m *SetGroupMemberInfoResp) String() string { return proto.CompactTextString(m) }
|
||||||
func (*SetGroupMemberInfoResp) ProtoMessage() {}
|
func (*SetGroupMemberInfoResp) ProtoMessage() {}
|
||||||
func (*SetGroupMemberInfoResp) Descriptor() ([]byte, []int) {
|
func (*SetGroupMemberInfoResp) Descriptor() ([]byte, []int) {
|
||||||
return fileDescriptor_group_40c147a29abb4e60, []int{70}
|
return fileDescriptor_group_d529c7a0e85dbd90, []int{70}
|
||||||
}
|
}
|
||||||
func (m *SetGroupMemberInfoResp) XXX_Unmarshal(b []byte) error {
|
func (m *SetGroupMemberInfoResp) XXX_Unmarshal(b []byte) error {
|
||||||
return xxx_messageInfo_SetGroupMemberInfoResp.Unmarshal(m, b)
|
return xxx_messageInfo_SetGroupMemberInfoResp.Unmarshal(m, b)
|
||||||
@ -4925,157 +4941,159 @@ var _Group_serviceDesc = grpc.ServiceDesc{
|
|||||||
Metadata: "group/group.proto",
|
Metadata: "group/group.proto",
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() { proto.RegisterFile("group/group.proto", fileDescriptor_group_40c147a29abb4e60) }
|
func init() { proto.RegisterFile("group/group.proto", fileDescriptor_group_d529c7a0e85dbd90) }
|
||||||
|
|
||||||
var fileDescriptor_group_40c147a29abb4e60 = []byte{
|
var fileDescriptor_group_d529c7a0e85dbd90 = []byte{
|
||||||
// 2381 bytes of a gzipped FileDescriptorProto
|
// 2407 bytes of a gzipped FileDescriptorProto
|
||||||
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4f, 0x6f, 0x1c, 0x49,
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x5a, 0x4f, 0x6f, 0x1c, 0x49,
|
||||||
0x15, 0x57, 0xdb, 0x1e, 0xdb, 0xf3, 0x6c, 0x67, 0xec, 0x72, 0xc6, 0x1e, 0x77, 0xbc, 0x59, 0xa7,
|
0x15, 0x57, 0xdb, 0x99, 0xd8, 0xf3, 0xec, 0xc9, 0xd8, 0xe5, 0x8c, 0x33, 0xee, 0x78, 0xbd, 0x4e,
|
||||||
0x37, 0x2c, 0x11, 0x2c, 0xb6, 0x70, 0xa4, 0x08, 0x58, 0x44, 0x88, 0xff, 0xc5, 0x93, 0xf8, 0x0f,
|
0x6d, 0x58, 0x22, 0x58, 0x6c, 0xe1, 0x48, 0x11, 0xb0, 0x88, 0x10, 0xff, 0x8b, 0x27, 0xf1, 0x1f,
|
||||||
0xee, 0xc9, 0x72, 0x88, 0x84, 0xc2, 0x64, 0xba, 0x3c, 0x1a, 0x3c, 0xd3, 0xdd, 0xee, 0xea, 0xb1,
|
0xdc, 0x93, 0xe5, 0x10, 0x09, 0x85, 0xc9, 0x74, 0x79, 0x34, 0x78, 0xa6, 0xbb, 0xdd, 0xd5, 0x63,
|
||||||
0x03, 0x97, 0x15, 0x97, 0x95, 0x16, 0x21, 0x01, 0x42, 0xe2, 0x04, 0x82, 0x3d, 0xc1, 0x81, 0x03,
|
0x07, 0x2e, 0x2b, 0x2e, 0x48, 0x8b, 0x90, 0x00, 0x21, 0x71, 0x02, 0xc1, 0x9e, 0xe0, 0xc0, 0x81,
|
||||||
0x07, 0x38, 0x23, 0x3e, 0x06, 0x57, 0xbe, 0x00, 0x9f, 0x00, 0x09, 0x75, 0x55, 0x75, 0x75, 0x75,
|
0x03, 0x9c, 0x11, 0x77, 0xbe, 0x00, 0x57, 0xbe, 0x00, 0x9f, 0x00, 0x09, 0x75, 0x55, 0x75, 0x75,
|
||||||
0x57, 0x75, 0x7b, 0xd2, 0x4e, 0x36, 0x97, 0x96, 0xea, 0xd5, 0xab, 0x7a, 0xbf, 0xf7, 0xaa, 0xde,
|
0x75, 0x77, 0x75, 0x7b, 0xd2, 0x4e, 0x36, 0x97, 0x96, 0xea, 0xd5, 0xab, 0xaa, 0xdf, 0x7b, 0xf5,
|
||||||
0xab, 0x7a, 0xaf, 0x1a, 0x16, 0xba, 0x81, 0x37, 0xf4, 0x37, 0xe8, 0x77, 0xdd, 0x0f, 0xbc, 0xd0,
|
0xde, 0xab, 0x7a, 0xaf, 0x1a, 0xe6, 0x7b, 0xbe, 0x3b, 0xf2, 0xd6, 0xd9, 0x77, 0xcd, 0xf3, 0xdd,
|
||||||
0x43, 0x15, 0xda, 0x30, 0xef, 0x1c, 0xfb, 0xd8, 0x7d, 0xd1, 0x3c, 0xdc, 0xf0, 0xcf, 0xba, 0x1b,
|
0xc0, 0x45, 0x15, 0xd6, 0x30, 0xef, 0x1c, 0x79, 0xc4, 0x79, 0xd1, 0x3a, 0x58, 0xf7, 0x4e, 0x7b,
|
||||||
0xb4, 0x67, 0x83, 0x38, 0x67, 0x2f, 0x2e, 0xc9, 0xc6, 0x25, 0x61, 0x9c, 0xe6, 0x57, 0xf3, 0x59,
|
0xeb, 0xac, 0x67, 0x9d, 0xda, 0xa7, 0x2f, 0x2e, 0xe8, 0xfa, 0x05, 0xe5, 0x9c, 0xe6, 0x97, 0xf3,
|
||||||
0x82, 0xb6, 0xef, 0xe3, 0x80, 0x33, 0x5a, 0xdf, 0x03, 0xd8, 0xf6, 0x06, 0x03, 0xcf, 0xb5, 0x31,
|
0x59, 0xfc, 0x8e, 0xe7, 0x11, 0x5f, 0x30, 0xe2, 0xef, 0x00, 0x6c, 0xb9, 0xc3, 0xa1, 0xeb, 0x58,
|
||||||
0xf1, 0x51, 0x03, 0xa6, 0x76, 0x83, 0x60, 0xdb, 0x73, 0x70, 0xc3, 0x58, 0x33, 0xee, 0x55, 0xec,
|
0x84, 0x7a, 0xa8, 0x09, 0x53, 0x3b, 0xbe, 0xbf, 0xe5, 0xda, 0xa4, 0x69, 0xac, 0x1a, 0xf7, 0x2a,
|
||||||
0xb8, 0x89, 0x96, 0x60, 0x72, 0x37, 0x08, 0x0e, 0x49, 0xb7, 0x31, 0xb6, 0x66, 0xdc, 0xab, 0xda,
|
0x56, 0xd4, 0x44, 0x8b, 0x70, 0x7d, 0xc7, 0xf7, 0x0f, 0x68, 0xaf, 0x39, 0xb1, 0x6a, 0xdc, 0xab,
|
||||||
0xbc, 0x65, 0x3d, 0x01, 0xf4, 0x38, 0x02, 0xf5, 0xc8, 0x71, 0x0e, 0xf1, 0xe0, 0x25, 0x0e, 0x9a,
|
0x5a, 0xa2, 0x85, 0x9f, 0x00, 0x7a, 0x1c, 0x82, 0x7a, 0x64, 0xdb, 0x07, 0x64, 0xf8, 0x92, 0xf8,
|
||||||
0xee, 0xa9, 0x17, 0x71, 0x7f, 0x42, 0x70, 0xd0, 0xdc, 0xa1, 0xd3, 0x54, 0x6d, 0xde, 0x42, 0xab,
|
0x2d, 0xe7, 0xc4, 0x0d, 0xb9, 0x3f, 0xa1, 0xc4, 0x6f, 0x6d, 0xb3, 0x69, 0xaa, 0x96, 0x68, 0xa1,
|
||||||
0x50, 0xb5, 0xbd, 0x3e, 0x3e, 0xc0, 0x17, 0xb8, 0x4f, 0x27, 0xaa, 0xd8, 0x09, 0xc1, 0xfa, 0xaf,
|
0x65, 0xa8, 0x5a, 0xee, 0x80, 0xec, 0x93, 0x73, 0x32, 0x60, 0x13, 0x55, 0xac, 0x98, 0x80, 0xff,
|
||||||
0x01, 0x37, 0xb6, 0x03, 0xdc, 0x0e, 0x31, 0x9d, 0xd2, 0xc6, 0xe7, 0xe8, 0x11, 0xdc, 0x68, 0xba,
|
0x6b, 0xc0, 0x8d, 0x2d, 0x9f, 0x74, 0x02, 0xc2, 0xa6, 0xb4, 0xc8, 0x19, 0x7a, 0x04, 0x37, 0x5a,
|
||||||
0xbd, 0x90, 0x4d, 0x7d, 0xd0, 0x23, 0x61, 0xc3, 0x58, 0x1b, 0xbf, 0x37, 0xb3, 0xb9, 0xb2, 0xce,
|
0x4e, 0x3f, 0xe0, 0x53, 0xef, 0xf7, 0x69, 0xd0, 0x34, 0x56, 0x27, 0xef, 0xcd, 0x6c, 0x2c, 0xad,
|
||||||
0xec, 0xa2, 0xca, 0xb6, 0x33, 0x03, 0xd0, 0x77, 0xa0, 0x4a, 0xb9, 0xa2, 0x4e, 0x2a, 0x73, 0x66,
|
0x71, 0xbd, 0x64, 0xd7, 0xb6, 0x52, 0x03, 0xd0, 0xb7, 0xa0, 0xca, 0xb8, 0xc2, 0x4e, 0xb6, 0xe6,
|
||||||
0x73, 0x75, 0x9d, 0xe0, 0xe0, 0x02, 0x07, 0x2f, 0xda, 0x7e, 0xef, 0x85, 0xdf, 0x0e, 0xda, 0x03,
|
0xcc, 0xc6, 0xf2, 0x1a, 0x25, 0xfe, 0x39, 0xf1, 0x5f, 0x74, 0xbc, 0xfe, 0x0b, 0xaf, 0xe3, 0x77,
|
||||||
0xb2, 0x2e, 0x78, 0xec, 0x84, 0x1d, 0xad, 0xc1, 0xcc, 0xb1, 0x8f, 0x83, 0x76, 0xd8, 0xf3, 0xdc,
|
0x86, 0x74, 0x4d, 0xf2, 0x58, 0x31, 0x3b, 0x5a, 0x85, 0x99, 0x23, 0x8f, 0xf8, 0x9d, 0xa0, 0xef,
|
||||||
0xe6, 0x4e, 0x63, 0x9c, 0x2a, 0x23, 0x93, 0x90, 0x09, 0xd3, 0xc7, 0x3e, 0xd7, 0x75, 0x82, 0x76,
|
0x3a, 0xad, 0xed, 0xe6, 0x24, 0x13, 0x46, 0x25, 0x21, 0x13, 0xa6, 0x8f, 0x3c, 0x21, 0xeb, 0x35,
|
||||||
0x8b, 0x36, 0x1d, 0x7d, 0xe9, 0xe2, 0x80, 0x77, 0x57, 0xf8, 0xe8, 0x84, 0x64, 0x7d, 0x0a, 0xb5,
|
0xd6, 0x2d, 0xdb, 0x6c, 0xf4, 0x85, 0x43, 0x7c, 0xd1, 0x5d, 0x11, 0xa3, 0x63, 0x12, 0xfe, 0x14,
|
||||||
0x94, 0xc2, 0x65, 0x96, 0x20, 0xad, 0xe0, 0xf8, 0x6b, 0x29, 0x68, 0x05, 0x30, 0xff, 0x18, 0x87,
|
0xea, 0x09, 0x81, 0xcb, 0x6c, 0x41, 0x52, 0xc0, 0xc9, 0xd7, 0x12, 0x10, 0xfb, 0x30, 0xf7, 0x98,
|
||||||
0xb4, 0x4d, 0x68, 0x1f, 0x3e, 0x8f, 0x60, 0x33, 0x86, 0x1d, 0x61, 0xf0, 0xaa, 0x2d, 0x93, 0xb2,
|
0x04, 0xac, 0x4d, 0x59, 0x1f, 0x39, 0x0b, 0x61, 0x73, 0x86, 0x6d, 0xa9, 0xf0, 0xaa, 0xa5, 0x92,
|
||||||
0x66, 0x19, 0x2b, 0x36, 0xcb, 0x78, 0xda, 0x2c, 0xd6, 0xe7, 0x06, 0x2c, 0x64, 0x84, 0x96, 0xd2,
|
0xd2, 0x6a, 0x99, 0x28, 0x56, 0xcb, 0x64, 0x52, 0x2d, 0xf8, 0x33, 0x03, 0xe6, 0x53, 0x8b, 0x96,
|
||||||
0x7b, 0x0b, 0xe6, 0x84, 0x22, 0x14, 0xe9, 0x38, 0xdd, 0x1a, 0xc5, 0xba, 0xa7, 0x87, 0x58, 0x7f,
|
0x92, 0x7b, 0x13, 0x6a, 0x52, 0x10, 0x86, 0x74, 0x92, 0x99, 0x46, 0xb1, 0xec, 0xc9, 0x21, 0xf8,
|
||||||
0x30, 0xa0, 0xd6, 0xe2, 0x58, 0x62, 0xfd, 0x0f, 0xa0, 0xd6, 0x8d, 0xdb, 0x7b, 0x5e, 0xd0, 0xc2,
|
0xf7, 0x06, 0xd4, 0xdb, 0x02, 0x4b, 0x24, 0xff, 0x3e, 0xd4, 0x7b, 0x51, 0x7b, 0xd7, 0xf5, 0xdb,
|
||||||
0x21, 0x45, 0x34, 0xb3, 0x69, 0x15, 0xcd, 0xcc, 0x38, 0xed, 0xec, 0xd0, 0x94, 0x25, 0xc6, 0x34,
|
0x24, 0x60, 0x88, 0x66, 0x36, 0x70, 0xd1, 0xcc, 0x9c, 0xd3, 0x4a, 0x0f, 0x4d, 0x68, 0x62, 0x42,
|
||||||
0x1b, 0xa4, 0x70, 0x7b, 0x59, 0xbb, 0x30, 0x9f, 0x86, 0x47, 0x7c, 0xf4, 0x4d, 0xd9, 0x65, 0x39,
|
0x63, 0x20, 0x85, 0xe6, 0x85, 0x77, 0x60, 0x2e, 0x09, 0x8f, 0x7a, 0xe8, 0xeb, 0xaa, 0xcb, 0x0a,
|
||||||
0xb4, 0x05, 0xee, 0x0f, 0x49, 0x87, 0x2d, 0x31, 0x59, 0x3f, 0x03, 0x33, 0xb6, 0xf8, 0x23, 0xdf,
|
0x68, 0xf3, 0xc2, 0x1f, 0xe2, 0x0e, 0x4b, 0x61, 0xc2, 0x3f, 0x01, 0x33, 0xd2, 0xf8, 0x23, 0xcf,
|
||||||
0xef, 0xf7, 0x3a, 0x74, 0xfe, 0xc8, 0x02, 0x91, 0xc2, 0x32, 0x44, 0xa3, 0x18, 0xa2, 0x66, 0xa9,
|
0x1b, 0xf4, 0xbb, 0x6c, 0xfe, 0x50, 0x03, 0xa1, 0xc0, 0x2a, 0x44, 0xa3, 0x18, 0xa2, 0x66, 0xab,
|
||||||
0x6f, 0x03, 0xec, 0x05, 0xde, 0x20, 0xb5, 0xd8, 0x12, 0xc5, 0xfa, 0xbd, 0x01, 0xb7, 0x72, 0x85,
|
0x57, 0x00, 0x76, 0x7d, 0x77, 0x98, 0xd8, 0x6c, 0x85, 0x82, 0x7f, 0x67, 0xc0, 0xed, 0xdc, 0xc5,
|
||||||
0x97, 0x5a, 0xf8, 0xa7, 0x30, 0x1f, 0x07, 0x88, 0x21, 0x26, 0xa1, 0xb4, 0xf6, 0xef, 0xe7, 0xad,
|
0x4b, 0x6d, 0xfc, 0x53, 0x98, 0x8b, 0x02, 0xc4, 0x88, 0xd0, 0x40, 0xd9, 0xfb, 0xf7, 0xf3, 0x76,
|
||||||
0x10, 0x67, 0xb5, 0x95, 0x81, 0x56, 0x08, 0xab, 0x8f, 0x71, 0x18, 0x61, 0xb5, 0xf1, 0xb9, 0xc6,
|
0x48, 0xb0, 0x5a, 0x99, 0x81, 0x38, 0x80, 0xe5, 0xc7, 0x24, 0x08, 0xb1, 0x5a, 0xe4, 0x4c, 0xa3,
|
||||||
0x38, 0x79, 0xa1, 0xec, 0x7a, 0xeb, 0xfa, 0x47, 0x03, 0xde, 0x2b, 0x10, 0x5b, 0x6a, 0x95, 0xb5,
|
0x9c, 0xbc, 0x50, 0x76, 0xb5, 0x7d, 0xfd, 0x83, 0x01, 0xef, 0x15, 0x2c, 0x5b, 0x6a, 0x97, 0xb5,
|
||||||
0x76, 0x19, 0x2b, 0x6b, 0x97, 0x7f, 0x1a, 0x50, 0x7f, 0x16, 0xb4, 0x5d, 0x72, 0x8a, 0x03, 0xda,
|
0x7a, 0x99, 0x28, 0xab, 0x97, 0x7f, 0x18, 0xd0, 0x78, 0xe6, 0x77, 0x1c, 0x7a, 0x42, 0x7c, 0xd6,
|
||||||
0x49, 0xe3, 0x56, 0x64, 0x91, 0x06, 0x4c, 0xf1, 0x60, 0xc0, 0x4d, 0x12, 0x37, 0xd1, 0x87, 0x70,
|
0xc9, 0xe2, 0x56, 0xa8, 0x91, 0x26, 0x4c, 0x89, 0x60, 0x20, 0x54, 0x12, 0x35, 0xd1, 0x87, 0x70,
|
||||||
0xe3, 0xb8, 0xef, 0xc8, 0x31, 0x8f, 0x59, 0x26, 0x43, 0x8d, 0xf8, 0x8e, 0xf0, 0xa5, 0xcc, 0xc7,
|
0xe3, 0x68, 0x60, 0xab, 0x31, 0x8f, 0x6b, 0x26, 0x45, 0x0d, 0xf9, 0x0e, 0xc9, 0x85, 0xca, 0xc7,
|
||||||
0x4c, 0x94, 0xa1, 0x66, 0xed, 0x38, 0x51, 0x1c, 0x67, 0x2a, 0x99, 0x38, 0xf3, 0x14, 0x96, 0x74,
|
0x55, 0x94, 0xa2, 0xa6, 0xf5, 0x78, 0xad, 0x38, 0xce, 0x54, 0x52, 0x71, 0xe6, 0x29, 0x2c, 0xea,
|
||||||
0x0a, 0x94, 0xf3, 0xa0, 0xcf, 0x0c, 0x98, 0x7d, 0xe2, 0xf5, 0x5c, 0x71, 0x32, 0xe5, 0x5b, 0xe1,
|
0x04, 0x28, 0xe7, 0x41, 0xff, 0x32, 0x60, 0xf6, 0x89, 0xdb, 0x77, 0xe4, 0xc9, 0x94, 0xaf, 0x85,
|
||||||
0x36, 0x80, 0x8d, 0xcf, 0x0f, 0x31, 0x21, 0xed, 0x2e, 0xe6, 0x16, 0x90, 0x28, 0x45, 0xb1, 0xf1,
|
0x15, 0x00, 0x8b, 0x9c, 0x1d, 0x10, 0x4a, 0x3b, 0x3d, 0x22, 0x34, 0xa0, 0x50, 0x8a, 0x62, 0xe3,
|
||||||
0x6a, 0x8d, 0xad, 0x2d, 0x98, 0x93, 0x70, 0x94, 0x53, 0xe6, 0xdf, 0x91, 0x4b, 0x66, 0xfc, 0x31,
|
0x18, 0x12, 0xaf, 0x00, 0x84, 0x38, 0xda, 0xee, 0xc8, 0xef, 0x12, 0x26, 0x73, 0xc5, 0x52, 0x28,
|
||||||
0xea, 0xf0, 0x5c, 0x82, 0xf9, 0x09, 0x20, 0xa3, 0x30, 0x8a, 0xed, 0x9e, 0xdd, 0xfd, 0x92, 0x65,
|
0xe8, 0x2e, 0xd4, 0x5a, 0xce, 0x79, 0x3f, 0x90, 0xaa, 0xbd, 0xce, 0xe6, 0x48, 0x12, 0xf1, 0x26,
|
||||||
0xc6, 0x15, 0xcb, 0x48, 0xa1, 0x62, 0x22, 0x1b, 0x2a, 0xa2, 0xfe, 0xfd, 0xb6, 0xeb, 0xf4, 0xb1,
|
0xd4, 0x14, 0x69, 0xca, 0xa9, 0xe4, 0xdf, 0xa1, 0x63, 0xa7, 0xbc, 0x3a, 0xec, 0x70, 0x1d, 0x4a,
|
||||||
0x13, 0x39, 0x3d, 0x5b, 0x4f, 0x89, 0x82, 0x2c, 0x98, 0x65, 0x2d, 0x1b, 0x93, 0x61, 0x3f, 0x6c,
|
0xc4, 0x39, 0xa2, 0xca, 0x62, 0x14, 0xef, 0x5e, 0xda, 0x87, 0x14, 0xfd, 0x4e, 0x66, 0xf4, 0xab,
|
||||||
0x4c, 0xd2, 0x78, 0x91, 0xa2, 0x59, 0x27, 0xb0, 0x9a, 0xaf, 0x5a, 0x39, 0x73, 0x9d, 0xc2, 0xec,
|
0x04, 0x9c, 0x6b, 0xe9, 0x80, 0x13, 0xf6, 0xef, 0x75, 0x1c, 0x7b, 0x40, 0xec, 0x30, 0x74, 0x70,
|
||||||
0xc9, 0xb0, 0x17, 0x8e, 0xb0, 0xf4, 0xd7, 0x3b, 0x18, 0xb7, 0x60, 0x4e, 0x92, 0x53, 0x0e, 0xeb,
|
0xab, 0x50, 0x28, 0x08, 0xc3, 0x2c, 0x6f, 0x59, 0x84, 0x8e, 0x06, 0x01, 0x53, 0x50, 0xc5, 0x4a,
|
||||||
0x17, 0x06, 0xd4, 0xe3, 0x68, 0x9b, 0x5c, 0x82, 0x8a, 0x51, 0x5f, 0x2b, 0x94, 0x45, 0x01, 0x72,
|
0xd0, 0xf0, 0x31, 0x2c, 0xe7, 0x8b, 0x56, 0x4e, 0x5d, 0x27, 0x30, 0x7b, 0x3c, 0xea, 0x07, 0x63,
|
||||||
0xaf, 0xd7, 0x0f, 0x71, 0x40, 0x17, 0xb4, 0x62, 0xf3, 0x56, 0x24, 0xef, 0x08, 0xbf, 0x0a, 0x5b,
|
0x18, 0xd0, 0xd5, 0x8e, 0xd7, 0x4d, 0xa8, 0x29, 0xeb, 0x94, 0xc3, 0xfa, 0xb9, 0x01, 0x8d, 0x28,
|
||||||
0xf8, 0x9c, 0xae, 0x64, 0xc5, 0x8e, 0x9b, 0xd6, 0x5f, 0x0d, 0x58, 0xd2, 0x61, 0x2c, 0x75, 0x18,
|
0x66, 0xc7, 0x57, 0xa9, 0x62, 0xd4, 0x57, 0x0a, 0x88, 0x61, 0x98, 0xdd, 0xed, 0x0f, 0x02, 0xe2,
|
||||||
0xec, 0x01, 0x0c, 0x92, 0xdb, 0x21, 0x3b, 0x06, 0x3e, 0xcc, 0x0b, 0x77, 0x4c, 0xda, 0xde, 0xb0,
|
0xb3, 0x0d, 0xad, 0x58, 0xa2, 0x15, 0xae, 0x77, 0x48, 0x5e, 0x05, 0x6d, 0x72, 0x26, 0x6c, 0x3d,
|
||||||
0xdf, 0xa7, 0xa7, 0xa9, 0x34, 0x32, 0x92, 0xec, 0x72, 0xb8, 0x4c, 0x8f, 0xb8, 0x69, 0xfd, 0x5a,
|
0x6a, 0xe2, 0xbf, 0x18, 0xb0, 0xa8, 0xc3, 0x58, 0xea, 0x48, 0xd9, 0x05, 0x18, 0xc6, 0x77, 0x4c,
|
||||||
0x81, 0x2b, 0xae, 0x4a, 0x85, 0x41, 0x40, 0x82, 0x35, 0x46, 0xef, 0x50, 0xb2, 0xb8, 0xeb, 0x05,
|
0x7e, 0x98, 0x7c, 0x98, 0x17, 0x34, 0xf9, 0x6a, 0xbb, 0xa3, 0xc1, 0x80, 0x9d, 0xc9, 0xca, 0xc8,
|
||||||
0x81, 0xdf, 0x1a, 0xb0, 0xac, 0x85, 0xf4, 0x2e, 0x4d, 0x68, 0xfd, 0xcd, 0x00, 0xf4, 0xb4, 0xd7,
|
0x70, 0x65, 0x47, 0xc0, 0xe5, 0x72, 0x44, 0x4d, 0xfc, 0xab, 0x0c, 0x5c, 0x79, 0xe1, 0x2a, 0x0c,
|
||||||
0x39, 0x93, 0xf8, 0x8a, 0x8d, 0xf4, 0x35, 0x98, 0x8f, 0xf8, 0xb1, 0xc3, 0x14, 0x97, 0x4c, 0xa5,
|
0x25, 0x0a, 0xac, 0x09, 0x76, 0x13, 0x53, 0x97, 0xbb, 0x52, 0x28, 0xc1, 0xbf, 0x31, 0xe0, 0x96,
|
||||||
0xd0, 0x23, 0xf0, 0x36, 0x6e, 0x13, 0xcf, 0xe5, 0xe6, 0xe2, 0xad, 0xac, 0xb1, 0x2a, 0xc5, 0x2e,
|
0x16, 0xd2, 0xbb, 0x54, 0x21, 0xfe, 0xab, 0x01, 0xe8, 0x69, 0xbf, 0x7b, 0xaa, 0xf0, 0x15, 0x2b,
|
||||||
0x37, 0x99, 0x71, 0xb9, 0x8f, 0xa1, 0xda, 0x74, 0x36, 0x59, 0xe8, 0xc8, 0x3d, 0xea, 0xa9, 0x68,
|
0xe9, 0x2b, 0x30, 0x17, 0xf2, 0x13, 0x9b, 0x0b, 0xae, 0xa8, 0x2a, 0x43, 0x0f, 0xc1, 0x5b, 0xa4,
|
||||||
0x1a, 0x70, 0x58, 0xca, 0xc2, 0x5b, 0xd6, 0xa7, 0xb0, 0xa8, 0xa8, 0x5b, 0x6a, 0x01, 0x1e, 0xc0,
|
0x43, 0x5d, 0x47, 0xa8, 0x4b, 0xb4, 0xd2, 0xca, 0xaa, 0x14, 0xbb, 0xdc, 0xf5, 0x94, 0xcb, 0x7d,
|
||||||
0x9c, 0x40, 0x21, 0xad, 0xc1, 0x3c, 0x77, 0x75, 0xd1, 0x67, 0xa7, 0xd9, 0xac, 0x21, 0xf5, 0xf5,
|
0x0c, 0xd5, 0x96, 0xbd, 0xc1, 0x43, 0x47, 0xee, 0x85, 0x81, 0x2d, 0xcd, 0x02, 0x0e, 0x4f, 0x7c,
|
||||||
0xe8, 0x38, 0xc0, 0x0e, 0x45, 0x11, 0xfb, 0x7a, 0x3a, 0xd0, 0x1a, 0x4a, 0xa0, 0x5d, 0x83, 0x19,
|
0x44, 0x0b, 0x7f, 0x0a, 0x0b, 0x19, 0x71, 0x4b, 0x6d, 0xc0, 0x03, 0xa8, 0x49, 0x14, 0xca, 0x1e,
|
||||||
0x4f, 0x8d, 0x53, 0xde, 0x88, 0x71, 0xea, 0x33, 0xe6, 0x10, 0x8a, 0xdc, 0x6b, 0x65, 0x2f, 0x23,
|
0xcc, 0x09, 0x57, 0x97, 0x7d, 0x56, 0x92, 0x0d, 0x8f, 0x98, 0xaf, 0x87, 0xc7, 0x01, 0xb1, 0x19,
|
||||||
0xdf, 0xe0, 0x13, 0x76, 0xeb, 0xef, 0x06, 0xdc, 0x6c, 0xba, 0x17, 0xbd, 0x10, 0x47, 0xc8, 0x9e,
|
0x8a, 0xc8, 0xd7, 0x93, 0x81, 0xd6, 0xc8, 0x04, 0xda, 0x55, 0x98, 0x71, 0xb3, 0x71, 0xca, 0x1d,
|
||||||
0x79, 0x22, 0x42, 0x5f, 0x1d, 0x87, 0xf3, 0x0f, 0xa9, 0x64, 0xa3, 0x4d, 0xa4, 0x36, 0xda, 0x47,
|
0x33, 0x4e, 0xfd, 0x8c, 0x3b, 0x44, 0x66, 0xdd, 0x2b, 0xe5, 0x40, 0x63, 0xe7, 0x01, 0x31, 0x3b,
|
||||||
0xb0, 0xc0, 0x64, 0xc9, 0xbb, 0xb5, 0x42, 0x77, 0xab, 0xda, 0x51, 0xb8, 0xe9, 0x7e, 0x6e, 0x40,
|
0xfe, 0x9b, 0x01, 0x37, 0xf9, 0xe9, 0x18, 0x22, 0x7b, 0xe6, 0xca, 0x08, 0x7d, 0x79, 0x1c, 0xce,
|
||||||
0x5d, 0x03, 0xfb, 0x4b, 0xdd, 0x3a, 0x2e, 0xdc, 0x14, 0x97, 0xf2, 0x7e, 0x7f, 0x14, 0x67, 0xbd,
|
0x3f, 0xa4, 0x62, 0x43, 0xbb, 0x96, 0x30, 0xb4, 0x8f, 0x60, 0x9e, 0xaf, 0xa5, 0x5a, 0x6b, 0x85,
|
||||||
0xde, 0x85, 0xf7, 0x37, 0xd2, 0xb9, 0x24, 0x09, 0x7c, 0xa7, 0xf1, 0xea, 0x77, 0x06, 0x4c, 0x6f,
|
0x59, 0x6b, 0xb6, 0xa3, 0xd0, 0xe8, 0x7e, 0x6a, 0x40, 0x43, 0x03, 0xfb, 0x0b, 0x35, 0x1d, 0x07,
|
||||||
0x1f, 0xb6, 0x28, 0x5b, 0x3a, 0x8b, 0x36, 0x5e, 0xaf, 0x4c, 0x70, 0x0f, 0x6a, 0x4c, 0x56, 0x9b,
|
0x6e, 0xca, 0xab, 0xfd, 0x60, 0x30, 0x8e, 0xb3, 0x5e, 0xed, 0xda, 0xfc, 0x6b, 0xe5, 0x5c, 0x52,
|
||||||
0x84, 0x38, 0x38, 0x6a, 0x0f, 0xe2, 0x6b, 0x5f, 0x96, 0x8c, 0xee, 0xf2, 0x9c, 0x95, 0x91, 0x9a,
|
0x16, 0x7c, 0xa7, 0xf1, 0xea, 0xb7, 0x06, 0x4c, 0x6f, 0x1d, 0xb4, 0x19, 0x5b, 0x32, 0x17, 0x37,
|
||||||
0x0e, 0x37, 0x55, 0x9a, 0x18, 0x85, 0xf7, 0x99, 0xd8, 0x58, 0xd1, 0xa2, 0xac, 0x72, 0x6c, 0x74,
|
0x5e, 0xaf, 0xd8, 0x70, 0x0f, 0xea, 0x7c, 0xad, 0x0e, 0x0d, 0x88, 0x7f, 0xd8, 0x19, 0x46, 0x97,
|
||||||
0x66, 0xb6, 0x2c, 0x09, 0x01, 0xed, 0x00, 0xfc, 0xa0, 0xdd, 0xed, 0xb9, 0xd4, 0xd4, 0xbc, 0xc2,
|
0xc7, 0x34, 0x39, 0xbc, 0xe3, 0x29, 0xa4, 0x96, 0x2d, 0x54, 0x95, 0x24, 0x86, 0xe1, 0x7d, 0x26,
|
||||||
0x71, 0x57, 0x03, 0x9d, 0xdf, 0xee, 0x13, 0x5e, 0x5b, 0x1a, 0x37, 0xc2, 0x12, 0x7e, 0x61, 0xc0,
|
0x52, 0x56, 0xb8, 0x29, 0xcb, 0x02, 0x1b, 0x9b, 0x99, 0x6f, 0x4b, 0x4c, 0x40, 0xdb, 0x00, 0xdf,
|
||||||
0x6c, 0x82, 0x8a, 0xf8, 0xe8, 0x1b, 0x50, 0x8d, 0xcd, 0x47, 0x78, 0x5d, 0xa6, 0x16, 0xdf, 0x4e,
|
0xeb, 0xf4, 0xfa, 0x0e, 0x53, 0xb5, 0xa8, 0x93, 0xdc, 0xd5, 0x40, 0x17, 0x39, 0x42, 0xcc, 0x6b,
|
||||||
0x38, 0xdd, 0x4e, 0x38, 0xde, 0x10, 0x4e, 0x61, 0x8b, 0xe1, 0x80, 0x50, 0x94, 0x15, 0x3b, 0x21,
|
0x29, 0xe3, 0xc6, 0xd8, 0xc2, 0xcf, 0x0d, 0x98, 0x8d, 0x51, 0x51, 0x0f, 0x7d, 0x0d, 0xaa, 0x91,
|
||||||
0x58, 0x17, 0x09, 0x44, 0x12, 0x59, 0x2e, 0x2d, 0xd3, 0x78, 0x33, 0xb6, 0x51, 0xc3, 0x89, 0xf5,
|
0xfa, 0xa8, 0xa8, 0xee, 0xd4, 0xa3, 0xdb, 0x89, 0xa0, 0x5b, 0x31, 0xc7, 0x1b, 0xc2, 0x29, 0x75,
|
||||||
0x27, 0x03, 0xe6, 0x24, 0xc1, 0xef, 0xca, 0x38, 0x26, 0x4c, 0xc7, 0xb6, 0xe0, 0xb6, 0x11, 0x6d,
|
0x31, 0x1a, 0x52, 0x86, 0xb2, 0x62, 0xc5, 0x04, 0x7c, 0x1e, 0x43, 0xa4, 0xa1, 0xe6, 0x92, 0x6b,
|
||||||
0xeb, 0x38, 0xa9, 0xba, 0x68, 0xdc, 0xdd, 0x49, 0xbb, 0xbb, 0x33, 0x82, 0xce, 0x67, 0x50, 0x67,
|
0x1a, 0x6f, 0x46, 0x37, 0xd9, 0x70, 0x82, 0xff, 0x68, 0x40, 0x4d, 0x59, 0xf8, 0x5d, 0x29, 0xc7,
|
||||||
0x4d, 0x56, 0xbd, 0x6a, 0x85, 0xed, 0x70, 0x48, 0x8a, 0x27, 0x5d, 0x82, 0x49, 0xc6, 0x16, 0x9f,
|
0x84, 0xe9, 0x48, 0x17, 0x42, 0x37, 0xb2, 0x8d, 0x8f, 0xe2, 0xda, 0x8d, 0xc6, 0xdd, 0xed, 0xa4,
|
||||||
0xa4, 0xac, 0x35, 0xc2, 0xe6, 0x6b, 0xc0, 0x92, 0x4e, 0x18, 0xcb, 0xcc, 0x10, 0xef, 0xa2, 0xe9,
|
0xbb, 0xdb, 0x63, 0xc8, 0x7c, 0x0a, 0x0d, 0xde, 0xe4, 0x35, 0xb0, 0x76, 0xd0, 0x09, 0x46, 0xb4,
|
||||||
0xb4, 0xd7, 0xc7, 0x57, 0x82, 0xa0, 0x61, 0xcb, 0x89, 0xc3, 0x0a, 0x6b, 0xa5, 0x8b, 0x93, 0xe3,
|
0x78, 0xd2, 0x45, 0xb8, 0xce, 0xd9, 0xa2, 0x93, 0x94, 0xb7, 0xc6, 0x30, 0xbe, 0x26, 0x2c, 0xea,
|
||||||
0x99, 0xe2, 0xe4, 0x08, 0x97, 0xb2, 0x3a, 0x2c, 0x2a, 0x38, 0x88, 0x6f, 0x1d, 0xc0, 0x8d, 0x1d,
|
0x16, 0xa3, 0x5e, 0x78, 0x1a, 0x21, 0xd1, 0xc5, 0x92, 0x72, 0x77, 0x40, 0x2e, 0x05, 0xc1, 0xc2,
|
||||||
0xdc, 0xc7, 0x52, 0x51, 0xf3, 0x3a, 0x46, 0x5f, 0x80, 0x5a, 0x6a, 0x36, 0xe2, 0x5b, 0x87, 0x50,
|
0x96, 0x1d, 0x85, 0x15, 0xde, 0x4a, 0x96, 0x38, 0x27, 0x53, 0x25, 0xce, 0x31, 0x2e, 0x65, 0x0d,
|
||||||
0x8b, 0x17, 0x76, 0xeb, 0xa7, 0x4d, 0xe7, 0xba, 0x12, 0x1e, 0x26, 0x25, 0x41, 0x36, 0x1d, 0xf1,
|
0x58, 0xc8, 0xe0, 0xa0, 0x1e, 0xde, 0x87, 0x1b, 0xdb, 0x64, 0x40, 0x94, 0xd2, 0xe8, 0x55, 0x94,
|
||||||
0xd1, 0xd7, 0x93, 0x40, 0xc9, 0x9d, 0x48, 0xd9, 0xcb, 0x82, 0xc1, 0xfa, 0x87, 0x92, 0x82, 0x90,
|
0x3e, 0x0f, 0xf5, 0xc4, 0x6c, 0xd4, 0xc3, 0x07, 0x50, 0x8f, 0x36, 0x76, 0xf3, 0xc7, 0x2d, 0xfb,
|
||||||
0xed, 0xc3, 0x56, 0x31, 0x2c, 0x13, 0xa6, 0x23, 0xa3, 0x49, 0xa1, 0x53, 0xb4, 0x33, 0xae, 0x31,
|
0xaa, 0x2b, 0x3c, 0x8c, 0x0b, 0x8b, 0x7c, 0x3a, 0xea, 0xa1, 0xaf, 0xc6, 0x81, 0x52, 0x38, 0x51,
|
||||||
0xfe, 0x66, 0x7c, 0x58, 0xb3, 0x7e, 0xff, 0x52, 0xef, 0xf9, 0x14, 0x37, 0xf1, 0xd1, 0xf7, 0x61,
|
0xc6, 0x96, 0x25, 0x03, 0xfe, 0x7b, 0x26, 0x05, 0xa1, 0x5b, 0x07, 0xed, 0x62, 0x58, 0x26, 0x4c,
|
||||||
0x8a, 0x9d, 0x1b, 0xb1, 0x2b, 0x8f, 0x7a, 0xdc, 0xc4, 0xc3, 0xd0, 0xae, 0xc6, 0xbf, 0xbf, 0xa2,
|
0x87, 0x4a, 0x53, 0x42, 0xa7, 0x6c, 0xa7, 0x5c, 0x63, 0xf2, 0xcd, 0xf8, 0xb0, 0x66, 0xff, 0xfe,
|
||||||
0x55, 0x82, 0xe5, 0xaa, 0x39, 0x5a, 0xdc, 0x06, 0x60, 0x12, 0xa4, 0xf0, 0x27, 0x51, 0xac, 0x5f,
|
0x99, 0xbd, 0xe7, 0x33, 0xdc, 0xd4, 0x43, 0xdf, 0x85, 0x29, 0x7e, 0x6e, 0x44, 0xae, 0x3c, 0xee,
|
||||||
0x1a, 0xd0, 0xb0, 0xf1, 0xc0, 0xbb, 0xc0, 0xaf, 0x65, 0xfe, 0x06, 0x4c, 0x31, 0x27, 0x20, 0xfc,
|
0x71, 0x13, 0x0d, 0x43, 0x3b, 0x1a, 0xff, 0xfe, 0x92, 0x56, 0x08, 0x9e, 0xab, 0xe6, 0x48, 0xb1,
|
||||||
0xfe, 0x1d, 0x37, 0x5f, 0xab, 0x02, 0xee, 0x64, 0x2a, 0xe0, 0x8e, 0x75, 0x08, 0x2b, 0x39, 0x68,
|
0x02, 0xc0, 0x57, 0x50, 0xc2, 0x9f, 0x42, 0xc1, 0xbf, 0x30, 0xa0, 0x69, 0x91, 0xa1, 0x7b, 0x4e,
|
||||||
0xd8, 0xc1, 0x4f, 0x86, 0x9d, 0x0e, 0x26, 0x84, 0xd7, 0x98, 0xe3, 0x66, 0xe4, 0xa1, 0xa7, 0xed,
|
0x5e, 0x4b, 0xfd, 0x4d, 0x98, 0xe2, 0x4e, 0x40, 0xc5, 0xfd, 0x3b, 0x6a, 0xbe, 0x56, 0x1d, 0xdd,
|
||||||
0x5e, 0x1f, 0x3b, 0x1c, 0x0d, 0x6f, 0x59, 0x9f, 0x1b, 0x50, 0x7f, 0xe4, 0x38, 0x6f, 0x43, 0x35,
|
0x4e, 0xd5, 0xd1, 0x6d, 0x7c, 0x00, 0x4b, 0x39, 0x68, 0xf8, 0xc1, 0x4f, 0x47, 0xdd, 0x2e, 0xa1,
|
||||||
0x47, 0x55, 0xcd, 0x29, 0x54, 0xed, 0x09, 0x2c, 0xe9, 0xa0, 0x94, 0xd2, 0xab, 0x07, 0xb5, 0x9d,
|
0x54, 0x54, 0xaa, 0xa3, 0x66, 0xe8, 0xa1, 0x27, 0x9d, 0xfe, 0x80, 0xd8, 0x02, 0x8d, 0x68, 0xe1,
|
||||||
0x1e, 0x19, 0xf4, 0x08, 0x11, 0x31, 0xc2, 0x84, 0x69, 0x2f, 0x53, 0x93, 0xf5, 0xfc, 0x91, 0x6f,
|
0xcf, 0x0c, 0x68, 0x3c, 0xb2, 0xed, 0xb7, 0x21, 0x9a, 0x9d, 0x15, 0xcd, 0x2e, 0x14, 0xed, 0x09,
|
||||||
0xef, 0x0d, 0x98, 0xea, 0xa6, 0x6f, 0xb7, 0xbc, 0x69, 0xed, 0xc2, 0x7c, 0x5a, 0x14, 0x2b, 0x33,
|
0x2c, 0xea, 0xa0, 0x94, 0x92, 0xab, 0x0f, 0xf5, 0xed, 0x3e, 0x1d, 0xf6, 0x29, 0x95, 0x31, 0xc2,
|
||||||
0x74, 0x46, 0x29, 0x33, 0x24, 0x4c, 0xd6, 0x5f, 0x0c, 0x40, 0x87, 0xc3, 0x10, 0x67, 0x8e, 0x93,
|
0x84, 0x69, 0x37, 0x55, 0xd9, 0x75, 0xbd, 0xb1, 0x6f, 0xef, 0x4d, 0x98, 0xea, 0x25, 0x6f, 0xb7,
|
||||||
0xb7, 0x84, 0x3a, 0x32, 0xdc, 0x50, 0x2e, 0x1a, 0xf1, 0x16, 0xb2, 0x60, 0x76, 0x30, 0x0c, 0xb1,
|
0xa2, 0x89, 0x77, 0x60, 0x2e, 0xb9, 0x14, 0x2f, 0x33, 0x74, 0xc7, 0x29, 0x33, 0xc4, 0x4c, 0xf8,
|
||||||
0xd3, 0xc2, 0x1d, 0xcf, 0x75, 0x08, 0xcd, 0xfe, 0xe6, 0xec, 0x14, 0xcd, 0xda, 0x87, 0x45, 0x05,
|
0xcf, 0x06, 0xa0, 0x83, 0x51, 0x40, 0x52, 0xc7, 0xc9, 0x5b, 0x42, 0x1d, 0x2a, 0x6e, 0xa4, 0x16,
|
||||||
0x69, 0x39, 0xa5, 0x7f, 0x61, 0x40, 0x63, 0xbb, 0xed, 0x76, 0x70, 0xff, 0xdd, 0xab, 0x6e, 0x1d,
|
0x8d, 0x44, 0x0b, 0x61, 0x98, 0x1d, 0x8e, 0x02, 0x62, 0xb7, 0x49, 0xd7, 0x75, 0x6c, 0xca, 0xb2,
|
||||||
0xc1, 0x4a, 0x0e, 0x96, 0x72, 0xca, 0x9d, 0xc2, 0xac, 0x98, 0xe9, 0x6d, 0x6e, 0xc0, 0x2d, 0x98,
|
0xbf, 0x9a, 0x95, 0xa0, 0xe1, 0x3d, 0x58, 0xc8, 0x20, 0x2d, 0x27, 0xf4, 0xcf, 0x0d, 0x68, 0x6e,
|
||||||
0x93, 0xe4, 0x94, 0xc3, 0xda, 0x07, 0x94, 0xd1, 0xfd, 0x6d, 0x22, 0xde, 0x87, 0x45, 0x45, 0x5a,
|
0x75, 0x9c, 0x2e, 0x19, 0xbc, 0x7b, 0xd1, 0xf1, 0x21, 0x2c, 0xe5, 0x60, 0x29, 0x27, 0xdc, 0x09,
|
||||||
0x39, 0xdc, 0x7f, 0x36, 0x60, 0xa5, 0x95, 0x3a, 0x61, 0x8e, 0x7a, 0x9d, 0x33, 0xb7, 0x3d, 0x88,
|
0xcc, 0xca, 0x99, 0xde, 0xa6, 0x01, 0x6e, 0x42, 0x4d, 0x59, 0xa7, 0x1c, 0xd6, 0x01, 0xa0, 0x94,
|
||||||
0x6f, 0x2c, 0xdd, 0x74, 0xea, 0xd5, 0x4d, 0x52, 0x2f, 0x97, 0x33, 0xc6, 0xa7, 0x63, 0xdc, 0x4e,
|
0xec, 0x6f, 0x13, 0xf1, 0x1e, 0x2c, 0x64, 0x56, 0x2b, 0x87, 0xfb, 0x4f, 0x06, 0x2c, 0xb5, 0x13,
|
||||||
0x69, 0x3d, 0x5e, 0xac, 0xf5, 0x84, 0xaa, 0x75, 0xb2, 0xbb, 0x2a, 0xa9, 0xdd, 0x75, 0x0c, 0x66,
|
0x27, 0xcc, 0x61, 0xbf, 0x7b, 0xea, 0x74, 0x86, 0xd1, 0x8d, 0xa5, 0x97, 0x4c, 0xbd, 0x7a, 0x71,
|
||||||
0x1e, 0xd0, 0x72, 0x75, 0xc9, 0x80, 0xbe, 0x40, 0xb1, 0x92, 0x41, 0x6b, 0xe8, 0xf3, 0x92, 0x7c,
|
0xea, 0xe5, 0x08, 0xc6, 0xe8, 0x74, 0x8c, 0xda, 0x09, 0xa9, 0x27, 0x8b, 0xa5, 0xbe, 0x96, 0x95,
|
||||||
0x5c, 0xaf, 0xc8, 0x00, 0x35, 0x8a, 0x80, 0x8e, 0xa5, 0x22, 0x40, 0x81, 0xfa, 0xd1, 0x61, 0x78,
|
0x3a, 0xb6, 0xae, 0x4a, 0xc2, 0xba, 0x8e, 0xc0, 0xcc, 0x03, 0x5a, 0xae, 0x2e, 0xe9, 0xb3, 0x77,
|
||||||
0x2b, 0x57, 0x68, 0xa9, 0x15, 0xbc, 0x56, 0xb5, 0xe2, 0x92, 0x5e, 0x8b, 0x12, 0x1c, 0x5f, 0xda,
|
0x2c, 0x5e, 0x32, 0x68, 0x8f, 0x3c, 0x51, 0xd8, 0x8f, 0xea, 0x15, 0x29, 0xa0, 0x46, 0x11, 0xd0,
|
||||||
0x83, 0xeb, 0xaf, 0xd8, 0xc5, 0x46, 0x91, 0x5c, 0xce, 0x04, 0x6f, 0xe2, 0xd9, 0xf5, 0x3f, 0x63,
|
0x89, 0x44, 0x04, 0x28, 0x10, 0x3f, 0x3c, 0x0c, 0x6f, 0xe7, 0x2e, 0x5a, 0x6a, 0x07, 0xaf, 0x54,
|
||||||
0x50, 0x4f, 0xef, 0x2f, 0xa9, 0xa2, 0x9a, 0xe3, 0x04, 0x25, 0x76, 0xc0, 0x08, 0x0e, 0xf0, 0x2d,
|
0xad, 0xb8, 0x60, 0xd7, 0xa2, 0x18, 0xc7, 0x17, 0xf6, 0x6c, 0xfb, 0x4b, 0x7e, 0xb1, 0xc9, 0xac,
|
||||||
0xc9, 0xb5, 0x2a, 0x3c, 0xeb, 0xef, 0x7a, 0x5e, 0xb7, 0x8f, 0xd9, 0x0f, 0x12, 0x2f, 0x87, 0xa7,
|
0x5c, 0x4e, 0x05, 0x6f, 0xe2, 0xf1, 0xf6, 0x3f, 0x13, 0xd0, 0x48, 0xda, 0x97, 0x52, 0x51, 0xcd,
|
||||||
0xeb, 0xad, 0x30, 0xe8, 0xb9, 0xdd, 0x1f, 0xb6, 0xfb, 0x43, 0x2c, 0x39, 0xde, 0x03, 0x98, 0x3a,
|
0x71, 0x82, 0x12, 0x16, 0x30, 0x86, 0x03, 0x7c, 0x43, 0x71, 0xad, 0x8a, 0xc8, 0xfa, 0x7b, 0xae,
|
||||||
0x6d, 0x77, 0xf0, 0x27, 0xf6, 0x01, 0x2d, 0xf0, 0x5c, 0x35, 0x30, 0x66, 0x46, 0xdf, 0x86, 0x6a,
|
0xdb, 0x1b, 0x10, 0xfe, 0x9b, 0xc5, 0xcb, 0xd1, 0xc9, 0x5a, 0x3b, 0xf0, 0xfb, 0x4e, 0xef, 0xfb,
|
||||||
0x20, 0xd2, 0x8c, 0x29, 0x3a, 0xf2, 0x96, 0x32, 0xb2, 0xe9, 0x86, 0xf7, 0x37, 0xd9, 0xc0, 0x84,
|
0x9d, 0xc1, 0x88, 0x28, 0x8e, 0xf7, 0x00, 0xa6, 0x4e, 0x3a, 0x5d, 0xf2, 0x89, 0xb5, 0xcf, 0x0a,
|
||||||
0x1b, 0x7d, 0x04, 0x63, 0xf8, 0x55, 0x63, 0x7a, 0x04, 0x69, 0x63, 0xf8, 0x95, 0xf5, 0x14, 0x96,
|
0x3c, 0x97, 0x0d, 0x8c, 0x98, 0xd1, 0x37, 0xa1, 0xea, 0xcb, 0x34, 0x63, 0x8a, 0x8d, 0xbc, 0x9d,
|
||||||
0x74, 0x36, 0x2e, 0xe5, 0xbf, 0x9b, 0xff, 0x5b, 0x04, 0xf6, 0xf7, 0x09, 0xfa, 0x2e, 0xcc, 0x74,
|
0x19, 0xd9, 0x72, 0x82, 0xfb, 0x1b, 0x7c, 0x60, 0xcc, 0x8d, 0x3e, 0x82, 0x09, 0xf2, 0xaa, 0x39,
|
||||||
0x92, 0x7f, 0x16, 0x50, 0x3d, 0x1e, 0x97, 0xfa, 0x71, 0xc3, 0x5c, 0xd2, 0x91, 0x89, 0x8f, 0x1e,
|
0x3d, 0xc6, 0x6a, 0x13, 0xe4, 0x15, 0x7e, 0x0a, 0x8b, 0x3a, 0x1d, 0x97, 0xf2, 0xdf, 0x8d, 0xff,
|
||||||
0x40, 0xf5, 0x27, 0xf1, 0xf3, 0x15, 0x5a, 0xe4, 0x4c, 0xf2, 0xc3, 0x9a, 0x79, 0x53, 0x25, 0xb2,
|
0x2d, 0x00, 0xff, 0x87, 0x05, 0x7d, 0x1b, 0x66, 0xba, 0xf1, 0x9f, 0x0f, 0xa8, 0x11, 0x8d, 0x4b,
|
||||||
0x71, 0xe7, 0xf1, 0xdb, 0x88, 0x18, 0x27, 0xbf, 0xca, 0x88, 0x71, 0xe9, 0x27, 0x94, 0x2d, 0x98,
|
0xfc, 0xfe, 0x61, 0x2e, 0xea, 0xc8, 0xd4, 0x43, 0x0f, 0xa0, 0xfa, 0xa3, 0xe8, 0xf9, 0x0a, 0x2d,
|
||||||
0xeb, 0xca, 0xff, 0x1a, 0xa0, 0xe5, 0xf8, 0xcf, 0x91, 0xcc, 0x6f, 0x0f, 0x66, 0x43, 0xdf, 0x41,
|
0x08, 0x26, 0xf5, 0x79, 0xce, 0xbc, 0x99, 0x25, 0xf2, 0x71, 0x67, 0xd1, 0xdb, 0x88, 0x1c, 0xa7,
|
||||||
0x7c, 0xf4, 0x10, 0x66, 0x89, 0xf4, 0x08, 0x8f, 0x62, 0xdd, 0x32, 0x3f, 0x0e, 0x98, 0xcb, 0x5a,
|
0xbe, 0xca, 0xc8, 0x71, 0xc9, 0x27, 0x94, 0x4d, 0xa8, 0xf5, 0xd4, 0x3f, 0x16, 0xd0, 0xad, 0xe8,
|
||||||
0x3a, 0xf1, 0xd1, 0x8f, 0x61, 0xb9, 0xab, 0x7f, 0x01, 0x47, 0x77, 0x32, 0x52, 0xd5, 0x17, 0x68,
|
0xff, 0x93, 0xd4, 0xcf, 0x13, 0x66, 0x53, 0xdf, 0x41, 0x3d, 0xf4, 0x10, 0x66, 0xa9, 0xf2, 0x94,
|
||||||
0xd3, 0xba, 0x8a, 0x85, 0xf8, 0xe8, 0x14, 0x56, 0xba, 0x79, 0xcf, 0xc9, 0xe8, 0x83, 0x64, 0x82,
|
0x8f, 0x22, 0xd9, 0x52, 0xbf, 0x1f, 0x98, 0xb7, 0xb4, 0x74, 0xea, 0xa1, 0x1f, 0xc2, 0xad, 0x9e,
|
||||||
0xdc, 0x77, 0x6e, 0xf3, 0xee, 0xd5, 0x4c, 0xc4, 0x47, 0x27, 0x80, 0x42, 0xe5, 0x4d, 0x15, 0xad,
|
0xfe, 0x1d, 0x1d, 0xdd, 0x49, 0xad, 0x9a, 0x7d, 0xc7, 0x36, 0xf1, 0x65, 0x2c, 0xd4, 0x43, 0x27,
|
||||||
0xf2, 0xb1, 0xda, 0xf7, 0x62, 0xf3, 0xbd, 0x82, 0x5e, 0xe2, 0xa3, 0x0e, 0x34, 0xba, 0x39, 0x0f,
|
0xb0, 0xd4, 0xcb, 0x7b, 0x94, 0x46, 0x1f, 0xc4, 0x13, 0xe4, 0xbe, 0x96, 0x9b, 0x77, 0x2f, 0x67,
|
||||||
0x76, 0xc8, 0x4a, 0xfd, 0xe6, 0xa3, 0x7d, 0xac, 0x34, 0x3f, 0xb8, 0x92, 0x87, 0xe1, 0xee, 0x2a,
|
0xa2, 0x1e, 0x3a, 0x06, 0x14, 0x64, 0x5e, 0x66, 0xd1, 0xb2, 0x18, 0xab, 0x7d, 0x75, 0x36, 0xdf,
|
||||||
0x2f, 0x4e, 0x02, 0xb7, 0xf6, 0xc1, 0x4c, 0xe0, 0xce, 0x79, 0xaa, 0x7a, 0x06, 0x8b, 0x5d, 0xf5,
|
0x2b, 0xe8, 0xa5, 0x1e, 0xea, 0x42, 0xb3, 0x97, 0xf3, 0x60, 0x87, 0x70, 0xe2, 0x67, 0x21, 0xed,
|
||||||
0x09, 0x06, 0xe9, 0x47, 0x89, 0x5d, 0x76, 0xbb, 0xa8, 0x9b, 0xf8, 0x68, 0x1f, 0x6a, 0x67, 0xe9,
|
0x63, 0xa5, 0xf9, 0xc1, 0xa5, 0x3c, 0x1c, 0x77, 0x2f, 0xf3, 0xe2, 0x24, 0x71, 0x6b, 0x1f, 0xcc,
|
||||||
0x37, 0x05, 0x14, 0xff, 0xeb, 0xa4, 0x3e, 0xad, 0x98, 0x66, 0x5e, 0x97, 0x50, 0x39, 0x53, 0xa4,
|
0x24, 0xee, 0x9c, 0xa7, 0xaa, 0x67, 0xb0, 0xd0, 0xcb, 0x3e, 0xc1, 0x20, 0xfd, 0x28, 0x69, 0x65,
|
||||||
0x97, 0x55, 0x56, 0xdf, 0x0d, 0x64, 0x95, 0x75, 0xd5, 0xfd, 0x23, 0x58, 0xe8, 0x65, 0xeb, 0xd6,
|
0x2b, 0x45, 0xdd, 0xd4, 0x43, 0x7b, 0x50, 0x3f, 0x4d, 0xbe, 0x29, 0xa0, 0xe8, 0x8f, 0xa9, 0xec,
|
||||||
0xe8, 0x56, 0x5c, 0x6a, 0xd6, 0x14, 0xe2, 0xcd, 0xd5, 0xfc, 0x4e, 0x36, 0x5f, 0x37, 0x5b, 0x13,
|
0xd3, 0x8a, 0x69, 0xe6, 0x75, 0x49, 0x91, 0x53, 0x45, 0x7a, 0x55, 0xe4, 0xec, 0xbb, 0x81, 0x2a,
|
||||||
0x16, 0xf3, 0xe9, 0xca, 0xd3, 0xe6, 0x6a, 0x7e, 0x27, 0x73, 0x54, 0xb9, 0x74, 0x21, 0x1c, 0x35,
|
0xb2, 0xae, 0xba, 0x7f, 0x08, 0xf3, 0xfd, 0x74, 0xdd, 0x1a, 0xdd, 0x8e, 0x4a, 0xcd, 0x9a, 0x42,
|
||||||
0x53, 0x1e, 0x31, 0x97, 0xb5, 0x74, 0xe2, 0xa3, 0xfb, 0x30, 0x1d, 0xd3, 0x10, 0xca, 0x30, 0x45,
|
0xbc, 0xb9, 0x9c, 0xdf, 0xc9, 0xe7, 0xeb, 0xa5, 0x6b, 0xc2, 0x72, 0x3e, 0x5d, 0x79, 0xda, 0x5c,
|
||||||
0x03, 0x17, 0x15, 0x1a, 0x0b, 0x4d, 0x22, 0x66, 0xa0, 0x2c, 0x07, 0x91, 0x43, 0x53, 0xba, 0x42,
|
0xce, 0xef, 0xe4, 0x8e, 0xaa, 0x96, 0x2e, 0xa4, 0xa3, 0xa6, 0xca, 0x23, 0xe6, 0x2d, 0x2d, 0x9d,
|
||||||
0x78, 0x22, 0xea, 0x56, 0x52, 0x49, 0x4b, 0x2c, 0x90, 0xb6, 0xb4, 0x26, 0x16, 0x48, 0x5f, 0x0b,
|
0x7a, 0xe8, 0x3e, 0x4c, 0x47, 0x34, 0x84, 0x52, 0x4c, 0xe1, 0xc0, 0x85, 0x0c, 0x8d, 0x87, 0x26,
|
||||||
0x8b, 0x76, 0x4f, 0xa6, 0x04, 0x25, 0x76, 0x8f, 0x5a, 0x22, 0x13, 0xbb, 0x47, 0x53, 0xb5, 0x8a,
|
0x19, 0x33, 0x50, 0x9a, 0x83, 0xaa, 0xa1, 0x29, 0x59, 0x21, 0x3c, 0x96, 0x75, 0x2b, 0xa5, 0xa4,
|
||||||
0xa2, 0xbc, 0x54, 0x67, 0x12, 0x51, 0x3e, 0x5d, 0xc9, 0x12, 0x51, 0x3e, 0x53, 0x92, 0x8a, 0x54,
|
0x25, 0x37, 0x48, 0x5b, 0x5a, 0x93, 0x1b, 0xa4, 0xaf, 0x85, 0x85, 0xd6, 0x93, 0x2a, 0x41, 0x49,
|
||||||
0x53, 0x2b, 0x29, 0x39, 0xee, 0xc6, 0x53, 0xf8, 0x1c, 0x77, 0x13, 0x59, 0xf5, 0x73, 0xa8, 0x6b,
|
0xeb, 0xc9, 0x96, 0xc8, 0xa4, 0xf5, 0x68, 0xaa, 0x56, 0x61, 0x94, 0x57, 0xea, 0x4c, 0x32, 0xca,
|
||||||
0x4b, 0x09, 0xe8, 0x7d, 0x3e, 0x2e, 0xaf, 0xec, 0x61, 0xae, 0x15, 0x33, 0x30, 0xb8, 0x6a, 0x2e,
|
0x27, 0x2b, 0x59, 0x32, 0xca, 0xa7, 0x4a, 0x52, 0xa1, 0x68, 0xd9, 0x4a, 0x4a, 0x8e, 0xbb, 0x89,
|
||||||
0x2f, 0xe0, 0x6a, 0x2b, 0x0e, 0x02, 0x6e, 0x4e, 0x11, 0xe0, 0x21, 0xcc, 0xca, 0x79, 0xb6, 0xd8,
|
0x14, 0x3e, 0xc7, 0xdd, 0x64, 0x56, 0xfd, 0x1c, 0x1a, 0xda, 0x52, 0x02, 0x7a, 0x5f, 0x8c, 0xcb,
|
||||||
0x8a, 0x99, 0x3c, 0x5f, 0x6c, 0x45, 0x25, 0x29, 0xdf, 0x87, 0x5a, 0x26, 0xb3, 0x13, 0x4b, 0xa9,
|
0x2b, 0x7b, 0x98, 0xab, 0xc5, 0x0c, 0x1c, 0x6e, 0x36, 0x97, 0x97, 0x70, 0xb5, 0x15, 0x07, 0x09,
|
||||||
0x66, 0x9f, 0x62, 0x29, 0x75, 0xc9, 0xe0, 0x73, 0xa8, 0x6b, 0x33, 0x45, 0x61, 0xb9, 0xbc, 0x9c,
|
0x37, 0xa7, 0x08, 0xf0, 0x10, 0x66, 0xd5, 0x3c, 0x5b, 0x9a, 0x62, 0x2a, 0xcf, 0x97, 0xa6, 0x98,
|
||||||
0x56, 0x58, 0x2e, 0x3f, 0xd1, 0x7c, 0x00, 0x55, 0x41, 0x16, 0x7b, 0x5f, 0xce, 0xca, 0xc4, 0xde,
|
0x49, 0xca, 0xf7, 0xa0, 0x9e, 0xca, 0xec, 0xe4, 0x56, 0x66, 0xb3, 0x4f, 0xb9, 0x95, 0xba, 0x64,
|
||||||
0x4f, 0x27, 0x4f, 0xfb, 0x50, 0xcb, 0x4c, 0x2a, 0xb4, 0x53, 0x33, 0x3b, 0xa1, 0x9d, 0x2e, 0x0d,
|
0xf0, 0x39, 0x34, 0xb4, 0x99, 0xa2, 0xd4, 0x5c, 0x5e, 0x4e, 0x2b, 0x35, 0x97, 0x9f, 0x68, 0x3e,
|
||||||
0xfb, 0x51, 0xf6, 0x96, 0x13, 0x67, 0x2a, 0x68, 0x2d, 0x73, 0x1c, 0x2b, 0x19, 0x97, 0x79, 0xe7,
|
0x80, 0xaa, 0x24, 0x4b, 0xdb, 0x57, 0xb3, 0x32, 0x69, 0xfb, 0xc9, 0xe4, 0x69, 0x0f, 0xea, 0xa9,
|
||||||
0x0a, 0x0e, 0x76, 0x74, 0xe7, 0xa4, 0x10, 0xf2, 0xd1, 0x9d, 0x93, 0xd7, 0xc8, 0x47, 0x77, 0x6e,
|
0x49, 0xa5, 0x74, 0xd9, 0xcc, 0x4e, 0x4a, 0xa7, 0x4b, 0xc3, 0x7e, 0x90, 0xbe, 0xe5, 0x44, 0x99,
|
||||||
0x16, 0xc2, 0x7c, 0x25, 0x73, 0x39, 0x97, 0x7d, 0x45, 0xcd, 0x18, 0x64, 0x5f, 0xd1, 0xdd, 0xea,
|
0x0a, 0x5a, 0x4d, 0x1d, 0xc7, 0x99, 0x8c, 0xcb, 0xbc, 0x73, 0x09, 0x07, 0x3f, 0xba, 0x73, 0x52,
|
||||||
0x4f, 0x00, 0xa9, 0x37, 0x3f, 0x31, 0xa5, 0xf6, 0xe2, 0x2d, 0xa6, 0xd4, 0x5f, 0x19, 0xb7, 0x6a,
|
0x08, 0xf5, 0xe8, 0xce, 0xc9, 0x6b, 0xd4, 0xa3, 0x3b, 0x37, 0x0b, 0xe1, 0xbe, 0x92, 0xba, 0x9c,
|
||||||
0xcf, 0xe7, 0xd6, 0xd9, 0xbf, 0xc8, 0x1f, 0xd3, 0xef, 0xcb, 0x49, 0x7a, 0xef, 0xbc, 0xff, 0xff,
|
0xab, 0xbe, 0x92, 0xcd, 0x18, 0x54, 0x5f, 0xd1, 0xdd, 0xea, 0x8f, 0x01, 0x65, 0x6f, 0x7e, 0x72,
|
||||||
0x00, 0x00, 0x00, 0xff, 0xff, 0xe6, 0x70, 0x4b, 0xcf, 0xa7, 0x2c, 0x00, 0x00,
|
0x4a, 0xed, 0xc5, 0x5b, 0x4e, 0xa9, 0xbf, 0x32, 0x6e, 0xd6, 0x9f, 0xd7, 0xd6, 0xf8, 0x1f, 0xcd,
|
||||||
|
0x1f, 0xb3, 0xef, 0xcb, 0xeb, 0xec, 0xde, 0x79, 0xff, 0xff, 0x01, 0x00, 0x00, 0xff, 0xff, 0x7a,
|
||||||
|
0x3c, 0xf8, 0x82, 0xed, 0x2c, 0x00, 0x00,
|
||||||
}
|
}
|
||||||
|
@ -91,6 +91,9 @@ message JoinGroupReq{
|
|||||||
string ReqMessage = 2;
|
string ReqMessage = 2;
|
||||||
string OpUserID = 3;
|
string OpUserID = 3;
|
||||||
string OperationID = 4;
|
string OperationID = 4;
|
||||||
|
int32 JoinSource = 5;
|
||||||
|
string InviterUserID = 6;
|
||||||
|
|
||||||
}
|
}
|
||||||
message JoinGroupResp{
|
message JoinGroupResp{
|
||||||
CommonResp CommonResp = 1;
|
CommonResp CommonResp = 1;
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -21,6 +21,10 @@ message GroupInfo{
|
|||||||
string creatorUserID = 11;
|
string creatorUserID = 11;
|
||||||
int32 groupType = 12;
|
int32 groupType = 12;
|
||||||
int32 needVerification = 13;
|
int32 needVerification = 13;
|
||||||
|
int32 lookMemberInfo =14;
|
||||||
|
int32 applyMemberFriend = 15;
|
||||||
|
uint32 notificationUpdateTime = 16;
|
||||||
|
string notificationUserID = 17;
|
||||||
}
|
}
|
||||||
|
|
||||||
message GroupInfoForSet{
|
message GroupInfoForSet{
|
||||||
@ -31,6 +35,8 @@ message GroupInfoForSet{
|
|||||||
string faceURL = 5;
|
string faceURL = 5;
|
||||||
string ex = 6;
|
string ex = 6;
|
||||||
google.protobuf.Int32Value needVerification = 7;
|
google.protobuf.Int32Value needVerification = 7;
|
||||||
|
google.protobuf.Int32Value lookMemberInfo = 8;
|
||||||
|
google.protobuf.Int32Value applyMemberFriend = 9;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -46,6 +52,7 @@ message GroupMemberFullInfo {
|
|||||||
string operatorUserID = 9;
|
string operatorUserID = 9;
|
||||||
string ex = 10;
|
string ex = 10;
|
||||||
uint32 muteEndTime = 11;
|
uint32 muteEndTime = 11;
|
||||||
|
string inviterUserID = 12;
|
||||||
}
|
}
|
||||||
|
|
||||||
message PublicUserInfo{
|
message PublicUserInfo{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user