As the title said.
And this will also be part of basis backend.
proto draft:
messagePublishContestRequest{
require int32contest_id=1;
// if set, user can only join after this timestamp(admin can bypass restrictionoptionalgoogle.protobuf.Timestampbegin=4;
}
serviceContest {
rpcList(ListContestRequest) returns (ListContestResponse);
rpcFullInfo(Id) returns (ContestFullInfo);
rpcCreate(CreateContestRequest) returns (Id);
rpcUpdate(UpdateContestRequest) returns (google.protobuf.Empty);
rpcRemove(RemoveRequest) returns (google.protobuf.Empty);
rpcPublish(PublishContestRequest) returns (google.protobuf.Empty);
rpcUnpublish(PublishRequest) returns (google.protobuf.Empty);
rpcJoin(JoinContestRequest) returns (google.protobuf.Empty);
}
messageUpdateContestRequest {
messageInfo {
optionalstringtitle=1;
optionalstringcontent=4;
optionalstringtags=6;
// if there is password: enter original password to disable password, null// to keep password. if there isn't: enter new password to set password,// null to keep it password disableoptionalstringpassword=5;
optionalgoogle.protobuf.Timestampend_of_submission=7;
}
requiredInfoinfo=1;
requiredint32id=2;
// can prevent duplicate request.// It will return cache result if server the request with the same// `request_id` has be processed.optionalstringrequest_id=3;
}
As the title said.
And this will also be part of
basis backend.proto draft: