SwapStation_WebApp/backend/proto/vec_payload_chgSt.proto

162 lines
4.0 KiB
Protocol Buffer

syntax = "proto2";
enum eventType_e {
EVENT_SWAP_START = 0x200;
EVENT_BATTERY_ENTRY = 0x201;
EVENT_BATTERY_EXIT = 0x202;
EVENT_ACTIVITY_FAILED = 0x203;
EVENT_SWAP_ABORTED = 0x204;
EVENT_BATFAULT_ALARM = 0x205;
EVENT_SLOT_LOCK_ENEGAGED = 0x206;
EVENT_SWAP_ENDED = 0x207;
EVENT_CHGFAULT_ALARM = 0x208;
EVENT_NFC_SCAN = 0x209;
EVENT_SLOT_LOCK_DISENEGAGED = 0x20A;
EVENT_REVERSE_SWAP = 0x20B;
}
enum jobType_e {
JOBTYPE_NONE = 0;
JOBTYPE_GET_STATUS_OF_A_JOB = 0x01;
JOBTYPE_SWAP_START = 0x100;
JOBTYPE_CHARGER_ENABLE_DISABLE = 0x101;
JOBTYPE_GATE_OPEN_CLOSE = 0x102;
JOBTYPE_TRANSACTION_ABORT = 0x103;
JOBTYPE_REBOOT = 0x104;
JOBTYPE_SWAP_DENY = 0x105;
JOBTYPE_LANGUAGE_UPDATE = 0x106;
}
enum jobResult_e {
JOB_RESULT_UNKNOWN = 0;
JOB_RESULT_SUCCESS = 1;
JOB_RESULT_REJECTED = 2;
JOB_RESULT_TIMEOUT = 3;
}
enum jobStatus_e {
JOB_STATUS_IDLE = 0;
JOB_STATUS_PENDING = 1;
JOB_STATUS_EXECUTING = 2;
JOB_STATUS_EXECUTED = 3;
}
message slotLevelPayload{
optional uint32 batteryPresent = 1;
optional uint32 chargerPresent = 2;
optional uint32 doorLockStatus = 3;
optional uint32 doorStatus = 4;
optional uint32 voltage = 5;
optional int32 current = 6;
optional uint32 batteryFaultCode = 7;
optional uint32 chargerFaultCode = 8;
optional int32 batteryMaxTemp = 9;
optional int32 chargerMaxTemp= 10;
optional string batteryIdentification = 11;
optional uint32 batteryMode = 12;
optional uint32 chargerMode = 13;
optional int32 slotTemperature = 14;
optional uint32 gasSensor = 15;
optional uint32 soc=16;
optional uint32 ts = 17;
}
message mainPayload{
required uint32 ts = 1;
required string deviceId = 2;
required string sessionId = 3;
repeated slotLevelPayload slotLevelPayload = 4;
optional uint32 backupSupplyStatus = 5;
repeated uint32 switchStatus = 6;
optional uint32 stationStatus = 7;
optional uint32 stationDiagnosticCode = 8;
repeated float coordinates = 9;
}
enum swapAbortReason_e{
ABORT_UNKNOWN=0;
ABORT_BAT_EXIT_TIMEOUT=1;
ABORT_BAT_ENTRY_TIMEOUT=2;
ABORT_DOOR_CLOSE_TIMEOUT=3;
ABORT_DOOR_OPEN_TIMEOUT=4;
ABORT_INVALID_PARAM=5;
ABORT_REMOTE_REQUESTED=6;
ABORT_INVALID_BATTERY=7;
}
enum swapDenyReason_e{
SWAP_DENY_INSUFFICIENT_BAL=1;
SWAP_DENY_INVALID_NFC=2;
SWAP_DENY_BATTERY_UNAVAILABLE=3;
}
enum languageType_e{
LANGUAGE_TYPE_ENGLISH = 1;
LANGUAGE_TYPE_HINDI = 2;
LANGUAGE_TYPE_KANNADA = 3;
LANGUAGE_TYPE_TELUGU = 4;
}
message nfcPayload_s{
required string manufacturingData = 1;
required string customData = 2;
}
message eventData_s {
optional nfcPayload_s nfcData = 1;
optional string batteryIdentification = 2;
optional uint32 activityFailureReason = 3;
optional swapAbortReason_e swapAbortReason = 4;
optional uint32 swapTime = 5;
optional uint32 faultCode = 6;
optional uint32 doorStatus = 7;
optional uint32 slotId = 8;
}
message eventPayload {
required uint32 ts = 1;
required string deviceId = 2;
required eventType_e eventType = 3;
required string sessionId = 4;
optional eventData_s eventData = 5;
}
message rpcData_s {
optional string sessionId = 1;
repeated uint32 slotsData = 2;
}
message slotControl_s {
required uint32 slotId = 1;
required uint32 state = 2;
}
message getJobStatusByJobId_s{
required string jobId = 1;
}
message rpcRequest {
required uint32 ts = 1;
required string jobId = 2;
required jobType_e jobType = 3;
optional rpcData_s rpcData = 4;
optional slotControl_s slotInfo = 5;
optional swapDenyReason_e swapDeny = 8;
optional getJobStatusByJobId_s getJobStatusByJobId = 9;
optional languageType_e languageType = 10;
}
message jobStatusByJobIdResponse_s{
required string jobId = 1;
required jobStatus_e jobStatus = 2;
required jobResult_e jobResult = 3;
}
message rpcResponse {
required uint32 ts = 1;
required string deviceId = 2;
required string jobId = 3;
required jobStatus_e jobStatus = 4;
required jobResult_e jobResult = 5;
optional jobStatusByJobIdResponse_s jobStatusByJobIdResponse = 6;
}