60 lines
1.8 KiB
Protocol Buffer
60 lines
1.8 KiB
Protocol Buffer
syntax = "proto3";
|
||
|
||
option go_package = "git.hlsq.asia/alex/proto/proto/rs/rspb";
|
||
import "rs_common.proto";
|
||
import "google/api/annotations.proto";
|
||
|
||
service Gateway {
|
||
// ---------- 内部接口 ----------
|
||
|
||
// 发送消息到客户端
|
||
rpc InnerToClient(stream InnerToClientReq) returns (InnerToClientResp) {}
|
||
// 广播消息到客户端
|
||
rpc InnerBroadcastClient(stream InnerBroadcastClientReq) returns (InnerBroadcastClientResp) {}
|
||
// 广播消息到频道
|
||
rpc InnerBroadcastChannel(stream InnerBroadcastChannelReq) returns (InnerBroadcastChannelResp) {}
|
||
// 踢用户下线
|
||
rpc InnerKickUser(InnerKickUserReq) returns (InnerKickUserResp) {}
|
||
|
||
// ---------- 后台接口 ----------
|
||
// ---------- 外部接口 ----------
|
||
}
|
||
|
||
// ---------- InnerToClient ----------
|
||
message InnerToClientReq {
|
||
int64 USN = 1;
|
||
int32 Platform = 2; // 平台(这里的类型是rspb.PlatformType)
|
||
int32 MessageID = 3; // 消息ID
|
||
bytes Payload = 4; // 消息内容
|
||
}
|
||
message InnerToClientResp {
|
||
}
|
||
|
||
// ---------- InnerBroadcastClient ----------
|
||
message InnerBroadcastClientReq {
|
||
repeated int64 USN = 1;
|
||
repeated int32 Platform = 2; // 平台(这里的类型是rspb.PlatformType)
|
||
int32 MessageID = 3; // 消息ID
|
||
bytes Payload = 4; // 消息内容
|
||
}
|
||
message InnerBroadcastClientResp {
|
||
}
|
||
|
||
// ---------- InnerBroadcastChannel ----------
|
||
message InnerBroadcastChannelReq {
|
||
string ChannelName = 1; // 频道名称
|
||
int32 MessageID = 2; // 消息ID
|
||
bytes Payload = 3; // 消息内容
|
||
}
|
||
message InnerBroadcastChannelResp {
|
||
}
|
||
|
||
// ---------- InnerKickUser ----------
|
||
message InnerKickUserReq {
|
||
int64 USN = 1;
|
||
int32 Platform = 2; // 平台(这里的类型是rspb.PlatformType)
|
||
int32 ID = 3; // 踢出原因(这里的类型是rspb.KickOutID)
|
||
}
|
||
message InnerKickUserResp {
|
||
}
|