Shared protobuf definitions and generated code for the NEVR telemetry ecosystem.
This repository contains the protocol interface used by:
- nevr-agent - Recording and streaming CLI
- nevrcap - High-performance telemetry processing library
- nakama - Game server backend
proto/ # Protobuf definitions
├── api/ # REST API definitions
├── apigame/ # Game-specific API
├── apigrpc/ # gRPC service definitions
├── rtapi/ # Real-time API (WebSocket)
└── telemetry/ # Telemetry frame definitions
gen/ # Generated source code
├── go/ # Go packages
├── python/ # Python modules
├── csharp/ # C# classes
├── cpp/ # C++ headers
├── docs/ # Documentation
└── openapiv2/ # OpenAPI specifications
common/ # Shared C++ utilities
serviceapi/ # Go service API helpers
Protocol Buffer files have already been generated and are included in the repository.
import (
"github.com/echotools/nevr-common/v4/gen/go/telemetry/v1"
"github.com/echotools/nevr-common/v4/gen/go/rtapi/v1"
)
// Use telemetry types
frame := &telemetry.LobbySessionStateFrame{
SessionId: "...",
// ...
}from gen.python.telemetry.v1 import telemetry_pb2
frame = telemetry_pb2.LobbySessionStateFrame()
frame.session_id = "..."using Telemetry.V1;
var frame = new LobbySessionStateFrame {
SessionId = "..."
};No additional code generation is required unless you modify the .proto files.
If you modify .proto files, regenerate the sources:
# Using buf (recommended)
buf generate
# Or using the build script
./scripts/build.sh- buf CLI
- Go 1.25+ toolchain
- protoc-gen-go, protoc-gen-go-grpc (for Go generation)
| nevr-common | nevr-agent | nevrcap | Go Version |
|---|---|---|---|
| v4.x | v1.x | v3.x | 1.25+ |
See LICENSE file for details.