mirror of
https://github.com/MeowCraftMC/CrystalConnector
synced 2025-05-22 02:43:00 +00:00
* 🚧 WIP v2. Signed-off-by: 秋雨落 <i@rain.cx> * 🚧 WIP v2 * 2. Signed-off-by: 秋雨落 <i@rain.cx> * ✨ It works? Signed-off-by: 秋雨落 <i@rain.cx> * ✨ Publish to nexus. Signed-off-by: 秋雨落 <i@rain.cx> --------- Signed-off-by: 秋雨落 <i@rain.cx>
60 lines
916 B
Protocol Buffer
60 lines
916 B
Protocol Buffer
syntax = "proto3";
|
|
option csharp_namespace = "CrystalConnector.Protocol.Messages";
|
|
|
|
package CrystalConnector;
|
|
|
|
message NamespacedName {
|
|
string namespace = 1;
|
|
string name = 2;
|
|
}
|
|
|
|
enum MessageDirection {
|
|
NONE = 0;
|
|
INCOMING = 1;
|
|
OUTGOING = 2;
|
|
ALL = 3;
|
|
}
|
|
|
|
message Successful {
|
|
}
|
|
|
|
enum Error {
|
|
UNKNOWN = 0;
|
|
AUTHENTICATED = 1;
|
|
NAME_EXISTS = 2;
|
|
UNAUTHENTICATED = 3;
|
|
UNREGISTERED_CHANNEL = 4;
|
|
INTERNAL = 5;
|
|
}
|
|
|
|
message Result {
|
|
oneof result {
|
|
Successful successful = 1;
|
|
Error error = 2;
|
|
}
|
|
}
|
|
|
|
message Authenticate {
|
|
NamespacedName client_id = 1;
|
|
string client_name = 2;
|
|
string secret_key = 3;
|
|
|
|
repeated Channel channels = 4;
|
|
}
|
|
|
|
message Channel {
|
|
NamespacedName id = 1;
|
|
MessageDirection direction = 2;
|
|
}
|
|
|
|
message Publish {
|
|
NamespacedName channel = 1;
|
|
string payload = 2;
|
|
}
|
|
|
|
message Forward {
|
|
string publisher = 1;
|
|
NamespacedName channel = 2;
|
|
string payload = 3;
|
|
}
|