//bytes替代string 防止乱码 syntax = "proto3"; package stream; //ption cc_generic_services = true; option java_multiple_files = true; option java_package = "io.grpc.examples.stream"; option java_outer_classname = "StreamProto"; option objc_class_prefix = "ST"; message RequestInfo { enum Status { GET = 0; SET = 1; LOAD = 2; //载入 LOADOUT = 3; //载出 SUPPLYAXLEAFTER = 4; //供粉轴后移 SUPPLYAXLEFRONT = 5; //供粉轴前移 SUPPLYAXLEAFTERCONTSTART = 6; //供粉轴后移连续开始 SUPPLYAXLEAFTERCONTSTOP = 7; //供粉轴后移连续停止 SUPPLYAXLEFRONTCONTSTART = 8; //供粉轴前移连续开始 SUPPLYAXLEFRONTCONTSTOP = 9; //供粉轴前移连续停止 PAVEAXLEFRONT = 10; // 铺粉臂前移 PAVEAXLEFRONTCONTSTART = 11; //铺粉臂前移连续 PAVEAXLEFRONTCONTSTOP = 12; //铺粉臂前移连续 PAVEAXLEAFTER = 13; //铺粉臂后移 PAVEAXLEAFTERCONTSTART = 14; //铺粉臂后移连续开始 PAVEAXLEAFTERCONTSTOP = 15; //铺粉臂后移连续停止 PAVEAXLECLEAR = 16; //铺粉臂清零 PRINTAXLEUP =17; //成型缸上升 PRINTAXLEUPCONTSTART = 18; //成型缸连续上升开始 PRINTAXLEUPCONTSTOP = 19; //成型缸连续上升停止 PRINTAXLEDOWN = 20; //成型缸下降 PRINTAXLEDOWNCONTSTART = 21; //成型缸连续下降开始 PRINTAXLEDOWNCONTSTOP = 22; //成型缸连续下降停止 PRINTAXLECLEAR = 23; //成型缸清零 TRANSFERAXIELEFT = 24; //移栽轴左移 TRANSFERAXIELEFTCONTSTART = 25; //移栽轴连续左移开始 TRANSFERAXIELEFTCONTSTOP = 26; //移栽轴连续左移停止 TRANSFERAXIERIGHT = 27; //移栽轴右移 TRANSFERAXIERIGHTCONTSTART = 28; //移栽轴连续右移开始 TRANSFERAXIERIGHTCONTSTOP = 29; //移栽轴连续右移停止 TRANSFERAXIECLEAR = 30; //移栽轴清零 SCANERSTART = 31; //开始扫描 SCANERSTOP = 32; //停止扫描 STARTHEATINGSCANNERTEST = 33; //开始振镜预热测试 STOPHEATINGSCANNERTEST = 34; //停止振镜预热 } uint32 dataType = 1; bytes nameKey = 2; //参数key bytes strValue = 3; //value enum TYPE{ iBOOL = 0; iSHORT = 1; iUSHORT = 2; iINT = 3; iUINT = 4; iFLOAT = 5; iSTRING = 6; } TYPE valueType = 4; } message ResponseInfo { enum Status { ProcReadPLC0 = 0; //snap7 数据 ProcReadPLC1 = 1; ProcReadPLC2 = 2; ProcReadPLC3 = 3; ProcReadPLC4 = 4; ProcReadPLC5 = 5; ProcReadPLC6 = 6; ProcReadPLCData0 = 7; ALARM = 8; //报警 RESPOND = 9; //回应 TIMEDATA = 10; //定时数据 } Status dataType = 1; bool result = 2; bytes nameKey = 3; //参数key bytes strValue = 4; //value enum TYPE{ iBOOL = 0; iSHORT = 1; iUSHORT = 2; iINT = 3; iUINT = 4; iFLOAT = 5; iSTRING = 6; } TYPE valueType = 5; //数据类型 } service Stream { rpc Simple(RequestInfo) returns (ResponseInfo) {} // 简单模式 rpc ServerStream (RequestInfo) returns (stream ResponseInfo) {} // 服务端数据流模式 rpc ClientStream (stream RequestInfo) returns (ResponseInfo) {} // 客户端数据流模式 rpc AllStream (stream RequestInfo) returns (stream ResponseInfo) {} // 双向数据流模式 }