syntax = "proto3"; message CommandResDTO { int32 time = 1; // Timestamp of the response int32 action = 2; // Action code indicating the type of command int32 dev_kind = 3; // Device kind information int32 package_nub = 4; // Total number of packages expected int32 package_now = 5; // Current package number int64 tid = 6; // Transaction ID? string data = 7; // Additional data payload repeated string es_to_sn = 8; // List of ES serial numbers repeated int64 mi_to_sn = 9; // List of MI serial numbers int32 system_total_a = 10; // System total for category A int32 system_total_b = 11; // System total for category B int32 system_total_c = 12; // System total for category C repeated int64 mi_sn_item_a = 13; // List of MI serial numbers for category A repeated int64 mi_sn_item_b = 14; // List of MI serial numbers for category B repeated int64 mi_sn_item_c = 15; // List of MI serial numbers for category C } message CommandReqDTO { string dtu_sn = 1; // Data Terminal Unit (DTU) serial number int32 time = 2; // Timestamp of the request int32 action = 3; // Action code indicating the type of command int32 package_now = 4; // Current package number int32 err_code = 5; // Error code (if any) int64 tid = 6; // Transaction ID } message ESOperatingStatusMO { string es_sn = 1; // ES serial number int32 progress_rate = 2; // Progress rate of the operation } message MIOperatingStatusMO { int64 mi_sn = 1; // MI serial number int32 progress_rate = 2; // Progress rate of the operation } message MIErrorStatusMO { int64 mi_sn = 1; // MI serial number int64 error_code = 2; // Error code associated with the MI } message ESSucStatusMO { string es_sn = 1; // ES serial number } message ESErrorStatusMO { string es_sn = 1; // ES serial number int64 error_code = 2; // Error code associated with the ES } message CommandStatusReqDTO { string dtu_sn = 1; // Data Terminal Unit (DTU) serial number int32 time = 2; // Timestamp of the request int32 action = 3; // Action code indicating the type of command int32 package_nub = 4; // Total number of packages expected int32 package_now = 5; // Current package number int64 tid = 6; // Transaction ID repeated string es_sns_sucs = 7; // List of ES serial numbers with successful execution repeated int64 mi_sns_sucs = 8; // List of MI serial numbers with successful execution repeated string es_sns_failds = 9; // List of ES serial numbers with failed execution repeated int64 mi_sns_failds = 10; // List of MI serial numbers with failed execution repeated ESOperatingStatusMO es_mOperatingStatus = 11; // List of ES operating statuses repeated MIOperatingStatusMO mi_mOperatingStatus = 12; // List of MI operating statuses repeated MIErrorStatusMO mi_mErrorStatus = 13; // List of MI error statuses repeated ESSucStatusMO es_mSucStatus = 14; // List of successful ES statuses repeated ESErrorStatusMO es_mErrorStatus = 15; // List of error ES statuses } message CommandStatusResDTO { int32 time = 1; // Timestamp of the response int32 action = 2; // Action code indicating the type of command int32 package_now = 3; // Current package number int64 tid = 4; // Transaction ID int32 err_code = 5; // Error code (if any) }