| syntax = "proto3"; |
| |
| option go_package = "github.com/opencord/voltha-protos/go/inter_container"; |
| |
| import "google/protobuf/any.proto"; |
| import "voltha_protos/openflow_13.proto"; |
| import public "voltha_protos/logical_device.proto"; |
| |
| package voltha; |
| |
| message StrType { |
| string val = 1; |
| } |
| |
| message IntType { |
| int64 val = 1; |
| } |
| |
| message BoolType { |
| bool val = 1; |
| } |
| |
| message Packet { |
| bytes payload = 1; |
| } |
| |
| message ErrorCode { |
| enum codes { |
| UNSUPPORTED_REQUEST = 0; |
| INVALID_PARAMETERS = 1; |
| } |
| } |
| |
| message Error { |
| ErrorCode code = 1; |
| string reason = 2; |
| } |
| |
| enum MessageType { |
| REQUEST = 0; |
| RESPONSE = 1; |
| DEVICE_DISCOVERED=2; |
| } |
| |
| message Header { |
| string id = 1; |
| MessageType type = 2; |
| string from_topic = 3; |
| string to_topic = 4; |
| string key_topic = 5; |
| int64 timestamp = 6; |
| } |
| |
| message Argument { |
| string key = 1; |
| google.protobuf.Any value = 2; |
| } |
| |
| message InterContainerMessage { |
| Header header = 1; |
| google.protobuf.Any body = 2; |
| } |
| |
| message InterContainerRequestBody { |
| string rpc = 2; |
| repeated Argument args = 3; |
| bool response_required = 4; |
| string reply_to_topic = 5; |
| } |
| |
| message InterContainerResponseBody { |
| bool success = 1; |
| google.protobuf.Any result = 3; |
| } |
| |
| message SwitchCapability { |
| openflow_13.ofp_desc desc = 1; |
| openflow_13.ofp_switch_features switch_features = 2; |
| } |
| |
| message PortCapability { |
| LogicalPort port = 1; |
| } |
| |
| message DeviceDiscovered { |
| string id = 1; |
| string parent_id = 2; |
| string device_type = 3; |
| string publisher = 4; |
| } |
| |
| message InterAdapterMessageType { |
| enum Types { |
| FLOW_REQUEST = 0; |
| FLOW_RESPONSE = 1; |
| OMCI_REQUEST = 2; |
| OMCI_RESPONSE = 3; |
| METRICS_REQUEST = 4; |
| METRICS_RESPONSE = 5; |
| ONU_IND_REQUEST = 6; |
| ONU_IND_RESPONSE = 7; |
| TECH_PROFILE_DOWNLOAD_REQUEST = 8; |
| } |
| } |
| |
| message InterAdapterHeader { |
| string id = 1; |
| InterAdapterMessageType.Types type = 2; |
| string from_topic = 3; |
| string to_topic = 4; |
| string to_device_id = 5; |
| string proxy_device_id = 6; |
| int64 timestamp = 7; |
| } |
| |
| message InterAdapterOmciMessage { |
| bytes message = 1; // OMCI_REQUEST or OMCI_RESPONSE |
| } |
| |
| message InterAdapterTechProfileDownloadMessage { |
| uint32 uni_id = 1; |
| string path = 2; |
| } |
| |
| message InterAdapterResponseBody { |
| bool status = 1; |
| oneof payload { |
| google.protobuf.Any body = 2; |
| InterAdapterOmciMessage omci = 3; // OMCI_REQUEST or OMCI_RESPONSE |
| } |
| } |
| |
| message InterAdapterMessage { |
| InterAdapterHeader header = 1; |
| google.protobuf.Any body = 2; |
| } |