github.com/aristanetworks/goarista@v0.0.0-20240514173732-cca2755bbd44/gnmireverse/gnmireverse.proto (about) 1 // Copyright (c) 2020 Arista Networks, Inc. 2 // Use of this source code is governed by the Apache License 2.0 3 // that can be found in the COPYING file. 4 5 syntax = "proto3"; 6 7 import "github.com/openconfig/gnmi/proto/gnmi/gnmi.proto"; 8 import "google/protobuf/empty.proto"; 9 10 // Package gNMIReverse defines a service specification that reverses the 11 // direction of the dial for gNMI Subscribe and gNMI Get. 12 // 13 // gNMI is a "dial-in" service, where the telemetry collector must make a 14 // connection to the gNMI target. With gNMIReverse, a client can be run 15 // alongside the gNMI target and then "dial-out" to a gNMIReverse server 16 // to send streaming data. 17 package gnmireverse; 18 19 option go_package = "github.com/aristanetworks/goarista/gnmireverse"; 20 21 service gNMIReverse { 22 // Publish allows the client to publish gNMI SubscribeResponses to the 23 // collector server. The client is typically run alongside the gNMI target 24 // and forwards SubscribeResponses from the target to the collector server. 25 // The request is specified by the client. 26 rpc Publish(stream gnmi.SubscribeResponse) returns (google.protobuf.Empty); 27 // PublishGet allows the client to publish gNMI GetResponses to the 28 // collector server. The client is typically run alongside the gNMI target 29 // and forwards GetResponses from the target to the collector server. 30 // The request and sample interval are specified by the client. 31 rpc PublishGet(stream gnmi.GetResponse) returns (google.protobuf.Empty); 32 }