Merge branch 'v2.3.0release' of github.com:OpenIMSDK/Open-IM-Server into v2.3.0release

This commit is contained in:
wangchuxiao 2023-02-28 16:32:15 +08:00
commit a2fe6ffc7a
29 changed files with 523 additions and 241 deletions

View File

@ -1,13 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_api NAME=open_im_api
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -16,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,13 +1,25 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_cms_api NAME=open_im_cms_api
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -16,8 +28,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_cron_task NAME=open_im_cron_task
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,13 +1,25 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_demo NAME=open_im_demo
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -16,8 +28,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_msg_gateway NAME=open_im_msg_gateway
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,13 +1,25 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_msg_transfer NAME=open_im_msg_transfer
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -16,8 +28,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_push NAME=open_im_push
BIN_DIR=../../bin/ BIN_DIR=../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_admin_cms NAME=open_im_admin_cms
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_auth NAME=open_im_auth
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_cache NAME=open_im_cache
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_conversation NAME=open_im_conversation
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,25 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_friend NAME=open_im_friend
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +28,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,25 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_group NAME=open_im_group
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +28,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_msg NAME=open_im_msg
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_office NAME=open_im_office
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_organization NAME=open_im_organization
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -1,12 +1,24 @@
.PHONY: all build run gotool install clean help .PHONY: all build run gotool install clean help
BINARY_NAME=open_im_user NAME=open_im_user
BIN_DIR=../../../bin/ BIN_DIR=../../../bin/
OS:= $(or $(os),linux)
ARCH:=$(or $(arch),amd64)
all: gotool build all: gotool build
ifeq ($(OS),windows)
BINARY_NAME=${NAME}.exe
else
BINARY_NAME=${NAME}
endif
build: build:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" CGO_ENABLED=0 GOOS=${OS} GOARCH=${ARCH} go build -ldflags="-w -s"
run: run:
@go run ./ @go run ./
@ -15,8 +27,7 @@ gotool:
go fmt ./ go fmt ./
go vet ./ go vet ./
install: install:build
make build
mv ${BINARY_NAME} ${BIN_DIR} mv ${BINARY_NAME} ${BIN_DIR}
clean: clean:

View File

@ -311,6 +311,9 @@ callback:
callbackAfterSendGroupMsg: callbackAfterSendGroupMsg:
enable: false enable: false
callbackTimeOut: 2 callbackTimeOut: 2
callbackAfterConsumeGroupMsg:
enable: false
callbackTimeOut: 2
callbackMsgModify: callbackMsgModify:
enable: false enable: false
callbackTimeOut: 2 callbackTimeOut: 2

View File

@ -0,0 +1,62 @@
package logic
import (
cbApi "Open_IM/pkg/call_back_struct"
"Open_IM/pkg/common/callback"
"Open_IM/pkg/common/config"
"Open_IM/pkg/common/constant"
"Open_IM/pkg/common/http"
"Open_IM/pkg/common/log"
pbChat "Open_IM/pkg/proto/msg"
"Open_IM/pkg/utils"
http2 "net/http"
)
func callbackAfterConsumeGroupMsg(msg []*pbChat.MsgDataToMQ, triggerID string) cbApi.CommonCallbackResp {
callbackResp := cbApi.CommonCallbackResp{OperationID: triggerID}
if !config.Config.Callback.CallbackAfterConsumeGroupMsg.Enable {
return callbackResp
}
for _, v := range msg {
if v.MsgData.SessionType == constant.SuperGroupChatType || v.MsgData.SessionType == constant.GroupChatType {
commonCallbackReq := copyCallbackCommonReqStruct(v)
commonCallbackReq.CallbackCommand = constant.CallbackAfterConsumeGroupMsgCommand
req := cbApi.CallbackAfterConsumeGroupMsgReq{
CommonCallbackReq: commonCallbackReq,
GroupID: v.MsgData.GroupID,
}
resp := &cbApi.CallbackAfterConsumeGroupMsgResp{CommonCallbackResp: &callbackResp}
defer log.NewDebug(triggerID, utils.GetSelfFuncName(), req, *resp)
if err := http.CallBackPostReturn(config.Config.Callback.CallbackUrl, constant.CallbackAfterConsumeGroupMsgCommand, req, resp, config.Config.Callback.CallbackAfterConsumeGroupMsg.CallbackTimeOut); err != nil {
callbackResp.ErrCode = http2.StatusInternalServerError
callbackResp.ErrMsg = err.Error()
return callbackResp
}
}
}
log.NewDebug(triggerID, utils.GetSelfFuncName(), msg)
return callbackResp
}
func copyCallbackCommonReqStruct(msg *pbChat.MsgDataToMQ) cbApi.CommonCallbackReq {
req := cbApi.CommonCallbackReq{
SendID: msg.MsgData.SendID,
ServerMsgID: msg.MsgData.ServerMsgID,
ClientMsgID: msg.MsgData.ClientMsgID,
OperationID: msg.OperationID,
SenderPlatformID: msg.MsgData.SenderPlatformID,
SenderNickname: msg.MsgData.SenderNickname,
SessionType: msg.MsgData.SessionType,
MsgFrom: msg.MsgData.MsgFrom,
ContentType: msg.MsgData.ContentType,
Status: msg.MsgData.Status,
CreateTime: msg.MsgData.CreateTime,
AtUserIDList: msg.MsgData.AtUserIDList,
SenderFaceURL: msg.MsgData.SenderFaceURL,
Content: callback.GetContent(msg.MsgData),
Seq: msg.MsgData.Seq,
Ex: msg.MsgData.Ex,
}
return req
}

View File

