Files
open-im-server/pkg/proto/msg/msg.proto
T
withchao 8368b670e1 protobuf
2023-03-09 14:41:57 +08:00

229 lines
5.2 KiB
Protocol Buffer

syntax = "proto3";
import "Open-IM-Server/pkg/proto/sdkws/ws.proto";
import "Open-IM-Server/pkg/proto/wrapperspb/wrapperspb.proto";
option go_package = "OpenIM/pkg/proto/msg;msg";
package OpenIMServer.msg;
message MsgDataToMQ{
string token = 1;
sdkws.MsgData msgData = 2;
}
message MsgDataToDB {
sdkws.MsgData msgData = 1;
}
message PushMsgDataToMQ{
sdkws.MsgData msgData = 1;
string sourceID = 2;
}
message MsgDataToMongoByMQ{
int64 lastSeq = 1;
string aggregationID = 2;
repeated MsgDataToMQ messages = 3;
string triggerID = 4;
}
message GetMaxAndMinSeqReq {
string UserID = 1;
}
message GetMaxAndMinSeqResp {
int64 MaxSeq = 1;
int64 MinSeq = 2;
}
message SendMsgReq {
sdkws.MsgData msgData = 3;
}
message SendMsgResp {
string serverMsgID = 1;
string clientMsgID = 2;
int64 sendTime = 3;
}
message ClearMsgReq{
string userID = 1;
}
message ClearMsgResp{
}
message SetMsgMinSeqReq{
string userID = 1;
string groupID = 2;
uint32 minSeq = 3;
}
message SetMsgMinSeqResp{
}
message SetSendMsgStatusReq{
int32 status = 1;
}
message SetSendMsgStatusResp{
}
message GetSendMsgStatusReq{
}
message GetSendMsgStatusResp{
int32 status = 1;
}
message DelSuperGroupMsgReq{
string userID = 1;
string groupID = 2;
}
message DelSuperGroupMsgResp{
}
message GetSuperGroupMsgReq{
int64 Seq = 1;
string groupID = 2;
}
message GetSuperGroupMsgResp{
sdkws.MsgData msgData = 1;
}
message GetWriteDiffMsgReq{
int64 Seq = 1;
}
message GetWriteDiffMsgResp{
sdkws.MsgData msgData = 2;
}
message ModifyMessageReactionExtensionsReq {
string sourceID = 1;
int32 sessionType = 2;
map <string, sdkws.KeyValue>reactionExtensions = 3;
string clientMsgID = 4;
OpenIMServer.protobuf.StringValue ex = 5;
OpenIMServer.protobuf.StringValue attachedInfo = 6;
bool isReact = 7;
bool isExternalExtensions = 8;
int64 msgFirstModifyTime = 9;
}
message SetMessageReactionExtensionsReq {
string sourceID = 1;
int32 sessionType = 2;
map <string, sdkws.KeyValue>reactionExtensions = 3;
string clientMsgID = 4;
OpenIMServer.protobuf.StringValue ex = 5;
OpenIMServer.protobuf.StringValue attachedInfo = 6;
bool isReact = 7;
bool isExternalExtensions = 8;
int64 msgFirstModifyTime = 9;
}
message SetMessageReactionExtensionsResp {
string clientMsgID = 1;
int64 msgFirstModifyTime = 2;
bool isReact = 3;
repeated KeyValueResp result = 4;
}
message GetMessagesReactionExtensionsReq {
string sourceID = 1;
int32 sessionType = 2;
message MessageReactionKey {
string clientMsgID = 1;
int64 msgFirstModifyTime = 2;
}
repeated MessageReactionKey messageReactionKeys = 3;
repeated string TypeKeys = 4;
}
message GetMessagesReactionExtensionsResp{
repeated SingleMessageExtensionResult singleMessageResult = 1;
}
message SingleMessageExtensionResult {
map <string, sdkws.KeyValue>reactionExtensions = 1;
string clientMsgID = 2;
}
message ModifyMessageReactionExtensionsResp {
repeated ExtendMsgResp successList = 1;
repeated ExtendMsgResp failedList = 2;
}
message DeleteMessagesReactionExtensionsReq {
string operationID = 1;
string opUserID = 2;
string sourceID = 3;
int32 sessionType = 4;
string clientMsgID = 5;
bool isExternalExtensions = 6;
int64 msgFirstModifyTime = 7;
repeated sdkws.KeyValue reactionExtensions = 8;
}
message DeleteMessagesReactionExtensionsResp {
repeated KeyValueResp result = 1;
}
message ExtendMsgResp {
ExtendMsg extendMsg = 1;
}
message ExtendMsg {
map <string, KeyValueResp>reactionExtensions = 1;
string clientMsgID = 2;
int64 msgFirstModifyTime = 3;
string attachedInfo = 4;
string ex = 5;
}
message KeyValueResp {
sdkws.KeyValue keyValue = 1;
int32 errCode = 2;
string errMsg = 3;
}
message MsgDataToModifyByMQ{
repeated MsgDataToMQ messages = 1;
string triggerID = 2;
string aggregationID = 3;
}
message DelMsgsReq{
string userID = 2;
repeated int64 seqs = 3;
}
message DelMsgsResp{
}
service msg {
//获取最小最大seq(包括用户的,以及指定群组的)
rpc GetMaxAndMinSeq(sdkws.GetMaxAndMinSeqReq) returns(sdkws.GetMaxAndMinSeqResp);
//拉取历史消息(包括用户的,以及指定群组的)
rpc PullMessageBySeqs(sdkws.PullMessageBySeqsReq) returns(sdkws.PullMessageBySeqsResp);
//发送消息
rpc SendMsg(SendMsgReq) returns(SendMsgResp);
//删除某人消息
rpc DelMsgs(DelMsgsReq) returns(DelMsgsResp);
//删除某个用户某个大群消息
rpc DelSuperGroupMsg(DelSuperGroupMsgReq) returns(DelSuperGroupMsgResp);
//清空某人所有消息
rpc ClearMsg(ClearMsgReq) returns(ClearMsgResp);
//设置消息是否发送成功-针对api发送的消息
rpc SetSendMsgStatus(SetSendMsgStatusReq) returns(SetSendMsgStatusResp);
//获取消息发送状态
rpc GetSendMsgStatus(GetSendMsgStatusReq) returns(GetSendMsgStatusResp);
// 修改消息
rpc SetMessageReactionExtensions(SetMessageReactionExtensionsReq) returns(SetMessageReactionExtensionsResp);
rpc GetMessagesReactionExtensions(GetMessagesReactionExtensionsReq) returns(GetMessagesReactionExtensionsResp);
rpc AddMessageReactionExtensions(ModifyMessageReactionExtensionsReq) returns(ModifyMessageReactionExtensionsResp);
rpc DeleteMessageReactionExtensions(DeleteMessagesReactionExtensionsReq) returns(DeleteMessagesReactionExtensionsResp);
}