syntax = "proto3"; package proto; //新增一个可选的package声明符,用来防止不同的消息类型有命名冲突 option go_package = "./pkg/proto;proto"; //这个选项表明生成go结构体所在的包 message AlarmRemindSkillRequest{ message AppInfo { string appId = 1; string requestId = 2; } message DevInfo { string mac = 1; string mid = 2; string vender = 3; string hid = 4;// 模组id string homeId = 5; //家庭id string uid = 6; // 用户id(可以空,语音入口一般无法识别用户) } AppInfo appInfo = 1; DevInfo devInfo = 2; message Command { string api = 1; // 意图 string extra = 2; // speech解析原字段 : 内部有content字段提取闹钟列表 string object = 3; // speech解析原字段:闹钟/提醒(日程) } Command command = 3; string asr_recognize = 4; } message AlarmRemindSkillResponse{ message Status { int32 code = 1; string msg = 2; } Status status = 1; } service AlarmRemindSkill { rpc HandleSpeechCommand (AlarmRemindSkillRequest) returns (AlarmRemindSkillResponse); }