@ -111,6 +111,10 @@ func (och *OnlineHistoryRedisConsumerHandler) Run(channelID int) {
singleMsgSuccessCountMutex.Lock() singleMsgSuccessCountMutex.Lock()
singleMsgSuccessCount += uint64(len(storageMsgList)) singleMsgSuccessCount += uint64(len(storageMsgList))
singleMsgSuccessCountMutex.Unlock() singleMsgSuccessCountMutex.Unlock()
callbackResp := callbackAfterConsumeGroupMsg(storageMsgList, triggerID)
if callbackResp.ErrCode != 0 {
log.NewError(triggerID, utils.GetSelfFuncName(), "callbackAfterConsumeGroupMsg resp: ", callbackResp)
}
och.SendMessageToMongoCH(msgChannelValue.aggregationID, triggerID, storageMsgList, lastSeq) och.SendMessageToMongoCH(msgChannelValue.aggregationID, triggerID, storageMsgList, lastSeq)
for _, v := range storageMsgList { for _, v := range storageMsgList {

View File

@ -58,6 +58,7 @@ func ExtendMessageAddedNotification(operationID, sendID string, sourceID string,
m.ClientMsgID = req.ClientMsgID m.ClientMsgID = req.ClientMsgID
m.IsReact = resp.IsReact m.IsReact = resp.IsReact
m.IsExternalExtensions = req.IsExternalExtensions m.IsExternalExtensions = req.IsExternalExtensions
m.Seq = req.Seq
m.MsgFirstModifyTime = resp.MsgFirstModifyTime m.MsgFirstModifyTime = resp.MsgFirstModifyTime
messageReactionSender(operationID, sendID, sourceID, senderPlatformID, sessionType, constant.ReactionMessageModifier, utils.StructToJsonString(m), isHistory, isReactionFromCache) messageReactionSender(operationID, sendID, sourceID, senderPlatformID, sessionType, constant.ReactionMessageModifier, utils.StructToJsonString(m), isHistory, isReactionFromCache)
} }

View File

@ -64,6 +64,7 @@ type ModifyMessageReactionExtensionsReq struct {
IsReact bool `json:"isReact"` IsReact bool `json:"isReact"`
IsExternalExtensions bool `json:"isExternalExtensions"` IsExternalExtensions bool `json:"isExternalExtensions"`
MsgFirstModifyTime int64 `json:"msgFirstModifyTime"` MsgFirstModifyTime int64 `json:"msgFirstModifyTime"`
Seq uint32 `json:"seq"`
} }
type ModifyMessageReactionExtensionsResp struct { type ModifyMessageReactionExtensionsResp struct {

View File

@ -41,6 +41,14 @@ type CallbackAfterSendGroupMsgResp struct {
*CommonCallbackResp *CommonCallbackResp
} }
type CallbackAfterConsumeGroupMsgReq struct {
CommonCallbackReq
GroupID string `json:"groupID"`
}
type CallbackAfterConsumeGroupMsgResp struct {
*CommonCallbackResp
}
type CallbackMsgModifyCommandReq struct { type CallbackMsgModifyCommandReq struct {
CommonCallbackReq CommonCallbackReq
} }

View File

@ -287,6 +287,7 @@ type config struct {
CallbackAfterSendSingleMsg callBackConfig `yaml:"callbackAfterSendSingleMsg"` CallbackAfterSendSingleMsg callBackConfig `yaml:"callbackAfterSendSingleMsg"`
CallbackBeforeSendGroupMsg callBackConfig `yaml:"callbackBeforeSendGroupMsg"` CallbackBeforeSendGroupMsg callBackConfig `yaml:"callbackBeforeSendGroupMsg"`
CallbackAfterSendGroupMsg callBackConfig `yaml:"callbackAfterSendGroupMsg"` CallbackAfterSendGroupMsg callBackConfig `yaml:"callbackAfterSendGroupMsg"`
CallbackAfterConsumeGroupMsg callBackConfig `yaml:"callbackAfterConsumeGroupMsg"`
CallbackMsgModify callBackConfig `yaml:"callbackMsgModify"` CallbackMsgModify callBackConfig `yaml:"callbackMsgModify"`
CallbackUserOnline callBackConfig `yaml:"callbackUserOnline"` CallbackUserOnline callBackConfig `yaml:"callbackUserOnline"`
CallbackUserOffline callBackConfig `yaml:"callbackUserOffline"` CallbackUserOffline callBackConfig `yaml:"callbackUserOffline"`

View File

@ -210,6 +210,7 @@ const (
CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand" CallbackAfterSendSingleMsgCommand = "callbackAfterSendSingleMsgCommand"
CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand" CallbackBeforeSendGroupMsgCommand = "callbackBeforeSendGroupMsgCommand"
CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand" CallbackAfterSendGroupMsgCommand = "callbackAfterSendGroupMsgCommand"
CallbackAfterConsumeGroupMsgCommand = "callbackAfterConsumeGroupMsgCommand"
CallbackMsgModifyCommand = "callbackMsgModifyCommand" CallbackMsgModifyCommand = "callbackMsgModifyCommand"
CallbackUserOnlineCommand = "callbackUserOnlineCommand" CallbackUserOnlineCommand = "callbackUserOnlineCommand"
CallbackUserOfflineCommand = "callbackUserOfflineCommand" CallbackUserOfflineCommand = "callbackUserOfflineCommand"

View File

@ -38,7 +38,7 @@ func (m *MsgDataToMQ) Reset() { *m = MsgDataToMQ{} }
func (m *MsgDataToMQ) String() string { return proto.CompactTextString(m) } func (m *MsgDataToMQ) String() string { return proto.CompactTextString(m) }
func (*MsgDataToMQ) ProtoMessage() {} func (*MsgDataToMQ) ProtoMessage() {}
func (*MsgDataToMQ) Descriptor() ([]byte, []int) { func (*MsgDataToMQ) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{0} return fileDescriptor_msg_de22c4c4e5c699f1, []int{0}
} }
func (m *MsgDataToMQ) XXX_Unmarshal(b []byte) error { func (m *MsgDataToMQ) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgDataToMQ.Unmarshal(m, b) return xxx_messageInfo_MsgDataToMQ.Unmarshal(m, b)
@ -91,7 +91,7 @@ func (m *MsgDataToDB) Reset() { *m = MsgDataToDB{} }
func (m *MsgDataToDB) String() string { return proto.CompactTextString(m) } func (m *MsgDataToDB) String() string { return proto.CompactTextString(m) }
func (*MsgDataToDB) ProtoMessage() {} func (*MsgDataToDB) ProtoMessage() {}
func (*MsgDataToDB) Descriptor() ([]byte, []int) { func (*MsgDataToDB) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{1} return fileDescriptor_msg_de22c4c4e5c699f1, []int{1}
} }
func (m *MsgDataToDB) XXX_Unmarshal(b []byte) error { func (m *MsgDataToDB) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgDataToDB.Unmarshal(m, b) return xxx_messageInfo_MsgDataToDB.Unmarshal(m, b)
@ -138,7 +138,7 @@ func (m *PushMsgDataToMQ) Reset() { *m = PushMsgDataToMQ{} }
func (m *PushMsgDataToMQ) String() string { return proto.CompactTextString(m) } func (m *PushMsgDataToMQ) String() string { return proto.CompactTextString(m) }
func (*PushMsgDataToMQ) ProtoMessage() {} func (*PushMsgDataToMQ) ProtoMessage() {}
func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) { func (*PushMsgDataToMQ) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{2} return fileDescriptor_msg_de22c4c4e5c699f1, []int{2}
} }
func (m *PushMsgDataToMQ) XXX_Unmarshal(b []byte) error { func (m *PushMsgDataToMQ) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PushMsgDataToMQ.Unmarshal(m, b) return xxx_messageInfo_PushMsgDataToMQ.Unmarshal(m, b)
@ -193,7 +193,7 @@ func (m *MsgDataToMongoByMQ) Reset() { *m = MsgDataToMongoByMQ{} }
func (m *MsgDataToMongoByMQ) String() string { return proto.CompactTextString(m) } func (m *MsgDataToMongoByMQ) String() string { return proto.CompactTextString(m) }
func (*MsgDataToMongoByMQ) ProtoMessage() {} func (*MsgDataToMongoByMQ) ProtoMessage() {}
func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) { func (*MsgDataToMongoByMQ) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{3} return fileDescriptor_msg_de22c4c4e5c699f1, []int{3}
} }
func (m *MsgDataToMongoByMQ) XXX_Unmarshal(b []byte) error { func (m *MsgDataToMongoByMQ) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgDataToMongoByMQ.Unmarshal(m, b) return xxx_messageInfo_MsgDataToMongoByMQ.Unmarshal(m, b)
@ -256,6 +256,7 @@ func (m *MsgDataToMongoByMQ) GetTriggerID() string {
// repeated GatherFormat SingleUserMsg = 5; // repeated GatherFormat SingleUserMsg = 5;
// repeated GatherFormat GroupUserMsg = 6; // repeated GatherFormat GroupUserMsg = 6;
// } // }
//
// message PullMessageBySeqListReq{ // message PullMessageBySeqListReq{
// string UserID = 1; // string UserID = 1;
// string OperationID = 2; // string OperationID = 2;
@ -273,7 +274,7 @@ func (m *GetMaxAndMinSeqReq) Reset() { *m = GetMaxAndMinSeqReq{} }
func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) } func (m *GetMaxAndMinSeqReq) String() string { return proto.CompactTextString(m) }
func (*GetMaxAndMinSeqReq) ProtoMessage() {} func (*GetMaxAndMinSeqReq) ProtoMessage() {}
func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) { func (*GetMaxAndMinSeqReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{4} return fileDescriptor_msg_de22c4c4e5c699f1, []int{4}
} }
func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error { func (m *GetMaxAndMinSeqReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b) return xxx_messageInfo_GetMaxAndMinSeqReq.Unmarshal(m, b)
@ -321,7 +322,7 @@ func (m *GetMaxAndMinSeqResp) Reset() { *m = GetMaxAndMinSeqResp{} }
func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) } func (m *GetMaxAndMinSeqResp) String() string { return proto.CompactTextString(m) }
func (*GetMaxAndMinSeqResp) ProtoMessage() {} func (*GetMaxAndMinSeqResp) ProtoMessage() {}
func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) { func (*GetMaxAndMinSeqResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{5} return fileDescriptor_msg_de22c4c4e5c699f1, []int{5}
} }
func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error { func (m *GetMaxAndMinSeqResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b) return xxx_messageInfo_GetMaxAndMinSeqResp.Unmarshal(m, b)
@ -382,7 +383,7 @@ func (m *SendMsgReq) Reset() { *m = SendMsgReq{} }
func (m *SendMsgReq) String() string { return proto.CompactTextString(m) } func (m *SendMsgReq) String() string { return proto.CompactTextString(m) }
func (*SendMsgReq) ProtoMessage() {} func (*SendMsgReq) ProtoMessage() {}
func (*SendMsgReq) Descriptor() ([]byte, []int) { func (*SendMsgReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{6} return fileDescriptor_msg_de22c4c4e5c699f1, []int{6}
} }
func (m *SendMsgReq) XXX_Unmarshal(b []byte) error { func (m *SendMsgReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendMsgReq.Unmarshal(m, b) return xxx_messageInfo_SendMsgReq.Unmarshal(m, b)
@ -438,7 +439,7 @@ func (m *SendMsgResp) Reset() { *m = SendMsgResp{} }
func (m *SendMsgResp) String() string { return proto.CompactTextString(m) } func (m *SendMsgResp) String() string { return proto.CompactTextString(m) }
func (*SendMsgResp) ProtoMessage() {} func (*SendMsgResp) ProtoMessage() {}
func (*SendMsgResp) Descriptor() ([]byte, []int) { func (*SendMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{7} return fileDescriptor_msg_de22c4c4e5c699f1, []int{7}
} }
func (m *SendMsgResp) XXX_Unmarshal(b []byte) error { func (m *SendMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendMsgResp.Unmarshal(m, b) return xxx_messageInfo_SendMsgResp.Unmarshal(m, b)
@ -506,7 +507,7 @@ func (m *ClearMsgReq) Reset() { *m = ClearMsgReq{} }
func (m *ClearMsgReq) String() string { return proto.CompactTextString(m) } func (m *ClearMsgReq) String() string { return proto.CompactTextString(m) }
func (*ClearMsgReq) ProtoMessage() {} func (*ClearMsgReq) ProtoMessage() {}
func (*ClearMsgReq) Descriptor() ([]byte, []int) { func (*ClearMsgReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{8} return fileDescriptor_msg_de22c4c4e5c699f1, []int{8}
} }
func (m *ClearMsgReq) XXX_Unmarshal(b []byte) error { func (m *ClearMsgReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ClearMsgReq.Unmarshal(m, b) return xxx_messageInfo_ClearMsgReq.Unmarshal(m, b)
@ -559,7 +560,7 @@ func (m *ClearMsgResp) Reset() { *m = ClearMsgResp{} }
func (m *ClearMsgResp) String() string { return proto.CompactTextString(m) } func (m *ClearMsgResp) String() string { return proto.CompactTextString(m) }
func (*ClearMsgResp) ProtoMessage() {} func (*ClearMsgResp) ProtoMessage() {}
func (*ClearMsgResp) Descriptor() ([]byte, []int) { func (*ClearMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{9} return fileDescriptor_msg_de22c4c4e5c699f1, []int{9}
} }
func (m *ClearMsgResp) XXX_Unmarshal(b []byte) error { func (m *ClearMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ClearMsgResp.Unmarshal(m, b) return xxx_messageInfo_ClearMsgResp.Unmarshal(m, b)
@ -608,7 +609,7 @@ func (m *SetMsgMinSeqReq) Reset() { *m = SetMsgMinSeqReq{} }
func (m *SetMsgMinSeqReq) String() string { return proto.CompactTextString(m) } func (m *SetMsgMinSeqReq) String() string { return proto.CompactTextString(m) }
func (*SetMsgMinSeqReq) ProtoMessage() {} func (*SetMsgMinSeqReq) ProtoMessage() {}
func (*SetMsgMinSeqReq) Descriptor() ([]byte, []int) { func (*SetMsgMinSeqReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{10} return fileDescriptor_msg_de22c4c4e5c699f1, []int{10}
} }
func (m *SetMsgMinSeqReq) XXX_Unmarshal(b []byte) error { func (m *SetMsgMinSeqReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetMsgMinSeqReq.Unmarshal(m, b) return xxx_messageInfo_SetMsgMinSeqReq.Unmarshal(m, b)
@ -675,7 +676,7 @@ func (m *SetMsgMinSeqResp) Reset() { *m = SetMsgMinSeqResp{} }
func (m *SetMsgMinSeqResp) String() string { return proto.CompactTextString(m) } func (m *SetMsgMinSeqResp) String() string { return proto.CompactTextString(m) }
func (*SetMsgMinSeqResp) ProtoMessage() {} func (*SetMsgMinSeqResp) ProtoMessage() {}
func (*SetMsgMinSeqResp) Descriptor() ([]byte, []int) { func (*SetMsgMinSeqResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{11} return fileDescriptor_msg_de22c4c4e5c699f1, []int{11}
} }
func (m *SetMsgMinSeqResp) XXX_Unmarshal(b []byte) error { func (m *SetMsgMinSeqResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetMsgMinSeqResp.Unmarshal(m, b) return xxx_messageInfo_SetMsgMinSeqResp.Unmarshal(m, b)
@ -721,7 +722,7 @@ func (m *SetSendMsgStatusReq) Reset() { *m = SetSendMsgStatusReq{} }
func (m *SetSendMsgStatusReq) String() string { return proto.CompactTextString(m) } func (m *SetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
func (*SetSendMsgStatusReq) ProtoMessage() {} func (*SetSendMsgStatusReq) ProtoMessage() {}
func (*SetSendMsgStatusReq) Descriptor() ([]byte, []int) { func (*SetSendMsgStatusReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{12} return fileDescriptor_msg_de22c4c4e5c699f1, []int{12}
} }
func (m *SetSendMsgStatusReq) XXX_Unmarshal(b []byte) error { func (m *SetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetSendMsgStatusReq.Unmarshal(m, b) return xxx_messageInfo_SetSendMsgStatusReq.Unmarshal(m, b)
@ -767,7 +768,7 @@ func (m *SetSendMsgStatusResp) Reset() { *m = SetSendMsgStatusResp{} }
func (m *SetSendMsgStatusResp) String() string { return proto.CompactTextString(m) } func (m *SetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
func (*SetSendMsgStatusResp) ProtoMessage() {} func (*SetSendMsgStatusResp) ProtoMessage() {}
func (*SetSendMsgStatusResp) Descriptor() ([]byte, []int) { func (*SetSendMsgStatusResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{13} return fileDescriptor_msg_de22c4c4e5c699f1, []int{13}
} }
func (m *SetSendMsgStatusResp) XXX_Unmarshal(b []byte) error { func (m *SetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetSendMsgStatusResp.Unmarshal(m, b) return xxx_messageInfo_SetSendMsgStatusResp.Unmarshal(m, b)
@ -812,7 +813,7 @@ func (m *GetSendMsgStatusReq) Reset() { *m = GetSendMsgStatusReq{} }
func (m *GetSendMsgStatusReq) String() string { return proto.CompactTextString(m) } func (m *GetSendMsgStatusReq) String() string { return proto.CompactTextString(m) }
func (*GetSendMsgStatusReq) ProtoMessage() {} func (*GetSendMsgStatusReq) ProtoMessage() {}
func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) { func (*GetSendMsgStatusReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{14} return fileDescriptor_msg_de22c4c4e5c699f1, []int{14}
} }
func (m *GetSendMsgStatusReq) XXX_Unmarshal(b []byte) error { func (m *GetSendMsgStatusReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSendMsgStatusReq.Unmarshal(m, b) return xxx_messageInfo_GetSendMsgStatusReq.Unmarshal(m, b)
@ -852,7 +853,7 @@ func (m *GetSendMsgStatusResp) Reset() { *m = GetSendMsgStatusResp{} }
func (m *GetSendMsgStatusResp) String() string { return proto.CompactTextString(m) } func (m *GetSendMsgStatusResp) String() string { return proto.CompactTextString(m) }
func (*GetSendMsgStatusResp) ProtoMessage() {} func (*GetSendMsgStatusResp) ProtoMessage() {}
func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) { func (*GetSendMsgStatusResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{15} return fileDescriptor_msg_de22c4c4e5c699f1, []int{15}
} }
func (m *GetSendMsgStatusResp) XXX_Unmarshal(b []byte) error { func (m *GetSendMsgStatusResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSendMsgStatusResp.Unmarshal(m, b) return xxx_messageInfo_GetSendMsgStatusResp.Unmarshal(m, b)
@ -907,7 +908,7 @@ func (m *DelSuperGroupMsgReq) Reset() { *m = DelSuperGroupMsgReq{} }
func (m *DelSuperGroupMsgReq) String() string { return proto.CompactTextString(m) } func (m *DelSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
func (*DelSuperGroupMsgReq) ProtoMessage() {} func (*DelSuperGroupMsgReq) ProtoMessage() {}
func (*DelSuperGroupMsgReq) Descriptor() ([]byte, []int) { func (*DelSuperGroupMsgReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{16} return fileDescriptor_msg_de22c4c4e5c699f1, []int{16}
} }
func (m *DelSuperGroupMsgReq) XXX_Unmarshal(b []byte) error { func (m *DelSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DelSuperGroupMsgReq.Unmarshal(m, b) return xxx_messageInfo_DelSuperGroupMsgReq.Unmarshal(m, b)
@ -967,7 +968,7 @@ func (m *DelSuperGroupMsgResp) Reset() { *m = DelSuperGroupMsgResp{} }
func (m *DelSuperGroupMsgResp) String() string { return proto.CompactTextString(m) } func (m *DelSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
func (*DelSuperGroupMsgResp) ProtoMessage() {} func (*DelSuperGroupMsgResp) ProtoMessage() {}
func (*DelSuperGroupMsgResp) Descriptor() ([]byte, []int) { func (*DelSuperGroupMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{17} return fileDescriptor_msg_de22c4c4e5c699f1, []int{17}
} }
func (m *DelSuperGroupMsgResp) XXX_Unmarshal(b []byte) error { func (m *DelSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DelSuperGroupMsgResp.Unmarshal(m, b) return xxx_messageInfo_DelSuperGroupMsgResp.Unmarshal(m, b)
@ -1014,7 +1015,7 @@ func (m *GetSuperGroupMsgReq) Reset() { *m = GetSuperGroupMsgReq{} }
func (m *GetSuperGroupMsgReq) String() string { return proto.CompactTextString(m) } func (m *GetSuperGroupMsgReq) String() string { return proto.CompactTextString(m) }
func (*GetSuperGroupMsgReq) ProtoMessage() {} func (*GetSuperGroupMsgReq) ProtoMessage() {}
func (*GetSuperGroupMsgReq) Descriptor() ([]byte, []int) { func (*GetSuperGroupMsgReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{18} return fileDescriptor_msg_de22c4c4e5c699f1, []int{18}
} }
func (m *GetSuperGroupMsgReq) XXX_Unmarshal(b []byte) error { func (m *GetSuperGroupMsgReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSuperGroupMsgReq.Unmarshal(m, b) return xxx_messageInfo_GetSuperGroupMsgReq.Unmarshal(m, b)
@ -1068,7 +1069,7 @@ func (m *GetSuperGroupMsgResp) Reset() { *m = GetSuperGroupMsgResp{} }
func (m *GetSuperGroupMsgResp) String() string { return proto.CompactTextString(m) } func (m *GetSuperGroupMsgResp) String() string { return proto.CompactTextString(m) }
func (*GetSuperGroupMsgResp) ProtoMessage() {} func (*GetSuperGroupMsgResp) ProtoMessage() {}
func (*GetSuperGroupMsgResp) Descriptor() ([]byte, []int) { func (*GetSuperGroupMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{19} return fileDescriptor_msg_de22c4c4e5c699f1, []int{19}
} }
func (m *GetSuperGroupMsgResp) XXX_Unmarshal(b []byte) error { func (m *GetSuperGroupMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSuperGroupMsgResp.Unmarshal(m, b) return xxx_messageInfo_GetSuperGroupMsgResp.Unmarshal(m, b)
@ -1121,7 +1122,7 @@ func (m *GetWriteDiffMsgReq) Reset() { *m = GetWriteDiffMsgReq{} }
func (m *GetWriteDiffMsgReq) String() string { return proto.CompactTextString(m) } func (m *GetWriteDiffMsgReq) String() string { return proto.CompactTextString(m) }
func (*GetWriteDiffMsgReq) ProtoMessage() {} func (*GetWriteDiffMsgReq) ProtoMessage() {}
func (*GetWriteDiffMsgReq) Descriptor() ([]byte, []int) { func (*GetWriteDiffMsgReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{20} return fileDescriptor_msg_de22c4c4e5c699f1, []int{20}
} }
func (m *GetWriteDiffMsgReq) XXX_Unmarshal(b []byte) error { func (m *GetWriteDiffMsgReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetWriteDiffMsgReq.Unmarshal(m, b) return xxx_messageInfo_GetWriteDiffMsgReq.Unmarshal(m, b)
@ -1168,7 +1169,7 @@ func (m *GetWriteDiffMsgResp) Reset() { *m = GetWriteDiffMsgResp{} }
func (m *GetWriteDiffMsgResp) String() string { return proto.CompactTextString(m) } func (m *GetWriteDiffMsgResp) String() string { return proto.CompactTextString(m) }
func (*GetWriteDiffMsgResp) ProtoMessage() {} func (*GetWriteDiffMsgResp) ProtoMessage() {}
func (*GetWriteDiffMsgResp) Descriptor() ([]byte, []int) { func (*GetWriteDiffMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{21} return fileDescriptor_msg_de22c4c4e5c699f1, []int{21}
} }
func (m *GetWriteDiffMsgResp) XXX_Unmarshal(b []byte) error { func (m *GetWriteDiffMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetWriteDiffMsgResp.Unmarshal(m, b) return xxx_messageInfo_GetWriteDiffMsgResp.Unmarshal(m, b)
@ -1230,7 +1231,7 @@ func (m *ModifyMessageReactionExtensionsReq) Reset() { *m = ModifyMessag
func (m *ModifyMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) } func (m *ModifyMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
func (*ModifyMessageReactionExtensionsReq) ProtoMessage() {} func (*ModifyMessageReactionExtensionsReq) ProtoMessage() {}
func (*ModifyMessageReactionExtensionsReq) Descriptor() ([]byte, []int) { func (*ModifyMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{22} return fileDescriptor_msg_de22c4c4e5c699f1, []int{22}
} }
func (m *ModifyMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error { func (m *ModifyMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ModifyMessageReactionExtensionsReq.Unmarshal(m, b) return xxx_messageInfo_ModifyMessageReactionExtensionsReq.Unmarshal(m, b)
@ -1349,7 +1350,7 @@ func (m *SetMessageReactionExtensionsReq) Reset() { *m = SetMessageReact
func (m *SetMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) } func (m *SetMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
func (*SetMessageReactionExtensionsReq) ProtoMessage() {} func (*SetMessageReactionExtensionsReq) ProtoMessage() {}
func (*SetMessageReactionExtensionsReq) Descriptor() ([]byte, []int) { func (*SetMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{23} return fileDescriptor_msg_de22c4c4e5c699f1, []int{23}
} }
func (m *SetMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error { func (m *SetMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetMessageReactionExtensionsReq.Unmarshal(m, b) return xxx_messageInfo_SetMessageReactionExtensionsReq.Unmarshal(m, b)
@ -1469,7 +1470,7 @@ func (m *SetMessageReactionExtensionsResp) Reset() { *m = SetMessageReac
func (m *SetMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) } func (m *SetMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
func (*SetMessageReactionExtensionsResp) ProtoMessage() {} func (*SetMessageReactionExtensionsResp) ProtoMessage() {}
func (*SetMessageReactionExtensionsResp) Descriptor() ([]byte, []int) { func (*SetMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{24} return fileDescriptor_msg_de22c4c4e5c699f1, []int{24}
} }
func (m *SetMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error { func (m *SetMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetMessageReactionExtensionsResp.Unmarshal(m, b) return xxx_messageInfo_SetMessageReactionExtensionsResp.Unmarshal(m, b)
@ -1544,6 +1545,7 @@ type AddMessageReactionExtensionsReq struct {
IsReact bool `protobuf:"varint,10,opt,name=isReact" json:"isReact,omitempty"` IsReact bool `protobuf:"varint,10,opt,name=isReact" json:"isReact,omitempty"`
IsExternalExtensions bool `protobuf:"varint,11,opt,name=isExternalExtensions" json:"isExternalExtensions,omitempty"` IsExternalExtensions bool `protobuf:"varint,11,opt,name=isExternalExtensions" json:"isExternalExtensions,omitempty"`
MsgFirstModifyTime int64 `protobuf:"varint,12,opt,name=msgFirstModifyTime" json:"msgFirstModifyTime,omitempty"` MsgFirstModifyTime int64 `protobuf:"varint,12,opt,name=msgFirstModifyTime" json:"msgFirstModifyTime,omitempty"`
Seq uint32 `protobuf:"varint,13,opt,name=seq" json:"seq,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:"-"`
@ -1553,7 +1555,7 @@ func (m *AddMessageReactionExtensionsReq) Reset() { *m = AddMessageReact
func (m *AddMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) } func (m *AddMessageReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
func (*AddMessageReactionExtensionsReq) ProtoMessage() {} func (*AddMessageReactionExtensionsReq) ProtoMessage() {}
func (*AddMessageReactionExtensionsReq) Descriptor() ([]byte, []int) { func (*AddMessageReactionExtensionsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{25} return fileDescriptor_msg_de22c4c4e5c699f1, []int{25}
} }
func (m *AddMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error { func (m *AddMessageReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddMessageReactionExtensionsReq.Unmarshal(m, b) return xxx_messageInfo_AddMessageReactionExtensionsReq.Unmarshal(m, b)
@ -1657,6 +1659,13 @@ func (m *AddMessageReactionExtensionsReq) GetMsgFirstModifyTime() int64 {
return 0 return 0
} }
func (m *AddMessageReactionExtensionsReq) GetSeq() uint32 {
if m != nil {
return m.Seq
}
return 0
}
type AddMessageReactionExtensionsResp struct { type AddMessageReactionExtensionsResp struct {
ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"` ErrCode int32 `protobuf:"varint,1,opt,name=errCode" json:"errCode,omitempty"`
ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"` ErrMsg string `protobuf:"bytes,2,opt,name=errMsg" json:"errMsg,omitempty"`
@ -1673,7 +1682,7 @@ func (m *AddMessageReactionExtensionsResp) Reset() { *m = AddMessageReac
func (m *AddMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) } func (m *AddMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
func (*AddMessageReactionExtensionsResp) ProtoMessage() {} func (*AddMessageReactionExtensionsResp) ProtoMessage() {}
func (*AddMessageReactionExtensionsResp) Descriptor() ([]byte, []int) { func (*AddMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{26} return fileDescriptor_msg_de22c4c4e5c699f1, []int{26}
} }
func (m *AddMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error { func (m *AddMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddMessageReactionExtensionsResp.Unmarshal(m, b) return xxx_messageInfo_AddMessageReactionExtensionsResp.Unmarshal(m, b)
@ -1752,7 +1761,7 @@ func (m *GetMessageListReactionExtensionsReq) Reset() { *m = GetMessageL
func (m *GetMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) } func (m *GetMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
func (*GetMessageListReactionExtensionsReq) ProtoMessage() {} func (*GetMessageListReactionExtensionsReq) ProtoMessage() {}
func (*GetMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) { func (*GetMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{27} return fileDescriptor_msg_de22c4c4e5c699f1, []int{27}
} }
func (m *GetMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error { func (m *GetMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetMessageListReactionExtensionsReq.Unmarshal(m, b) return xxx_messageInfo_GetMessageListReactionExtensionsReq.Unmarshal(m, b)
@ -1837,7 +1846,7 @@ func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) String() string
} }
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) ProtoMessage() {} func (*GetMessageListReactionExtensionsReq_MessageReactionKey) ProtoMessage() {}
func (*GetMessageListReactionExtensionsReq_MessageReactionKey) Descriptor() ([]byte, []int) { func (*GetMessageListReactionExtensionsReq_MessageReactionKey) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{27, 0} return fileDescriptor_msg_de22c4c4e5c699f1, []int{27, 0}
} }
func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) XXX_Unmarshal(b []byte) error { func (m *GetMessageListReactionExtensionsReq_MessageReactionKey) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetMessageListReactionExtensionsReq_MessageReactionKey.Unmarshal(m, b) return xxx_messageInfo_GetMessageListReactionExtensionsReq_MessageReactionKey.Unmarshal(m, b)
@ -1884,7 +1893,7 @@ func (m *GetMessageListReactionExtensionsResp) Reset() { *m = GetMessage
func (m *GetMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) } func (m *GetMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
func (*GetMessageListReactionExtensionsResp) ProtoMessage() {} func (*GetMessageListReactionExtensionsResp) ProtoMessage() {}
func (*GetMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) { func (*GetMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{28} return fileDescriptor_msg_de22c4c4e5c699f1, []int{28}
} }
func (m *GetMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error { func (m *GetMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetMessageListReactionExtensionsResp.Unmarshal(m, b) return xxx_messageInfo_GetMessageListReactionExtensionsResp.Unmarshal(m, b)
@ -1939,7 +1948,7 @@ func (m *SingleMessageExtensionResult) Reset() { *m = SingleMessageExten
func (m *SingleMessageExtensionResult) String() string { return proto.CompactTextString(m) } func (m *SingleMessageExtensionResult) String() string { return proto.CompactTextString(m) }
func (*SingleMessageExtensionResult) ProtoMessage() {} func (*SingleMessageExtensionResult) ProtoMessage() {}
func (*SingleMessageExtensionResult) Descriptor() ([]byte, []int) { func (*SingleMessageExtensionResult) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{29} return fileDescriptor_msg_de22c4c4e5c699f1, []int{29}
} }
func (m *SingleMessageExtensionResult) XXX_Unmarshal(b []byte) error { func (m *SingleMessageExtensionResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SingleMessageExtensionResult.Unmarshal(m, b) return xxx_messageInfo_SingleMessageExtensionResult.Unmarshal(m, b)
@ -2001,7 +2010,7 @@ func (m *ModifyMessageReactionExtensionsResp) Reset() { *m = ModifyMessa
func (m *ModifyMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) } func (m *ModifyMessageReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
func (*ModifyMessageReactionExtensionsResp) ProtoMessage() {} func (*ModifyMessageReactionExtensionsResp) ProtoMessage() {}
func (*ModifyMessageReactionExtensionsResp) Descriptor() ([]byte, []int) { func (*ModifyMessageReactionExtensionsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{30} return fileDescriptor_msg_de22c4c4e5c699f1, []int{30}
} }
func (m *ModifyMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error { func (m *ModifyMessageReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ModifyMessageReactionExtensionsResp.Unmarshal(m, b) return xxx_messageInfo_ModifyMessageReactionExtensionsResp.Unmarshal(m, b)
@ -2070,7 +2079,7 @@ func (m *DeleteMessageListReactionExtensionsReq) Reset() {
func (m *DeleteMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) } func (m *DeleteMessageListReactionExtensionsReq) String() string { return proto.CompactTextString(m) }
func (*DeleteMessageListReactionExtensionsReq) ProtoMessage() {} func (*DeleteMessageListReactionExtensionsReq) ProtoMessage() {}
func (*DeleteMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) { func (*DeleteMessageListReactionExtensionsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{31} return fileDescriptor_msg_de22c4c4e5c699f1, []int{31}
} }
func (m *DeleteMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error { func (m *DeleteMessageListReactionExtensionsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteMessageListReactionExtensionsReq.Unmarshal(m, b) return xxx_messageInfo_DeleteMessageListReactionExtensionsReq.Unmarshal(m, b)
@ -2168,7 +2177,7 @@ func (m *DeleteMessageListReactionExtensionsResp) Reset() {
func (m *DeleteMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) } func (m *DeleteMessageListReactionExtensionsResp) String() string { return proto.CompactTextString(m) }
func (*DeleteMessageListReactionExtensionsResp) ProtoMessage() {} func (*DeleteMessageListReactionExtensionsResp) ProtoMessage() {}
func (*DeleteMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) { func (*DeleteMessageListReactionExtensionsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{32} return fileDescriptor_msg_de22c4c4e5c699f1, []int{32}
} }
func (m *DeleteMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error { func (m *DeleteMessageListReactionExtensionsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteMessageListReactionExtensionsResp.Unmarshal(m, b) return xxx_messageInfo_DeleteMessageListReactionExtensionsResp.Unmarshal(m, b)
@ -2222,7 +2231,7 @@ func (m *ExtendMsgResp) Reset() { *m = ExtendMsgResp{} }
func (m *ExtendMsgResp) String() string { return proto.CompactTextString(m) } func (m *ExtendMsgResp) String() string { return proto.CompactTextString(m) }
func (*ExtendMsgResp) ProtoMessage() {} func (*ExtendMsgResp) ProtoMessage() {}
func (*ExtendMsgResp) Descriptor() ([]byte, []int) { func (*ExtendMsgResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{33} return fileDescriptor_msg_de22c4c4e5c699f1, []int{33}
} }
func (m *ExtendMsgResp) XXX_Unmarshal(b []byte) error { func (m *ExtendMsgResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtendMsgResp.Unmarshal(m, b) return xxx_messageInfo_ExtendMsgResp.Unmarshal(m, b)
@ -2278,7 +2287,7 @@ func (m *ExtendMsg) Reset() { *m = ExtendMsg{} }
func (m *ExtendMsg) String() string { return proto.CompactTextString(m) } func (m *ExtendMsg) String() string { return proto.CompactTextString(m) }
func (*ExtendMsg) ProtoMessage() {} func (*ExtendMsg) ProtoMessage() {}
func (*ExtendMsg) Descriptor() ([]byte, []int) { func (*ExtendMsg) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{34} return fileDescriptor_msg_de22c4c4e5c699f1, []int{34}
} }
func (m *ExtendMsg) XXX_Unmarshal(b []byte) error { func (m *ExtendMsg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ExtendMsg.Unmarshal(m, b) return xxx_messageInfo_ExtendMsg.Unmarshal(m, b)
@ -2346,7 +2355,7 @@ func (m *KeyValueResp) Reset() { *m = KeyValueResp{} }
func (m *KeyValueResp) String() string { return proto.CompactTextString(m) } func (m *KeyValueResp) String() string { return proto.CompactTextString(m) }
func (*KeyValueResp) ProtoMessage() {} func (*KeyValueResp) ProtoMessage() {}
func (*KeyValueResp) Descriptor() ([]byte, []int) { func (*KeyValueResp) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{35} return fileDescriptor_msg_de22c4c4e5c699f1, []int{35}
} }
func (m *KeyValueResp) XXX_Unmarshal(b []byte) error { func (m *KeyValueResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_KeyValueResp.Unmarshal(m, b) return xxx_messageInfo_KeyValueResp.Unmarshal(m, b)
@ -2400,7 +2409,7 @@ func (m *MsgDataToModifyByMQ) Reset() { *m = MsgDataToModifyByMQ{} }
func (m *MsgDataToModifyByMQ) String() string { return proto.CompactTextString(m) } func (m *MsgDataToModifyByMQ) String() string { return proto.CompactTextString(m) }
func (*MsgDataToModifyByMQ) ProtoMessage() {} func (*MsgDataToModifyByMQ) ProtoMessage() {}
func (*MsgDataToModifyByMQ) Descriptor() ([]byte, []int) { func (*MsgDataToModifyByMQ) Descriptor() ([]byte, []int) {
return fileDescriptor_msg_96239333e69eba2c, []int{36} return fileDescriptor_msg_de22c4c4e5c699f1, []int{36}
} }
func (m *MsgDataToModifyByMQ) XXX_Unmarshal(b []byte) error { func (m *MsgDataToModifyByMQ) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MsgDataToModifyByMQ.Unmarshal(m, b) return xxx_messageInfo_MsgDataToModifyByMQ.Unmarshal(m, b)
@ -3023,119 +3032,120 @@ var _Msg_serviceDesc = grpc.ServiceDesc{
Metadata: "msg/msg.proto", Metadata: "msg/msg.proto",
} }
func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_96239333e69eba2c) } func init() { proto.RegisterFile("msg/msg.proto", fileDescriptor_msg_de22c4c4e5c699f1) }
var fileDescriptor_msg_96239333e69eba2c = []byte{ var fileDescriptor_msg_de22c4c4e5c699f1 = []byte{
// 1761 bytes of a gzipped FileDescriptorProto // 1780 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0xcb, 0x6e, 0xdb, 0x46, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x5a, 0x4f, 0x6f, 0xdb, 0xc8,
0x17, 0x06, 0x45, 0x4b, 0xb2, 0x8e, 0xec, 0xd8, 0x19, 0x3b, 0xfe, 0x15, 0xc6, 0x40, 0x14, 0xe6, 0x15, 0x07, 0x45, 0x4b, 0xb2, 0x9e, 0xec, 0xd8, 0x19, 0x3b, 0xae, 0xc2, 0x18, 0x88, 0xc2, 0xfc,
0xe6, 0xfc, 0x49, 0x64, 0xfc, 0xfe, 0x0b, 0xa4, 0x68, 0x0a, 0x34, 0x71, 0xe4, 0x2a, 0x46, 0xaa, 0x73, 0x9a, 0x44, 0x46, 0xdd, 0x02, 0x29, 0x9a, 0x02, 0x4d, 0x1c, 0xb9, 0x8a, 0x91, 0xaa, 0x8e,
0x3a, 0xa6, 0xdc, 0x16, 0x68, 0x17, 0x0e, 0x23, 0x8d, 0x18, 0xc2, 0x12, 0x49, 0x73, 0xa8, 0xd8, 0x29, 0xb7, 0x05, 0xda, 0x83, 0xc3, 0x48, 0x23, 0x86, 0xb0, 0x44, 0xd2, 0x1c, 0x2a, 0xb6, 0xfa,
0xea, 0x6d, 0x51, 0xa0, 0xdd, 0x65, 0xd1, 0x65, 0x57, 0xdd, 0x75, 0x97, 0x27, 0xe8, 0xaa, 0x0f, 0xef, 0x50, 0xa0, 0x7b, 0xcb, 0x61, 0x8f, 0x7b, 0xda, 0xdb, 0xde, 0xf2, 0x09, 0xf6, 0xb4, 0x1f,
0x50, 0x74, 0xd3, 0xb7, 0xe8, 0x4b, 0x14, 0x9c, 0x21, 0xa5, 0xe1, 0x4d, 0xa4, 0xe5, 0x20, 0x41, 0x20, 0xd8, 0xcb, 0x7e, 0x8b, 0xfd, 0x12, 0x8b, 0x99, 0xa1, 0xa4, 0xe1, 0x3f, 0x91, 0x96, 0x03,
0x2f, 0x3b, 0x9d, 0x99, 0x33, 0x67, 0xce, 0x77, 0xce, 0x37, 0x17, 0xce, 0x11, 0xcc, 0xf7, 0x89, 0x07, 0xd8, 0xdd, 0x9b, 0x66, 0xe6, 0xcd, 0x9b, 0xf7, 0x7b, 0xef, 0xf7, 0x66, 0x86, 0xf3, 0x04,
0xb6, 0xde, 0x27, 0x5a, 0xcd, 0xb2, 0x4d, 0xc7, 0x44, 0x62, 0x9f, 0x68, 0xd2, 0xda, 0x8e, 0x85, 0x8b, 0x7d, 0x62, 0x6c, 0xf6, 0x89, 0x51, 0x73, 0x5c, 0xdb, 0xb3, 0x91, 0xdc, 0x27, 0x86, 0xb2,
0x8d, 0xdb, 0xdb, 0xcd, 0xdb, 0x2d, 0x6c, 0x3f, 0xc7, 0xf6, 0xba, 0x75, 0xa0, 0xad, 0xd3, 0xee, 0xb1, 0xe7, 0x60, 0xeb, 0xe1, 0x6e, 0xf3, 0x61, 0x0b, 0xbb, 0x6f, 0xb1, 0xbb, 0xe9, 0x1c, 0x19,
0x75, 0xd2, 0x39, 0xd8, 0x3f, 0x22, 0xeb, 0x47, 0x84, 0xa9, 0x4b, 0xb5, 0x54, 0x4d, 0x5b, 0xb5, 0x9b, 0x6c, 0x78, 0x93, 0x74, 0x8e, 0x0e, 0x4f, 0xc8, 0xe6, 0x09, 0xe1, 0xe2, 0x4a, 0x2d, 0x55,
0x2c, 0x6c, 0x7b, 0xfa, 0xf2, 0x17, 0x50, 0x6e, 0x12, 0xad, 0xae, 0x3a, 0xea, 0x9e, 0xd9, 0xdc, 0xd2, 0xd5, 0x1d, 0x07, 0xbb, 0xbe, 0xbc, 0xfa, 0x2f, 0x28, 0x37, 0x89, 0x51, 0xd7, 0x3d, 0xfd,
0x45, 0xcb, 0x90, 0x77, 0xcc, 0x03, 0x6c, 0x54, 0x84, 0xaa, 0xb0, 0x56, 0x52, 0x98, 0x80, 0xaa, 0xc0, 0x6e, 0xee, 0xa3, 0x55, 0xc8, 0x7b, 0xf6, 0x11, 0xb6, 0x2a, 0x52, 0x55, 0xda, 0x28, 0x69,
0x50, 0x36, 0x2d, 0x6c, 0xab, 0x8e, 0x6e, 0x1a, 0xdb, 0xf5, 0x4a, 0x8e, 0xf6, 0xf1, 0x4d, 0xe8, 0xbc, 0x81, 0xaa, 0x50, 0xb6, 0x1d, 0xec, 0xea, 0x9e, 0x69, 0x5b, 0xbb, 0xf5, 0x4a, 0x8e, 0x8d,
0x2d, 0x28, 0xf6, 0x99, 0x99, 0x8a, 0x58, 0x15, 0xd6, 0xca, 0x1b, 0x52, 0x8d, 0x50, 0x07, 0xf6, 0x89, 0x5d, 0xe8, 0x37, 0x50, 0xec, 0x73, 0x35, 0x15, 0xb9, 0x2a, 0x6d, 0x94, 0xb7, 0x94, 0x1a,
0x55, 0x4b, 0xdf, 0xb7, 0x54, 0x5b, 0xed, 0x93, 0x9a, 0x37, 0x91, 0xe2, 0xab, 0xca, 0x98, 0x9b, 0x61, 0x06, 0x1c, 0xea, 0x8e, 0x79, 0xe8, 0xe8, 0xae, 0xde, 0x27, 0x35, 0x7f, 0x21, 0x6d, 0x24,
0xbc, 0xbe, 0xc9, 0x1b, 0x11, 0x32, 0x1b, 0x49, 0x77, 0x4e, 0x7e, 0x21, 0xc0, 0xc2, 0xe3, 0x01, 0xaa, 0x62, 0x61, 0xf1, 0xfa, 0xb6, 0xa8, 0x44, 0xca, 0xac, 0x24, 0xdd, 0x38, 0xf5, 0x9d, 0x04,
0x79, 0xc6, 0x03, 0xad, 0x42, 0x79, 0x87, 0x1b, 0xc5, 0xe0, 0xf2, 0x4d, 0xbc, 0x37, 0xb9, 0xec, 0x4b, 0x2f, 0x07, 0xe4, 0x8d, 0x08, 0xb4, 0x0a, 0xe5, 0x3d, 0x61, 0x16, 0x87, 0x2b, 0x76, 0x89,
0xde, 0xc8, 0x30, 0x67, 0x0d, 0xc8, 0xb3, 0x3d, 0xf3, 0x23, 0x82, 0xed, 0xed, 0x3a, 0x8d, 0x46, 0xd6, 0xe4, 0xb2, 0x5b, 0xa3, 0xc2, 0x82, 0x33, 0x20, 0x6f, 0x0e, 0xec, 0xbf, 0x10, 0xec, 0xee,
0x49, 0x09, 0xb4, 0xc9, 0x3f, 0x09, 0x80, 0xc6, 0xbe, 0x98, 0x86, 0x66, 0x6e, 0x0e, 0x9b, 0xbb, 0xd6, 0x99, 0x37, 0x4a, 0x5a, 0xa0, 0x4f, 0xfd, 0x4a, 0x02, 0x34, 0xb1, 0xc5, 0xb6, 0x0c, 0x7b,
0xa8, 0x02, 0xc5, 0x9e, 0x4a, 0x9c, 0x16, 0x3e, 0xa4, 0xee, 0xcc, 0x28, 0xbe, 0x88, 0xae, 0xc0, 0x7b, 0xd8, 0xdc, 0x47, 0x15, 0x28, 0xf6, 0x74, 0xe2, 0xb5, 0xf0, 0x31, 0x33, 0x67, 0x4e, 0x1b,
0xbc, 0xaa, 0x69, 0x36, 0xd6, 0x82, 0x20, 0x83, 0x8d, 0x68, 0x03, 0xca, 0x7d, 0x4c, 0x88, 0xaa, 0x35, 0xd1, 0x2d, 0x58, 0xd4, 0x0d, 0xc3, 0xc5, 0x46, 0x10, 0x64, 0xb0, 0x13, 0x6d, 0x41, 0xb9,
0xe1, 0x0f, 0x74, 0xe2, 0x54, 0xc4, 0xaa, 0xb8, 0x56, 0xde, 0x58, 0xac, 0xb9, 0x54, 0xe2, 0x90, 0x8f, 0x09, 0xd1, 0x0d, 0xfc, 0x27, 0x93, 0x78, 0x15, 0xb9, 0x2a, 0x6f, 0x94, 0xb7, 0x96, 0x6b,
0x2b, 0xbc, 0x12, 0x5a, 0x85, 0x92, 0x63, 0xeb, 0x9a, 0x46, 0x7d, 0x9d, 0xa1, 0x56, 0xc7, 0x0d, 0x94, 0x4a, 0x02, 0x72, 0x4d, 0x14, 0x42, 0xeb, 0x50, 0xf2, 0x5c, 0xd3, 0x30, 0x98, 0xad, 0x73,
0xf2, 0x87, 0x80, 0x1a, 0xd8, 0x69, 0xaa, 0xc7, 0xf7, 0x8d, 0x4e, 0x53, 0x37, 0x5a, 0xf8, 0x50, 0x4c, 0xeb, 0xa4, 0x43, 0xfd, 0x33, 0xa0, 0x06, 0xf6, 0x9a, 0xfa, 0xe9, 0x53, 0xab, 0xd3, 0x34,
0xc1, 0x87, 0x68, 0x05, 0x0a, 0x1e, 0x38, 0x16, 0x35, 0x4f, 0x0a, 0x87, 0x34, 0x17, 0x09, 0xa9, 0xad, 0x16, 0x3e, 0xd6, 0xf0, 0x31, 0x5a, 0x83, 0x82, 0x0f, 0x8e, 0x7b, 0xcd, 0x6f, 0x85, 0x5d,
0x7c, 0x04, 0x4b, 0x11, 0x7b, 0xc4, 0x72, 0x81, 0x6f, 0xd9, 0xf6, 0x03, 0xb3, 0x83, 0xa9, 0xc5, 0x9a, 0x8b, 0xb8, 0x54, 0x3d, 0x81, 0x95, 0x88, 0x3e, 0xe2, 0x50, 0xe0, 0x3b, 0xae, 0xfb, 0xcc,
0xbc, 0xe2, 0x8b, 0xee, 0x54, 0x5b, 0xb6, 0xdd, 0x24, 0x9a, 0x67, 0xcd, 0x93, 0xdc, 0xf6, 0xa6, 0xee, 0x60, 0xa6, 0x31, 0xaf, 0x8d, 0x9a, 0x74, 0xa9, 0x1d, 0xd7, 0x6d, 0x12, 0xc3, 0xd7, 0xe6,
0x7a, 0xec, 0x46, 0xca, 0x8d, 0xef, 0xbc, 0xe2, 0x49, 0xb4, 0x9d, 0xda, 0xa5, 0x58, 0xdc, 0x76, 0xb7, 0x68, 0x7f, 0x53, 0x3f, 0xa5, 0x9e, 0xa2, 0xfe, 0x5d, 0xd4, 0xfc, 0x16, 0xeb, 0x67, 0x7a,
0x2a, 0xc9, 0x9f, 0x03, 0xb4, 0xb0, 0xd1, 0x69, 0x12, 0xcd, 0x05, 0xf0, 0x7a, 0x49, 0xfe, 0xa3, 0x19, 0x16, 0xda, 0xcf, 0x5a, 0xea, 0x3f, 0x01, 0x5a, 0xd8, 0xea, 0x34, 0x89, 0x41, 0x01, 0x5c,
0x00, 0xe5, 0xd1, 0xe4, 0x0c, 0x2d, 0x0e, 0xa2, 0xc5, 0x63, 0xb4, 0x38, 0x80, 0x96, 0x49, 0xae, 0x2c, 0xc9, 0xbf, 0x94, 0xa0, 0x3c, 0x5e, 0x9c, 0xa3, 0xc5, 0x41, 0xb4, 0x78, 0x82, 0x16, 0x07,
0x67, 0x6c, 0x9e, 0x26, 0xd1, 0x46, 0x69, 0xe2, 0x9b, 0x5c, 0x8d, 0x76, 0x4f, 0xc7, 0x86, 0xc3, 0xd0, 0xf2, 0x16, 0xb5, 0x8c, 0xaf, 0xd3, 0x24, 0xc6, 0x38, 0x4c, 0x62, 0x17, 0x95, 0x68, 0xf7,
0x34, 0xf2, 0x4c, 0x83, 0x6b, 0x42, 0x12, 0xcc, 0x12, 0x6c, 0x74, 0xf6, 0xf4, 0x3e, 0xae, 0x14, 0x4c, 0x6c, 0x79, 0x5c, 0x22, 0xcf, 0x25, 0x84, 0x2e, 0xa4, 0xc0, 0x3c, 0xc1, 0x56, 0xe7, 0xc0,
0xaa, 0xc2, 0x9a, 0xa8, 0x8c, 0x64, 0xb9, 0x0d, 0xe5, 0x07, 0x3d, 0xac, 0xda, 0x5e, 0x78, 0x56, 0xec, 0xe3, 0x4a, 0xa1, 0x2a, 0x6d, 0xc8, 0xda, 0xb8, 0xad, 0xb6, 0xa1, 0xfc, 0xac, 0x87, 0x75,
0xa0, 0x30, 0x08, 0xe4, 0x97, 0x49, 0xae, 0x09, 0xd3, 0xf2, 0x32, 0xcf, 0x1c, 0x1c, 0xc9, 0xe1, 0xd7, 0x77, 0xcf, 0x1a, 0x14, 0x06, 0x81, 0xf8, 0xf2, 0x16, 0x55, 0x61, 0x3b, 0x7e, 0xe4, 0xb9,
0xe0, 0x89, 0xd1, 0x45, 0x78, 0x0f, 0xe6, 0xc6, 0x93, 0x4c, 0x13, 0x06, 0xf9, 0x07, 0x01, 0x16, 0x81, 0xe3, 0x76, 0xd8, 0x79, 0x72, 0x34, 0x09, 0x9f, 0xc0, 0xc2, 0x64, 0x91, 0x59, 0xdc, 0xa0,
0x5a, 0xd8, 0xc5, 0x13, 0xe0, 0x62, 0xac, 0xaf, 0x15, 0x28, 0x6a, 0xb6, 0x39, 0xb0, 0x46, 0xae, 0x7e, 0x21, 0xc1, 0x52, 0x0b, 0x53, 0x3c, 0x01, 0x2e, 0xc6, 0xda, 0x5a, 0x81, 0xa2, 0xe1, 0xda,
0xfa, 0xa2, 0x3b, 0xa2, 0xcf, 0x28, 0xe2, 0x51, 0x87, 0x49, 0x61, 0x04, 0x33, 0xd1, 0xf4, 0xf3, 0x03, 0x67, 0x6c, 0xea, 0xa8, 0x49, 0x67, 0xf4, 0x39, 0x45, 0x7c, 0xea, 0xf0, 0x56, 0x18, 0xc1,
0xf8, 0xf3, 0x41, 0xfc, 0x72, 0x1d, 0x16, 0x83, 0xae, 0x4d, 0x85, 0x70, 0x07, 0x96, 0x5a, 0xd8, 0x5c, 0x34, 0xfc, 0x22, 0xfe, 0x7c, 0x10, 0xbf, 0x5a, 0x87, 0xe5, 0xa0, 0x69, 0x33, 0x21, 0xdc,
0xf1, 0xc8, 0xd2, 0x72, 0x54, 0x67, 0x40, 0x94, 0xa8, 0x6b, 0x42, 0xd4, 0xb5, 0x15, 0x28, 0x10, 0x83, 0x95, 0x16, 0xf6, 0x7c, 0xb2, 0xb4, 0x3c, 0xdd, 0x1b, 0x10, 0x2d, 0x6a, 0x9a, 0x14, 0x35,
0xaa, 0x4e, 0x0d, 0xe6, 0x15, 0x4f, 0x92, 0x1f, 0xc2, 0x72, 0xd4, 0xe0, 0x54, 0xae, 0xdd, 0xa1, 0x6d, 0x0d, 0x0a, 0x84, 0x89, 0x33, 0x85, 0x79, 0xcd, 0x6f, 0xa9, 0xcf, 0x61, 0x35, 0xaa, 0x70,
0x4b, 0xf7, 0xe4, 0xae, 0xc9, 0x4f, 0x60, 0xb9, 0xf1, 0x4a, 0x5c, 0xe0, 0x40, 0x8a, 0x01, 0x90, 0x26, 0xd3, 0x1e, 0xb1, 0xd4, 0x3d, 0xbb, 0x69, 0xea, 0x2b, 0x58, 0x6d, 0x7c, 0x14, 0x13, 0x04,
0xdf, 0x0a, 0xb0, 0x54, 0xc7, 0xbd, 0xd6, 0xc0, 0xc2, 0x76, 0xc3, 0xcd, 0xb2, 0xc7, 0x63, 0x3e, 0x90, 0x72, 0x00, 0xe4, 0xff, 0x25, 0x58, 0xa9, 0xe3, 0x5e, 0x6b, 0xe0, 0x60, 0xb7, 0x41, 0xa3,
0x5f, 0x42, 0x88, 0xaf, 0x63, 0xde, 0xe4, 0x92, 0x78, 0x23, 0x06, 0x79, 0x93, 0xca, 0x0f, 0x37, 0xec, 0xf3, 0x58, 0x8c, 0x97, 0x14, 0xe2, 0xeb, 0x84, 0x37, 0xb9, 0x24, 0xde, 0xc8, 0x41, 0xde,
0xd8, 0x51, 0x37, 0xa6, 0x0a, 0x76, 0x9b, 0x05, 0x3b, 0x0c, 0x28, 0x9d, 0x07, 0x8b, 0x20, 0xba, 0xa4, 0xf2, 0x83, 0x3a, 0x3b, 0x6a, 0xc6, 0x4c, 0xce, 0x6e, 0x73, 0x67, 0x87, 0x01, 0xa5, 0xf3,
0xcc, 0xce, 0x51, 0x66, 0xbb, 0x3f, 0x93, 0x01, 0xc9, 0x5f, 0xb3, 0xc4, 0x9c, 0xde, 0xdd, 0x29, 0x60, 0x19, 0x64, 0xca, 0xec, 0x1c, 0x63, 0x36, 0xfd, 0x99, 0x0c, 0x48, 0xfd, 0x2f, 0x0f, 0xcc,
0xf7, 0xc5, 0x87, 0xf4, 0x70, 0xf9, 0xc4, 0xd6, 0x1d, 0x5c, 0xd7, 0xbb, 0xdd, 0xe9, 0x31, 0xca, 0xf9, 0xcd, 0x9d, 0x71, 0x5f, 0x7c, 0xce, 0x0e, 0x97, 0xbf, 0xb9, 0xa6, 0x87, 0xeb, 0x66, 0xb7,
0x5f, 0xd1, 0x70, 0x05, 0x2d, 0xbd, 0x46, 0x20, 0xdf, 0xe7, 0x41, 0x6e, 0x9a, 0x1d, 0xbd, 0x3b, 0x3b, 0x3b, 0x46, 0xf5, 0x3f, 0xcc, 0x5d, 0x41, 0x4d, 0x17, 0x08, 0xe4, 0xf3, 0x3c, 0xa8, 0x4d,
0x6c, 0xb2, 0x93, 0x55, 0xc1, 0x6a, 0xdb, 0x75, 0x76, 0xeb, 0xd8, 0xc1, 0x06, 0xd1, 0x4d, 0x23, 0xbb, 0x63, 0x76, 0x87, 0x4d, 0x7e, 0xb2, 0x6a, 0x58, 0x6f, 0x53, 0x63, 0x77, 0x4e, 0x3d, 0x6c,
0xe3, 0x2a, 0x76, 0xf7, 0x68, 0x73, 0x60, 0xb7, 0xf1, 0x78, 0x83, 0xf5, 0xe5, 0x00, 0x99, 0xc5, 0x11, 0xd3, 0xb6, 0x32, 0x66, 0x31, 0xdd, 0xa3, 0xed, 0x81, 0xdb, 0xc6, 0x93, 0x0d, 0x76, 0xd4,
0xe8, 0xe6, 0x4b, 0x30, 0x71, 0x27, 0xda, 0x1b, 0x5a, 0x98, 0x52, 0x33, 0xaf, 0xf0, 0x4d, 0xe8, 0x0e, 0x90, 0x59, 0x8e, 0x6e, 0xbe, 0x04, 0x13, 0xba, 0xd0, 0xc1, 0xd0, 0xc1, 0x8c, 0x9a, 0x79,
0x18, 0xce, 0xd9, 0x61, 0xa7, 0xe8, 0x25, 0x21, 0x4f, 0x2f, 0x09, 0x9b, 0xec, 0x92, 0x90, 0x8a, 0x4d, 0xec, 0x42, 0xa7, 0x70, 0xc5, 0x0d, 0x1b, 0xc5, 0x2e, 0x09, 0x79, 0x76, 0x49, 0xd8, 0xe6,
0xa1, 0xa6, 0xc4, 0x19, 0xd9, 0x32, 0x1c, 0x7b, 0xa8, 0xc4, 0x4f, 0x10, 0x3e, 0x99, 0x0a, 0xd1, 0x97, 0x84, 0x54, 0x0c, 0x35, 0x2d, 0x4e, 0xc9, 0x8e, 0xe5, 0xb9, 0x43, 0x2d, 0x7e, 0x81, 0xf0,
0x93, 0xe9, 0x16, 0xe4, 0xf0, 0x71, 0xa5, 0x48, 0xe3, 0xbd, 0x5a, 0xd3, 0x4c, 0x53, 0xeb, 0x61, 0xc9, 0x54, 0x88, 0x9e, 0x4c, 0x0f, 0x20, 0x87, 0x4f, 0x2b, 0x45, 0xe6, 0xef, 0xf5, 0x9a, 0x61,
0x76, 0x39, 0x7d, 0x3a, 0xe8, 0xd6, 0x5a, 0x8e, 0xad, 0x1b, 0xda, 0xc7, 0x6a, 0x6f, 0x80, 0x95, 0xdb, 0x46, 0x0f, 0xf3, 0xcb, 0xe9, 0xeb, 0x41, 0xb7, 0xd6, 0xf2, 0x5c, 0xd3, 0x32, 0xfe, 0xaa,
0x1c, 0x3e, 0x46, 0xf7, 0x60, 0x4e, 0x75, 0x1c, 0xb5, 0xfd, 0x0c, 0x77, 0xb6, 0x8d, 0xae, 0x59, 0xf7, 0x06, 0x58, 0xcb, 0xe1, 0x53, 0xf4, 0x04, 0x16, 0x74, 0xcf, 0xd3, 0xdb, 0x6f, 0x70, 0x67,
0x99, 0xcd, 0x30, 0x2e, 0x30, 0xc2, 0xa5, 0x85, 0x4e, 0x28, 0x90, 0x4a, 0xa9, 0x2a, 0xac, 0xcd, 0xd7, 0xea, 0xda, 0x95, 0xf9, 0x0c, 0xf3, 0x02, 0x33, 0x28, 0x2d, 0x4c, 0xc2, 0x80, 0x54, 0x4a,
0x2a, 0xbe, 0x88, 0x36, 0x60, 0x59, 0x27, 0xae, 0xfb, 0xb6, 0xa1, 0xf6, 0xc6, 0xc0, 0x2b, 0x40, 0x55, 0x69, 0x63, 0x5e, 0x1b, 0x35, 0xd1, 0x16, 0xac, 0x9a, 0x84, 0x9a, 0xef, 0x5a, 0x7a, 0x6f,
0xd5, 0x62, 0xfb, 0x50, 0x0d, 0x50, 0x9f, 0x68, 0xef, 0xeb, 0x36, 0x71, 0x58, 0xfc, 0xe8, 0x09, 0x02, 0xbc, 0x02, 0x4c, 0x2c, 0x76, 0x0c, 0xd5, 0x00, 0xf5, 0x89, 0xf1, 0x47, 0xd3, 0x25, 0x1e,
0x5b, 0xa6, 0x27, 0x6c, 0x4c, 0x8f, 0x84, 0x41, 0x4a, 0x0e, 0xa2, 0xcb, 0xed, 0x03, 0x3c, 0xf4, 0xf7, 0x1f, 0x3b, 0x61, 0xcb, 0xec, 0x84, 0x8d, 0x19, 0x51, 0x30, 0x28, 0xc9, 0x4e, 0xa4, 0xdc,
0xb8, 0xe1, 0xfe, 0x44, 0xff, 0x83, 0xfc, 0x73, 0x17, 0x84, 0x77, 0x07, 0xbd, 0x10, 0x43, 0xc8, 0x3e, 0xc2, 0x43, 0x9f, 0x1b, 0xf4, 0x27, 0xfa, 0x15, 0xe4, 0xdf, 0x52, 0x10, 0xfe, 0x1d, 0xf4,
0x47, 0x78, 0xc8, 0x70, 0x32, 0xcd, 0x77, 0x72, 0x6f, 0x0b, 0xf2, 0xcf, 0x79, 0xb8, 0xe8, 0x1e, 0x5a, 0x0c, 0x21, 0x5f, 0xe0, 0x21, 0xc7, 0xc9, 0x25, 0x7f, 0x97, 0xfb, 0xad, 0xa4, 0x7e, 0x9d,
0x48, 0x6f, 0x86, 0x90, 0x35, 0x40, 0xfe, 0xef, 0xc7, 0x3d, 0xd5, 0xe9, 0x9a, 0x76, 0xdf, 0xdb, 0x87, 0xeb, 0xf4, 0x40, 0xfa, 0x34, 0x84, 0xac, 0x01, 0x1a, 0xfd, 0x7e, 0xd9, 0xd3, 0xbd, 0xae,
0x32, 0xf3, 0x4a, 0x4c, 0x4f, 0x98, 0xc0, 0xf9, 0x28, 0x81, 0x07, 0x49, 0x04, 0x2e, 0x50, 0x02, 0xed, 0xf6, 0xfd, 0x2d, 0x33, 0xaf, 0xc5, 0x8c, 0x84, 0x09, 0x9c, 0x8f, 0x12, 0x78, 0x90, 0x44,
0xbf, 0x47, 0x09, 0x9c, 0x02, 0xf8, 0xf4, 0xec, 0x2d, 0x26, 0xb1, 0x77, 0x76, 0x4a, 0xf6, 0x96, 0xe0, 0x02, 0x23, 0xf0, 0x1f, 0x18, 0x81, 0x53, 0x00, 0x9f, 0x9f, 0xbd, 0xc5, 0x24, 0xf6, 0xce,
0x4e, 0xc3, 0x5e, 0xc8, 0xc6, 0xde, 0xf2, 0x89, 0xd9, 0x3b, 0xf7, 0xa6, 0xd9, 0xfb, 0x87, 0x00, 0xcf, 0xc8, 0xde, 0xd2, 0x79, 0xd8, 0x0b, 0xd9, 0xd8, 0x5b, 0x3e, 0x33, 0x7b, 0x17, 0x3e, 0x35,
0xd5, 0xc9, 0xc9, 0x9c, 0xf6, 0x1e, 0xcd, 0x67, 0x53, 0x8c, 0x66, 0x33, 0x3e, 0x1e, 0x33, 0x49, 0x7b, 0xbf, 0x97, 0xa0, 0x3a, 0x3d, 0x98, 0xb3, 0xde, 0xa3, 0xc5, 0x68, 0xca, 0xd1, 0x68, 0xc6,
0xf1, 0xe0, 0xb3, 0x91, 0x0f, 0x66, 0xe3, 0x06, 0x14, 0x6c, 0x4c, 0x06, 0x3d, 0x9f, 0xa1, 0x67, 0xfb, 0x63, 0x2e, 0xc9, 0x1f, 0x62, 0x34, 0xf2, 0xc1, 0x68, 0xdc, 0x83, 0x82, 0x8b, 0xc9, 0xa0,
0x29, 0x43, 0x47, 0x60, 0x31, 0xb1, 0x14, 0x4f, 0x81, 0xae, 0xd5, 0xfb, 0x9d, 0xce, 0x3f, 0x6b, 0x37, 0x62, 0xe8, 0x65, 0xc6, 0xd0, 0x31, 0x58, 0x4c, 0x1c, 0xcd, 0x17, 0x50, 0x3f, 0xe4, 0xe1,
0xad, 0xa6, 0x00, 0xfe, 0x77, 0xad, 0xfe, 0x95, 0xd6, 0xea, 0xe4, 0x64, 0xfe, 0x9d, 0xd6, 0xea, 0xfa, 0xd3, 0x4e, 0xe7, 0xa7, 0x95, 0xab, 0x29, 0x80, 0x7f, 0xce, 0xd5, 0xf3, 0xe6, 0x2a, 0xcd,
0xef, 0x22, 0x5c, 0x6e, 0x8c, 0x76, 0x26, 0x37, 0x9c, 0xa7, 0x58, 0xaf, 0x89, 0x5f, 0xd3, 0xfc, 0x46, 0x82, 0x8f, 0x2b, 0x8b, 0xfc, 0x9e, 0x44, 0xf0, 0xf1, 0x45, 0x66, 0xef, 0xf4, 0xf0, 0xfe,
0x5a, 0x16, 0x43, 0x6b, 0x39, 0xfd, 0xb2, 0x97, 0x44, 0xae, 0xfc, 0x04, 0x72, 0x55, 0xa1, 0xec, 0x98, 0xb2, 0xf7, 0x3b, 0x19, 0x6e, 0x36, 0xc6, 0x7b, 0x15, 0x75, 0xe7, 0x39, 0x32, 0x38, 0xf1,
0x0c, 0x2d, 0xfc, 0x08, 0x0f, 0x47, 0x2b, 0xb5, 0xa4, 0xf0, 0x4d, 0x88, 0xc0, 0x4a, 0x3f, 0x98, 0xfb, 0x5a, 0xcc, 0x6e, 0x39, 0x94, 0xdd, 0xe9, 0xd7, 0xbf, 0x24, 0xba, 0xe5, 0xa7, 0xd0, 0xad,
0x63, 0x5f, 0xb9, 0x48, 0x83, 0x76, 0x97, 0x06, 0x2d, 0x43, 0x6c, 0x6a, 0xcd, 0x88, 0x19, 0x25, 0x0a, 0x65, 0x6f, 0xe8, 0xe0, 0x17, 0x78, 0x38, 0xce, 0xdd, 0x92, 0x26, 0x76, 0x21, 0x02, 0x6b,
0xc1, 0xb4, 0xd4, 0x05, 0x14, 0xd5, 0x0e, 0x73, 0x43, 0xc8, 0xca, 0x8d, 0x5c, 0x12, 0x37, 0xe4, 0xfd, 0x60, 0x8c, 0x47, 0xc2, 0x45, 0xe6, 0xb4, 0xc7, 0xcc, 0x69, 0x19, 0x7c, 0x53, 0x6b, 0x46,
0x97, 0x02, 0x5c, 0x49, 0x77, 0x7d, 0x2a, 0x22, 0xb7, 0x60, 0x89, 0xe8, 0x86, 0xd6, 0xc3, 0x23, 0xd4, 0x68, 0x09, 0xaa, 0x95, 0x2e, 0xa0, 0xa8, 0x74, 0x98, 0x1b, 0x52, 0x56, 0x6e, 0xe4, 0x92,
0x20, 0x94, 0x69, 0xec, 0x75, 0xee, 0x12, 0xbb, 0xb7, 0xf0, 0xfd, 0xa3, 0x09, 0x99, 0xa2, 0x12, 0xb8, 0xa1, 0xbe, 0x97, 0xe0, 0x56, 0xba, 0xe9, 0x33, 0x11, 0xb9, 0x05, 0x2b, 0xc4, 0xb4, 0x8c,
0x37, 0x5a, 0xfe, 0x35, 0x07, 0xab, 0x93, 0x46, 0x4d, 0xe1, 0xa7, 0x9d, 0xb4, 0x6b, 0x33, 0x4f, 0x1e, 0x1e, 0x03, 0x61, 0x4c, 0xe3, 0xef, 0x75, 0x37, 0xf8, 0x4d, 0x46, 0x1c, 0x1f, 0x2f, 0xc8,
0xdf, 0x4d, 0xf5, 0xf4, 0xf4, 0x5b, 0xf6, 0x4c, 0x24, 0x91, 0xaf, 0x6b, 0x13, 0xfb, 0x45, 0x80, 0x05, 0xb5, 0xb8, 0xd9, 0xea, 0x87, 0x1c, 0xac, 0x4f, 0x9b, 0x35, 0x83, 0x9d, 0x6e, 0xd2, 0x3e,
0xcb, 0xa9, 0x9f, 0x3f, 0x53, 0x7e, 0x52, 0x96, 0xc9, 0xa0, 0xdd, 0xc6, 0x84, 0x70, 0xc1, 0x44, 0xce, 0x2d, 0xfd, 0x7d, 0xaa, 0xa5, 0xe7, 0xdf, 0xc4, 0xe7, 0x22, 0x81, 0xbc, 0xa8, 0x4d, 0xec,
0x34, 0x98, 0xd4, 0xb6, 0xff, 0x2c, 0xa8, 0xf0, 0x6a, 0x68, 0x03, 0xa0, 0xab, 0xea, 0x3d, 0xdc, 0x1b, 0x09, 0x6e, 0xa6, 0x7e, 0x10, 0xcd, 0xf8, 0x91, 0x59, 0x26, 0x83, 0x76, 0x1b, 0x13, 0x22,
0xa1, 0x83, 0x66, 0x12, 0x07, 0x71, 0x5a, 0xf2, 0x4b, 0x11, 0xae, 0xd5, 0x71, 0x0f, 0x3b, 0xf8, 0x38, 0x13, 0x31, 0x67, 0x32, 0xdd, 0xa3, 0x87, 0x42, 0x4d, 0x14, 0x43, 0x5b, 0x00, 0x5d, 0xdd,
0x0d, 0xee, 0x4e, 0xaf, 0xfe, 0x36, 0x91, 0xfe, 0x01, 0x99, 0xb4, 0xdf, 0x15, 0x4f, 0x7c, 0x98, 0xec, 0xe1, 0x0e, 0x9b, 0x34, 0x97, 0x38, 0x49, 0x90, 0x52, 0xdf, 0xcb, 0x70, 0xa7, 0x8e, 0x7b,
0xce, 0x26, 0x1e, 0x1e, 0xbb, 0x49, 0xab, 0xa3, 0x44, 0x73, 0x33, 0x91, 0x67, 0xf1, 0x23, 0xe5, 0xd8, 0xc3, 0x9f, 0x70, 0x77, 0xfa, 0xf8, 0xf7, 0x8b, 0xf4, 0x4f, 0xca, 0xa4, 0xfd, 0xae, 0x78,
0xef, 0x04, 0xb8, 0x9e, 0x29, 0x5f, 0x53, 0xf1, 0xee, 0x04, 0x67, 0x9a, 0x09, 0xf3, 0x01, 0x56, 0xe6, 0xe3, 0x75, 0x3e, 0xf1, 0xf0, 0xd8, 0x4f, 0xca, 0x8e, 0x12, 0x8b, 0xcd, 0x54, 0x9e, 0xc5,
0xa1, 0x5b, 0x50, 0xc2, 0x7e, 0x83, 0x57, 0x89, 0x39, 0x13, 0x22, 0xdf, 0x58, 0x81, 0xf7, 0x2d, 0xcf, 0x54, 0x3f, 0x93, 0xe0, 0x6e, 0xa6, 0x78, 0xcd, 0xc4, 0xbb, 0x33, 0x9c, 0x69, 0x36, 0x2c,
0x97, 0xe4, 0x9b, 0x18, 0x78, 0xde, 0xfa, 0x2d, 0x07, 0xa5, 0x91, 0x29, 0xb4, 0x9f, 0x14, 0x5a, 0x06, 0x58, 0x85, 0x1e, 0x40, 0x09, 0x8f, 0x3a, 0xfc, 0xda, 0xcc, 0xa5, 0x10, 0xf9, 0x26, 0x02,
0x81, 0x3a, 0x7e, 0x23, 0x38, 0xf3, 0xe9, 0x77, 0x99, 0x5c, 0xd6, 0xe3, 0x42, 0x4c, 0x64, 0x83, 0xa2, 0x6d, 0xb9, 0x24, 0xdb, 0xe4, 0xc0, 0x83, 0xd7, 0xb7, 0x39, 0x28, 0x8d, 0x55, 0xa1, 0xc3,
0x1c, 0xba, 0x1a, 0xb2, 0x8d, 0x2b, 0x78, 0xf9, 0x3b, 0x43, 0x2f, 0x9b, 0xec, 0x9d, 0x38, 0x87, 0x24, 0xd7, 0x4a, 0xcc, 0xf0, 0x7b, 0xc1, 0x95, 0xcf, 0xbf, 0xcb, 0xe4, 0xb2, 0x1e, 0x17, 0x72,
0x8f, 0xa5, 0xcf, 0x4e, 0xb8, 0x93, 0x5d, 0x0f, 0xee, 0x64, 0x31, 0xf9, 0xe3, 0xf6, 0xaf, 0x21, 0x22, 0x1b, 0xd4, 0xd0, 0x65, 0x91, 0x6f, 0x5c, 0xc1, 0xeb, 0xe0, 0x25, 0x76, 0xfd, 0xe4, 0x2f,
0xcc, 0xf1, 0x5d, 0xe8, 0x0e, 0xcc, 0x1e, 0x78, 0xb2, 0x97, 0xc0, 0x89, 0x0c, 0x1d, 0x29, 0x4f, 0xc7, 0x39, 0x7c, 0xaa, 0xfc, 0xe3, 0x8c, 0x3b, 0xd9, 0xdd, 0xe0, 0x4e, 0x16, 0x13, 0x3f, 0x61,
0x91, 0xcc, 0x17, 0x02, 0x2c, 0x71, 0xc5, 0x2c, 0x37, 0x46, 0xb4, 0x9a, 0x15, 0xa9, 0x59, 0x09, 0xff, 0x1a, 0xc2, 0x82, 0x38, 0x84, 0x1e, 0xc1, 0xfc, 0x91, 0xdf, 0xf6, 0x03, 0x38, 0x95, 0xa1,
0x19, 0x6a, 0x56, 0xb9, 0x13, 0xd7, 0xac, 0xc4, 0x50, 0xcd, 0x6a, 0xe3, 0x1b, 0x00, 0xb1, 0x4f, 0x63, 0xe1, 0x19, 0x82, 0xf9, 0x4e, 0x82, 0x15, 0xa1, 0xbc, 0x45, 0x7d, 0xc4, 0xea, 0x5b, 0x91,
0x34, 0xf4, 0x04, 0x16, 0x42, 0xb5, 0x26, 0x74, 0x35, 0x26, 0x06, 0xd1, 0xfa, 0x96, 0x74, 0x2d, 0x2a, 0x96, 0x94, 0xa1, 0x8a, 0x95, 0x3b, 0x73, 0x15, 0x4b, 0x0e, 0x55, 0xb1, 0xb6, 0xfe, 0x07,
0x8b, 0x1a, 0xb1, 0x90, 0x09, 0xcb, 0x8f, 0x07, 0xbd, 0x9e, 0xb7, 0x7a, 0x37, 0x87, 0x2d, 0x7c, 0x20, 0xf7, 0x89, 0x81, 0x5e, 0xc1, 0x52, 0xa8, 0xfa, 0x84, 0x6e, 0xc7, 0xf8, 0x20, 0x5a, 0xf1,
0x48, 0xfd, 0xfb, 0x6f, 0xcc, 0xf8, 0x38, 0x45, 0x77, 0xae, 0x9b, 0x99, 0x75, 0xe9, 0xba, 0x2c, 0x52, 0xee, 0x64, 0x11, 0x23, 0x0e, 0xb2, 0x61, 0xf5, 0xe5, 0xa0, 0xd7, 0xf3, 0xb3, 0x77, 0x7b,
0x7a, 0xef, 0xe8, 0x68, 0xc1, 0x7b, 0xf0, 0xf0, 0x6b, 0x5a, 0xd2, 0x62, 0xb0, 0x81, 0x58, 0x68, 0xd8, 0xc2, 0xc7, 0xcc, 0xbe, 0x5f, 0xc6, 0xcc, 0x8f, 0x13, 0xa4, 0x6b, 0xdd, 0xcf, 0x2c, 0xcb,
0x17, 0xa0, 0x8e, 0x7b, 0x4d, 0xa2, 0xb1, 0x45, 0x10, 0x33, 0xd1, 0xb8, 0xdb, 0xb5, 0x70, 0x29, 0xf2, 0xb2, 0xe8, 0xbf, 0xac, 0xa3, 0x25, 0xff, 0x09, 0x64, 0x54, 0xe5, 0x52, 0x96, 0x83, 0x1d,
0x45, 0x83, 0x58, 0xa8, 0x01, 0x8b, 0xe1, 0x17, 0x6e, 0x54, 0xa1, 0x13, 0xc7, 0xbc, 0xbf, 0x4b, 0xc4, 0x41, 0xfb, 0x00, 0x75, 0xdc, 0x6b, 0x12, 0x83, 0x27, 0x41, 0xcc, 0x42, 0x93, 0x61, 0xaa,
0xe7, 0x13, 0x7a, 0x88, 0x85, 0xd6, 0x61, 0xd6, 0x2f, 0x06, 0x21, 0xe6, 0x39, 0x57, 0x80, 0x92, 0xe1, 0x46, 0x8a, 0x04, 0x71, 0x50, 0x03, 0x96, 0xc3, 0x6f, 0xde, 0xa8, 0xc2, 0x16, 0x8e, 0x79,
0xce, 0x86, 0x5a, 0x88, 0x85, 0xee, 0xc2, 0x1c, 0x5f, 0x5f, 0x41, 0xcb, 0xa3, 0x07, 0x1f, 0xae, 0x91, 0x57, 0xae, 0x26, 0x8c, 0x10, 0x07, 0x6d, 0xc2, 0xfc, 0xa8, 0x3c, 0x84, 0xb8, 0xe5, 0x42,
0x1a, 0x24, 0x9d, 0x8b, 0x69, 0x65, 0x6e, 0x87, 0xab, 0x20, 0x9e, 0xdb, 0x31, 0xd5, 0x16, 0xcf, 0x49, 0x4a, 0xb9, 0x1c, 0xea, 0x21, 0x0e, 0x7a, 0x0c, 0x0b, 0x62, 0xc5, 0x05, 0xad, 0x8e, 0x9f,
0xed, 0xd8, 0xb2, 0x49, 0x03, 0x16, 0x1b, 0xf1, 0x86, 0x1a, 0x89, 0x86, 0x1a, 0x13, 0x0c, 0xc5, 0x80, 0x84, 0xfa, 0x90, 0x72, 0x25, 0xa6, 0x97, 0x9b, 0x1d, 0xae, 0x8b, 0xf8, 0x66, 0xc7, 0xd4,
0x04, 0x32, 0xe6, 0xdd, 0x9f, 0x33, 0x14, 0x09, 0x64, 0x9d, 0xb2, 0x9c, 0x7f, 0xfa, 0x46, 0xff, 0x5f, 0x7c, 0xb3, 0x63, 0x0b, 0x29, 0x0d, 0x58, 0x6e, 0xc4, 0x2b, 0x6a, 0x24, 0x2a, 0x6a, 0x4c,
0xf1, 0xb5, 0x43, 0x4f, 0xeb, 0x52, 0x25, 0xbe, 0x83, 0x58, 0xe8, 0x00, 0x56, 0x27, 0x3d, 0xb7, 0x51, 0x14, 0xe3, 0xc8, 0x98, 0x4a, 0x80, 0xa0, 0x28, 0xe2, 0xc8, 0x3a, 0x63, 0xb9, 0xf8, 0x18,
0xa0, 0x2b, 0x59, 0x9e, 0xd7, 0xa4, 0xab, 0x19, 0xb4, 0x88, 0x85, 0x8e, 0xa0, 0x9a, 0x76, 0xd5, 0x8e, 0x7e, 0x31, 0x92, 0x0e, 0x3d, 0xb6, 0x2b, 0x95, 0xf8, 0x01, 0xe2, 0xa0, 0x23, 0x58, 0x9f,
0x46, 0x6b, 0x59, 0x3f, 0x26, 0xa4, 0x1b, 0x19, 0x35, 0x19, 0xca, 0x49, 0x1f, 0xaa, 0x1e, 0xca, 0xf6, 0x00, 0x83, 0x6e, 0x65, 0x79, 0x70, 0x53, 0x6e, 0x67, 0x90, 0x22, 0x0e, 0x3a, 0x81, 0x6a,
0x94, 0x87, 0x09, 0x0f, 0x65, 0xea, 0x17, 0xef, 0x97, 0x70, 0x31, 0x70, 0xb8, 0xc7, 0xcc, 0x77, 0xda, 0x55, 0x1b, 0x6d, 0x64, 0xfd, 0x98, 0x50, 0xee, 0x65, 0x94, 0xe4, 0x28, 0xa7, 0x7d, 0xa8,
0xd3, 0x5f, 0x1f, 0x19, 0xae, 0x6c, 0xd2, 0xad, 0xec, 0xca, 0xc4, 0xda, 0xbc, 0xf0, 0xe9, 0xf9, 0xfa, 0x28, 0x53, 0x9e, 0x2a, 0x7c, 0x94, 0xa9, 0x5f, 0xbc, 0xff, 0x86, 0xeb, 0x81, 0xc3, 0x3d,
0x1d, 0x0b, 0x1b, 0xfb, 0xdb, 0x4d, 0xee, 0x0f, 0x20, 0x7d, 0xa2, 0xdd, 0xed, 0x13, 0xed, 0x69, 0x66, 0xbd, 0xfb, 0xa3, 0xfc, 0xc8, 0x70, 0x65, 0x53, 0x1e, 0x64, 0x17, 0x26, 0xce, 0xf6, 0xb5,
0x81, 0x8a, 0xff, 0xff, 0x33, 0x00, 0x00, 0xff, 0xff, 0x4d, 0xec, 0xfc, 0x6f, 0x69, 0x22, 0x00, 0xbf, 0x5f, 0xdd, 0x73, 0xb0, 0x75, 0xb8, 0xdb, 0x14, 0xfe, 0x12, 0xd2, 0x27, 0xc6, 0xe3, 0x3e,
0x00, 0x31, 0x5e, 0x17, 0x58, 0xf3, 0xd7, 0x3f, 0x04, 0x00, 0x00, 0xff, 0xff, 0x3c, 0x0f, 0xb1, 0x43,
0x7b, 0x22, 0x00, 0x00,
} }

View File

@ -202,6 +202,7 @@ message AddMessageReactionExtensionsReq {
bool isReact = 10; bool isReact = 10;
bool isExternalExtensions = 11; bool isExternalExtensions = 11;
int64 msgFirstModifyTime = 12; int64 msgFirstModifyTime = 12;
uint32 seq = 13;
} }
message AddMessageReactionExtensionsResp { message AddMessageReactionExtensionsResp {
int32 errCode = 1; int32 errCode = 1;

View File

@ -25,7 +25,7 @@ for ((i = 0; i < ${#service_source_root[*]}; i++)); do
cd $begin_path cd $begin_path
service_path=${service_source_root[$i]} service_path=${service_source_root[$i]}
cd $service_path cd $service_path
make install make install os=${goos} arch=${goarch}
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo -e "${RED_PREFIX}${service_names[$i]} build failed ${COLOR_SUFFIX}\n" echo -e "${RED_PREFIX}${service_names[$i]} build failed ${COLOR_SUFFIX}\n"
exit -1 exit -1

View File

@ -81,6 +81,8 @@ service_names=(
${sdk_server_name} ${sdk_server_name}
${demo_server_name} ${demo_server_name}
) )
goos=linux
goarch=amd64