syntax = "proto3"; package dialin; service gRPCConfigOper { rpc Subscribe(SubsArgs) returns(stream SubsReply) {}; rpc Cancel(CancelArgs) returns(CancelReply) {}; } message Path { string path = 1; } message SubsArgs { uint64 request_id = 1; uint32 encoding = 2; repeated Destination destination = 3; //Path to a section of operational state of interest (the sensor). repeated Path path = 5; //The accuracy of the collected data reported by the device //to the collector uint64 sample_interval = 6; //Maximum time interval in seconds that may pass //between updates from a device to a telemetry collector. //If this interval expires, but there is no updated data to //send (such as if suppress_updates has been configured), the //device must send a telemetry message to the collector. uint64 heartbeat_interval = 7; //Boolean flag to control suppression of redundant //telemetry updates to the collector platform. If this flag is //set to TRUE, then the collector will only send an update at //the configured interval if a subscribed data value has //changed. Otherwise, the device will not send an update to //the collector until expiration of the heartbeat interval. bool suppress_redundant = 8; //range "0..63" //The dscp type represents a Differentiated Services Code Point //that may be used for marking packets in a traffic stream. //In the value set and its semantics, this type is equivalent //to the Dscp textual convention of the SMIv2. uint32 originated_qos_marking = 9; } message Destination { // IP address of the telemetry stream destination string destination_address = 1; // Protocol (udp or tcp) port number for the telemetry // stream destination uint32 destination_port = 2; } message SubsReply { uint32 subscription_id = 1; uint64 request_id = 2; string response_code = 3; //containing the data described by the Telemetry message //defined in hw_telemetry.proto bytes message = 4; } message CancelArgs { uint64 request_id = 1; uint32 subscription_id = 2; } message CancelReply { uint64 request_id = 1; string response_code = 2; string message = 3; }