syntax = "proto3"; package proto; //新增一个可选的package声明符,用来防止不同的消息类型有命名冲突 option go_package = "./pkg/proto;proto"; //这个选项表明生成go结构体所在的包 message AlarmRemindSkillRequest{ message AppInfo { string appId = 1; string requestId = 2; } message UserInfo { string uid = 1; string hid = 2; } message DevInfo { string mac = 1; string tarMac = 2; } AppInfo appInfo = 1; DevInfo devInfo = 2; UserInfo userInfo = 3; message Command { string api = 1; string repeat = 2; int64 timestamp = 3; string date = 4; string time = 5; string event = 6; string period = 7; string object = 8; // 区分品类,闹钟/日程(提醒) } Command command = 4; string asr_recognize = 5; } message AlarmRemindSkillResponse{ message Status { int32 code = 1; string msg = 2; } Status status = 1; } service AlarmRemindSkill { rpc HandleSpeechCommand (AlarmRemindSkillRequest) returns (AlarmRemindSkillResponse); }