ecs/proto/idl/mod_mail.proto

90 lines
2.1 KiB
Protocol Buffer
Raw Normal View History

2025-06-20 15:31:35 +08:00
syntax = "proto3";
package Pb;
option go_package = "pb/";
import "enums.proto";
import "mod_item.proto";
// ModId.ModuleMail = 8000;
// 邮件模块消息定义
// 如果定义的消息内没有字段或者消息被注释掉了,说明该请求不需要参数,发送消息时仅发送包头即可,包体可为空, 返回的消息亦是如此。
message Mail {
uint64 Uid = 1; //唯一ID
MailType Type = 2; //邮件类型见MailType
string title = 3; //标题
string content = 4; //内容
int64 CreateTime = 5; //创建时间
int64 Expiration = 6; //过期时间0不过期
MailStatus Status = 7; //邮件状态见MailStatus
repeated string Args = 8; //邮件参数,用于替换内容中的占符
repeated Item ItemList = 9; //物品列表, 没有物品为空
}
message MailChange {
uint64 Uid = 1; //唯一ID
MailStatus Status = 7; //邮件状态见MailStatus
}
// MsgId.ModMailList = 8001;
// MsgId.ModMailSend = 8002;
// 邮件列表返回
message MailListAck {
repeated Mail MailList = 1;
}
// MsgId.ModMailSend = 8002;
// 邮件发送请求
message MailSendReq {
uint64 UserId = 1; //用户ID
uint32 AreaId = 2; //区ID服务器ID
uint64 RoleId = 3; //角色ID
Mail Mail = 4; //邮件
}
// MsgId.ModMailSend = 8002;
// 邮件发送返回
message MailSendAck {
Mail Mail = 1;
}
// MsgId.ModMailChange = 8003;
// 邮件为变更列表返回
message MailChangeListAck {
repeated MailChange ChangeList = 1;
}
// MsgId.ModMailRead = 8004;
// 邮件读取请求
message MailReadReq {
uint64 Uid = 1; //唯一ID
}
// MsgId.ModMailReceive = 8005;
// 邮件物品领取请求
message MailReceiveReq {
uint64 Uid = 1; //唯一ID
}
// MsgId.ModMailReceiveAll = 8006;
// 邮件物品领取所有
message MailReceiveAllReq {
}
// MsgId.ModMailReceive = 8005;
// MsgId.ModMailReceiveAll = 8006;
// 邮件物品领取返回
message MailReceiveAck {
repeated Item ItemList = 1;
}
// MsgId.ModMailDelete = 8007;
// 邮件删除请求
message MailDeleteReq {
uint64 Uid = 1; //唯一ID
}
// MsgId.ModMailDeleteAll = 8008;
// 邮件删除所有请求
message MailDeleteAllReq {
}