NoSugarNet/ProtobufCore/proto/protobuf_NoSugar.proto
2024-01-25 17:17:16 +08:00

137 lines
3.3 KiB
Protocol Buffer

syntax = "proto3";
package AxibugProtobuf;
option optimize_for = SPEED;
enum CommandID
{
CMD_DEFAUL = 0;//缺省不使用
CMD_LOGIN = 2001; //自动登录上行 | 下行 对应 Protobuf_Login | Protobuf_Login_RESP
CMD_CFGS = 3001; //配置信息 下行 对应 Protobuf_Cfgs
CMD_CHATMSG = 4001; //广播信息上行 | 下行 对应 Protobuf_ChatMsg | Protobuf_ChatMsg_RESP
CMD_TUNNEL_C2S_CONNECT = 5000; //客户端告知服务端 客户端本地连接建立 上行 Protobuf_C2S_Connect
CMD_TUNNEL_S2C_CONNECT = 5001; //服务端告知客户端 服务端本地连接建立 下行 Protobuf_S2C_Connect
CMD_TUNNEL_C2S_DISCONNECT = 5002; //客户端告知服务端 客户端本地连接断开 上行 Protobuf_C2S_Disconnect
CMD_TUNNEL_S2C_DISCONNECT = 5003; //服务端告知客户端 服务端本地连接断开 下行 Protobuf_S2C_Disconnect
CMD_TUNNEL_C2S_DATA = 5004; //客户端投递本地TCP通讯数据包 上行 Protobuf_C2S_DATA
CMD_TUNNEL_S2C_DATA = 5005; //服务端投递本地TCP通讯数据包 下行 Protobuf_S2C_DATA
}
enum ErrorCode
{
ERROR_DEFAUL = 0;//缺省不使用
ERROR_OK = 1; //成功
}
enum LoginType
{
BaseDefault = 0;//缺省不使用
HaoYueAuth = 1;
BF3 = 3;
BF4 = 4;
}
enum DeviceType
{
DeviceType_Default = 0;//缺省不使用
PC = 1;
Android = 2;
IOS = 3;
PSV = 4;
}
enum LoginResultStatus
{
LoginResultStatus_BaseDefault = 0;//缺省不使用
OK = 1;
AccountErr = 2;
}
//登录数据上行
message Protobuf_Login
{
LoginType loginType = 1;//登录操作类型 [0]皓月通行证 [3] 皓月BF3 [4] 皓月BF4
DeviceType deviceType = 2;//设备类型 [0]PC [1]AndroidPad预留 [3]IPad预留
string Account = 3;//用户名
string Password = 4;//密码
}
//登录数据下行
message Protobuf_Login_RESP
{
string Token = 1;//登录凭据 (本次登录之后,所有业务请求凭据,需要存储在内存中)
string LastLoginDate = 2;//上次登录时间(只用于呈现的字符串,若界面需求需要)
string RegDate = 3;//注册时间(只用于呈现的字符串,若界面需求需要)
LoginResultStatus Status = 4;//账号状态 (预留) [1]正常[0]被禁封
}
//配置下行
message Protobuf_Cfgs
{
int32 CompressAdapterType = 1;//压缩类型
repeated Protobuf_Cfgs_Single cfgs = 2;//配置
}
message Protobuf_Cfgs_Single
{
uint32 TunnelID = 1;//TunnelID
int32 Port = 2;//端口
}
//聊天 上行
message Protobuf_ChatMsg
{
string ChatMsg = 1;//消息
}
//聊天 下行
message Protobuf_ChatMsg_RESP
{
string NickName = 1;//昵称
string ChatMsg = 2;//消息
int64 Date = 3;//时间
}
message Protobuf_C2S_Connect
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
}
message Protobuf_S2C_Connect
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
uint32 Connected = 3;//[0]连接失败 [1]连接成功
}
message Protobuf_C2S_Disconnect
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
}
message Protobuf_S2C_Disconnect
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
}
message Protobuf_C2S_DATA
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
bytes HunterNetCore_Data = 3;
}
message Protobuf_S2C_DATA
{
uint32 TunnelID = 1;//TunnelID
uint32 Idx = 2;//单个隧道连接下标
bytes HunterNetCore_Data = 3;
}