RASCSI/src/raspberrypi/rascsi_interface.proto

68 lines
1.2 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package rascsi_interface;
// The supported device types
enum PbDeviceType {
UNDEFINED = 0;
SASI_HD = 1;
SCSI_HD = 2;
MO = 3;
CD = 4;
BR = 5;
NUVOLINK = 6;
DAYNAPORT = 7;
}
// rascsi remote operations
enum PbOperation {
NONE = 0;
SERVER_INFO = 1;
LIST = 2;
ATTACH = 3;
DETACH = 4;
INSERT = 5;
EJECT = 6;
PROTECT = 7;
LOG_LEVEL = 8;
}
// Commands rascsi can execute
message PbCommand {
PbOperation cmd = 1;
int32 id = 2;
int32 un = 3;
PbDeviceType type = 4;
string params = 5;
}
// The result of a command
message PbResult {
bool status = 1;
string msg = 2;
}
// The device meta data
message PbDevice {
int32 id = 1;
int32 un = 2;
string type = 3;
string file = 4;
bool removable = 5;
bool read_only = 6;
}
message PbDevices {
repeated PbDevice devices = 1;
}
// The rascsi server information
message PbServerInfo {
string rascsi_version = 1;
// Sorted by severity
repeated string available_log_levels = 2;
string current_log_level = 3;
string default_image_folder = 4;
// Files in the default folder
repeated string available_image_files = 5;
}