3 import "dccl/option_extensions.proto";
4 import "jaiabot/messages/health.proto";
5 import "goby/middleware/protobuf/coroner.proto";
6 import "jaiabot/messages/geographic_coordinate.proto";
7 import "jaiabot/messages/option_extensions.proto";
9 package jaiabot.protobuf;
17 required uint32 hub_id = 1 [(jaia.field).rest_api.presence = GUARANTEED];
18 required uint32 fleet_id = 2 [(jaia.field).rest_api.presence = GUARANTEED];
19 required uint64 time = 3 [
20 (dccl.field) = { units { prefix: "micro" derived_dimensions: "time" } },
21 (jaia.field).rest_api.presence = GUARANTEED
24 optional goby.middleware.protobuf.HealthState health_state = 4
25 [(jaia.field).rest_api.presence = GUARANTEED];
26 repeated Error error = 5 [
27 (dccl.field).max_repeat = 255,
28 (jaia.field).rest_api.presence = GUARANTEED
29 ]; // set max_repeat to a high value as we're not sending this over DCCL
30 // for now, but populate_status_from_health uses this value
31 repeated Warning warning = 6 [
32 (dccl.field).max_repeat = 255,
33 (jaia.field).rest_api.presence = GUARANTEED
36 optional GeographicCoordinate location = 10
37 [(jaia.field).rest_api.presence = GUARANTEED];
39 repeated uint32 bot_ids_in_radio_file = 11 [(dccl.field).max_repeat = 255];
41 optional LinuxHardwareStatus linux_hardware_status = 12;
43 message BotOffloadData
45 required uint32 bot_id = 1;
46 optional int32 data_offload_percentage = 2;
47 optional bool offload_succeeded = 3;
49 optional BotOffloadData bot_offload = 13;
51 optional uint64 received_time = 14 [
54 units { prefix: "micro" derived_dimensions: "time" }
56 (jaia.field).rest_api.presence = GUARANTEED
61 required uint32 id = 1 [(jaia.field).rest_api.presence = GUARANTEED];
62 required uint64 last_status_time = 2 [
64 units { prefix: "micro" derived_dimensions: "time" }
66 (jaia.field).rest_api.presence = GUARANTEED
69 repeated KnownBot known_bot = 15
70 [(jaia.field).rest_api.presence = GUARANTEED];