syntax = "proto3"; import "google/protobuf/empty.proto"; option go_package = "./chat"; service AuthService { rpc Send(ReqSendChat) returns (ResSendChat); rpc GroupSend(ReqSendGroupChat) returns (ResSendChat); rpc GroupCreate(ReqGroupCreate) returns (ResGroupCreate); rpc GroupJoin(ReqGroupJoin) returns (google.protobuf.Empty); rpc GroupLeave(ReqGroupLeave) returns (google.protobuf.Empty); rpc GroupKickOut(ReqGroupKickOut) returns (google.protobuf.Empty); rpc GroupInfo(ReqGroupInfo) returns (ResGroupInfo); rpc GroupList(ReqGroupList) returns (ResGroupList); } message ChatMessage { string sender = 1; string content = 7; } message ReqSendChat { string receiver = 2; string content = 3; // 消息格式化器 [img:img_id][file:file_id]text... } message ReqSendGroupChat { string gid = 1; string message = 2; } message ResSendChat { int32 status = 1; // 1已发送,2已接收 string result = 2; } message Group { string gid = 1; string masterUid = 2; int32 userLimit = 3; int32 userNum = 4; string gname = 5; string createUid = 6; int64 createAt = 7; } message ReqGroupCreate { string gname = 2; } message ResGroupCreate { Group group = 1; } message ReqGroupJoin { string gid = 1; } message ReqGroupLeave { string gid = 1; } message ReqGroupKickOut { string gid = 1; string uid = 2; } message ReqGroupInfo { string gid = 1; } message ResGroupInfo { Group group = 1; } message ReqGroupList { } message ResGroupList { repeated Group groups = 1; }