Files
Sillyv2/proto3/srpc.proto
T
2023-07-31 13:31:58 +08:00

160 lines
3.7 KiB
Protocol Buffer

syntax = "proto3";
option go_package = "srpc/";
package srpc;
message Empty {}
message Default {
string value = 1;
}
message BucketSetRequest {
string name = 1;
string key = 2;
string value = 3;
}
message BucketWatchRequest {
string name = 1;
string key = 2;
string message = 3;
string error = 4;
string now = 5;
string echo = 6;
string plugin_id = 7;
}
message BucketWatchResponse {
string echo = 1;
string old = 2;
string now = 3;
string key = 4;
}
message BucketSetResponse {
bool changed = 1;
string message = 2;
}
message BucketKeyRequest {
string name = 1;
string key = 2;
}
message BucketRequest {
string name = 1;
}
message BucketKeysResponse {
repeated string keys = 1;
}
message LenResponse {
int32 length = 1;
}
message BoolResponse {
bool value = 1;
}
message BucketsResponse {
repeated string buckets = 1;
}
message SenderRequest {
string uuid = 1;
}
message ReplyRequest {
string uuid = 1;
string content = 2;
}
message SenderContentRequest {
string uuid = 1;
string content = 2;
}
message SenderListenResponse {
string echo = 1;
string uuid = 2;
}
message SenderListenRequest {
string uuid = 1;
repeated string rules = 2;
int32 timeout = 3;
bool listen_group = 4;
bool listen_private = 5;
bool require_admin = 6;
repeated string allow_platforms = 7;
repeated string prohibit_platforms = 8;
repeated string allow_users = 9;
repeated string prohibit_users = 10;
repeated string allow_groups = 11;
repeated string prohibit_groups = 12;
bool persistent = 13;
string value = 14;
string plugin_id = 15;
}
message AdapterRegistRequest {
string platform = 1;
string bot_id = 2;
}
message AdapterRequest {
string platform = 1;
string bot_id = 2;
string value = 3;
}
message Any {
string type_url = 1;
bytes value = 2;
}
message ConsoleRequest {
string type = 1;
string content = 2;
string plugin_id = 3;
}
service SillyGirlService {
rpc BucketGet(BucketKeyRequest) returns (Default);
rpc BucketSet(BucketSetRequest) returns (BucketSetResponse);
rpc BucketDelete(BucketRequest) returns (Empty);
rpc BucketKeys(BucketRequest) returns (BucketKeysResponse);
rpc BucketLen(BucketRequest) returns (LenResponse);
rpc BucketGetAll(BucketRequest) returns (Default);
rpc BucketBuckets(Empty) returns (BucketsResponse);
rpc BucketWatch (stream BucketWatchRequest) returns (stream BucketWatchResponse);
rpc SenderGetUserId (SenderRequest) returns (Default);
rpc SenderGetUserName (SenderRequest) returns (Default);
rpc SenderGetChatId (SenderRequest) returns (Default);
rpc SenderGetChatName (SenderRequest) returns (Default);
rpc SenderGetMessageId (SenderRequest) returns (Default);
rpc SenderIsAdmin (SenderRequest) returns (BoolResponse);
rpc SenderGetPlatform (SenderRequest) returns (Default);
rpc SenderGetBotId (SenderRequest) returns (Default);
rpc SenderGetContent (SenderRequest) returns (Default);
rpc SenderSetContent (SenderContentRequest) returns (Empty);
rpc SenderContinue (SenderRequest) returns (Empty);
rpc SenderListen (stream SenderListenRequest) returns (stream SenderListenResponse);
rpc SenderEvent (SenderRequest) returns (Default);
rpc SenderReply (ReplyRequest) returns (Default);
rpc SenderParam (ReplyRequest) returns (Default);
rpc SenderAction (ReplyRequest) returns (Default);
rpc SenderDestroy(ReplyRequest) returns (Empty);
rpc AdapterRegist(stream AdapterRegistRequest) returns (stream Default);
rpc AdapterReceive(AdapterRequest) returns (Empty);
rpc AdapterPush(AdapterRequest) returns (Default);
rpc AdapterDestroy(AdapterRequest) returns (Empty);
rpc AdapterSender(AdapterRequest) returns (Default);
rpc Console(ConsoleRequest) returns (Empty);
}