syntax = "proto3"; package mqtt; import "google/protobuf/timestamp.proto"; message Payload { oneof payload { MqttEntityPayload MqttEntityPayload = 1; MqttEntityPayloadList MqttEntityPayloadList = 2; } } message MqttEntityPayload { int32 tracking_id = 1; int32 class_id = 2; optional float class_confidence = 3; optional string data = 4; double lat = 5; double long = 6; // Heading in radians, standard mathematical convention (0 = east, counter-clockwise, negative allowed). // See https://en.wikipedia.org/wiki/Angle#Measuring_angles optional float heading = 7; optional float pitch = 8; optional float level = 15; optional float velocity_ms = 9; optional float acceleration_ms = 10; optional float object_height = 11; optional float object_width = 12; optional float object_length = 13; optional string time = 14; } // Our address book file is just one of these. message MqttEntityPayloadList { repeated MqttEntityPayload measurements = 1; }