RPCs
rpc Network(NetworkRequest) returns (NetworkResponse) {};
Request
message NetworkRequest {
RSI.RapidServer.RequestHeader header = 1;
optional NetworkConfig config = 2;
optional NetworkAction action = 3;
}
Response
message NetworkResponse {
RSI.RapidServer.ResponseHeader header = 1;
optional NetworkConfig config = 2;
optional NetworkAction action = 3;
optional NetworkInfo info = 4;
optional NetworkStatus status = 5;
}
Config
Action
message NetworkAction {
optional Shutdown shutdown = 1;
optional NetworkStart start = 2;
optional TimingMetrics timing_metrics = 3;
repeated NetworkOutput network_output = 4;
message Shutdown { }
message NetworkStart {
optional uint32 timeout_milliseconds = 3;
}
message TimingMetrics {
optional uint32 low_threshold = 1;
optional uint32 high_threshold = 2;
optional bool clear = 3;
optional bool enable = 4;
}
message NetworkOutput {
int32 index = 1;
optional bool override = 2;
optional int64 override_value = 3;
}
}
Info
message NetworkInfo {
int32 node_count = 2;
bool network_synchronized = 3;
int32 network_input_count = 4;
int32 network_output_count = 5;
repeated NetworkInputInfo network_inputs = 6;
repeated NetworkOutputInfo network_outputs = 7;
message NetworkInputInfo {
int32 index = 1;
string name = 2;
int64 address = 3;
int32 bit_size = 4;
int32 bit_offset = 5;
string data_type = 6;
}
message NetworkOutputInfo {
int32 index = 1;
string name = 2;
int64 sent_value_address = 3;
int64 override_value_address = 4;
int64 firmware_value_address = 5;
int32 bit_size = 6;
int32 bit_offset = 7;
string data_type = 8;
}
}
Status
message NetworkStatus {
int32 network_counter = 2;
string network_log = 4;
TimingMetricsStatus timing_metrics = 5;
repeated NetworkInputStatus network_inputs = 6;
repeated NetworkOutputStatus network_outputs = 7;
message TimingMetricsStatus {
uint32 delta = 1;
uint32 min_recorded = 2;
uint32 max_recorded = 3;
uint32 low_count = 4;
uint32 high_count = 5;
}
message NetworkInputStatus {
int32 index = 1;
int64 value = 2;
}
message NetworkOutputStatus {
int32 index = 1;
int64 sent_value = 2;
int64 override_value = 3;
int64 firmware_value = 4;
bool override_enabled = 5;
}
}