| | |
| | | syntax = "proto3"; |
| | | |
| | | option optimize_for = LITE_RUNTIME; |
| | | option go_package="./bhome_msg"; |
| | | |
| | | package bhome.msg; |
| | | // import "google/protobuf/descriptor.proto"; |
| | | import "bhome_msg_api.proto"; |
| | | import "error_msg.proto"; |
| | | |
| | | // message format : header(BHMsgHead) + body(variable types) |
| | | message BHAddress { |
| | | bytes mq_id = 1; // mqid, uuid |
| | | bytes ip = 2; // |
| | | int32 port = 3; |
| | | } |
| | | package bhome_msg; |
| | | |
| | | message ProcInfo |
| | | { |
| | | bytes id = 1; |
| | | bytes name = 2; |
| | | bytes public_info = 3; |
| | | bytes private_info = 4; |
| | | } |
| | | |
| | | // message format : head_len(4) + head(BHMsgHead) + body_len(4) + body(variable types) |
| | | |
| | | message BHMsgHead { |
| | | bytes msg_id = 1; |
| | | repeated BHAddress route = 2; // for reply and proxy. |
| | | int64 timestamp = 3; |
| | | int32 type = 4; |
| | | ProcInfo proc = 5; |
| | | bytes proc_id = 5; |
| | | 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; |
| | | kMsgTypeRequest = 1; |
| | | kMsgTypeReply = 2; |
| | | kMsgTypePublish = 3; |
| | | kMsgTypeSubscribe = 4; |
| | | kMsgTypeUnsubscribe = 5; |
| | | kMsgTypeRawData = 1; |
| | | |
| | | kMsgTypeProcQueryTopic = 6; |
| | | kMsgTypeProcQueryTopicReply = 7; |
| | | kMsgTypeProcRegisterTopics = 8; |
| | | kMsgTypeProcHeartbeat = 9; |
| | | kMsgTypeCommonReply = 2; |
| | | |
| | | kMsgTypeRegister= 10; |
| | | // kMsgTypeRegisterReply= 11; |
| | | kMsgTypeHeartbeat = 12; |
| | | // kMsgTypeHeartbeatReply = 13; |
| | | kMsgTypeQueryTopic = 14; |
| | | kMsgTypeQueryTopicReply = 15; |
| | | kMsgTypeRequestTopic = 16; |
| | | kMsgTypeRequestTopicReply = 17; |
| | | kMsgTypeRegisterRPC = 18; |
| | | // reply |
| | | |
| | | kMsgTypePublish = 20; |
| | | // kMsgTypePublishReply = 21; |
| | | kMsgTypeSubscribe = 22; |
| | | // kMsgTypeSubscribeReply = 23; |
| | | kMsgTypeUnsubscribe = 24; |
| | | // kMsgTypeUnsubscribeReply = 25; |
| | | |
| | | } |
| | | |
| | | message DataPub { |
| | | bytes topic = 1; |
| | | bytes data = 2; |
| | | message MsgSubscribe { |
| | | MsgTopicList topics = 1; |
| | | } |
| | | message MsgUnsubscribe { |
| | | MsgTopicList topics = 1; |
| | | } |
| | | message MsgRegisterRPC { |
| | | MsgTopicList topics = 1; |
| | | } |
| | | |
| | | message DataSub { |
| | | repeated bytes topics = 1; |
| | | service TopicRPC { |
| | | rpc Query (MsgQueryTopic) returns (MsgQueryTopicReply); |
| | | rpc Request (MsgRequestTopic) returns (MsgQueryTopicReply); |
| | | } |
| | | |
| | | message DataRequest { |
| | | bytes topic = 1; |
| | | bytes data = 2; |
| | | message MsgRequest { |
| | | // oneof body; |
| | | oneof request { |
| | | MsgRegister register = 1; |
| | | MsgRequestTopic topic_request = 2; |
| | | MsgQueryTopic topic_query = 3; |
| | | } |
| | | } |
| | | |
| | | message DataReply { |
| | | bytes data = 1; |
| | | message MsgReply { |
| | | ErrorMsg err_msg = 1; |
| | | // oneof reply |
| | | } |
| | | |
| | | message DataProcRegister |
| | | { |
| | | ProcInfo proc = 1; |
| | | repeated bytes topics = 2; |
| | | message BHMsgBody { |
| | | oneof reqrep { |
| | | MsgRequest request = 1; |
| | | MsgReply reply = 2; |
| | | } |
| | | } |
| | | |
| | | message DataProcHeartbeat |
| | | { |
| | | ProcInfo proc = 1; |
| | | } |
| | | |
| | | message DataProcQueryTopic { |
| | | bytes topic = 1; |
| | | } |
| | | |
| | | message DataProcQueryTopicReply { |
| | | BHAddress address = 1; |
| | | } |
| | | |
| | | service TopicRequestReplyService { |
| | | rpc Request (DataRequest) returns (DataReply); |
| | | } |