lichao
2021-04-20 64bff0caaf665c65125cdab2b144f3594d520002
proto/source/bhome_msg.proto
@@ -1,10 +1,12 @@
syntax = "proto3";
option optimize_for = LITE_RUNTIME;
option go_package="./bhome_msg";
// import "google/protobuf/descriptor.proto";
import "bhome_msg_api.proto";
import "error_msg.proto";
package bhome.msg;
package bhome_msg;
// message format : head_len(4) + head(BHMsgHead) + body_len(4) + body(variable types)
@@ -18,13 +20,6 @@
   bytes topic = 6; // for request route
}
message BHMsg { // deprecated
   bytes msg_id = 1;
   int64 timestamp = 2;
   int32 type = 3;
   repeated BHAddress route = 4; // for reply and proxy.
   bytes body = 5;
}
enum MsgType {
   kMsgTypeInvalid = 0;
@@ -52,7 +47,38 @@
}
message MsgSubscribe {
   MsgTopicList topics = 1;
}
message MsgUnsubscribe {
   MsgTopicList topics = 1;
}
message MsgRegisterRPC {
   MsgTopicList topics = 1;
}
service TopicRPC {
   rpc Query (MsgQueryTopic) returns (MsgQueryTopicReply);
   rpc Request (MsgRequestTopic) returns (MsgQueryTopicReply);
}
message MsgRequest {
   // oneof body;
   oneof request {
      MsgRegister register = 1;
      MsgRequestTopic topic_request = 2;
      MsgQueryTopic topic_query = 3;
   }
}
message MsgReply {
   ErrorMsg err_msg = 1;
   // oneof reply
}
message BHMsgBody {
   oneof reqrep {
      MsgRequest request = 1;
      MsgReply reply = 2;
   }
}