1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/maps/fleetengine/v1/vehicles.proto 20 21package fleetengine 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 31 wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" 32) 33 34const ( 35 // Verify that this generated code is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 37 // Verify that runtime/protoimpl is sufficiently up-to-date. 38 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 39) 40 41// The state of a Vehicle. 42type VehicleState int32 43 44const ( 45 // Default, used for unspecified or unrecognized vehicle states. 46 VehicleState_UNKNOWN_VEHICLE_STATE VehicleState = 0 47 // The vehicle is not accepting new trips. 48 VehicleState_OFFLINE VehicleState = 1 49 // The vehicle is accepting new trips. 50 VehicleState_ONLINE VehicleState = 2 51) 52 53// Enum value maps for VehicleState. 54var ( 55 VehicleState_name = map[int32]string{ 56 0: "UNKNOWN_VEHICLE_STATE", 57 1: "OFFLINE", 58 2: "ONLINE", 59 } 60 VehicleState_value = map[string]int32{ 61 "UNKNOWN_VEHICLE_STATE": 0, 62 "OFFLINE": 1, 63 "ONLINE": 2, 64 } 65) 66 67func (x VehicleState) Enum() *VehicleState { 68 p := new(VehicleState) 69 *p = x 70 return p 71} 72 73func (x VehicleState) String() string { 74 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 75} 76 77func (VehicleState) Descriptor() protoreflect.EnumDescriptor { 78 return file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[0].Descriptor() 79} 80 81func (VehicleState) Type() protoreflect.EnumType { 82 return &file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[0] 83} 84 85func (x VehicleState) Number() protoreflect.EnumNumber { 86 return protoreflect.EnumNumber(x) 87} 88 89// Deprecated: Use VehicleState.Descriptor instead. 90func (VehicleState) EnumDescriptor() ([]byte, []int) { 91 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{0} 92} 93 94// How location features are set to behave on the device when battery saver is 95// on. 96// (https://developer.android.com/reference/android/os/PowerManager#getLocationPowerSaveMode()) 97type LocationPowerSaveMode int32 98 99const ( 100 // Undefined LocationPowerSaveMode 101 LocationPowerSaveMode_UNKNOWN_LOCATION_POWER_SAVE_MODE LocationPowerSaveMode = 0 102 // Either the location providers shouldn't be affected by battery saver, or 103 // battery saver is off. 104 LocationPowerSaveMode_LOCATION_MODE_NO_CHANGE LocationPowerSaveMode = 1 105 // The GPS based location provider should be disabled when battery saver is on 106 // and the device is non-interactive. 107 LocationPowerSaveMode_LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF LocationPowerSaveMode = 2 108 // All location providers should be disabled when battery saver is on and the 109 // device is non-interactive. 110 LocationPowerSaveMode_LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF LocationPowerSaveMode = 3 111 // All the location providers will be kept available, but location fixes 112 // should only be provided to foreground apps. 113 LocationPowerSaveMode_LOCATION_MODE_FOREGROUND_ONLY LocationPowerSaveMode = 4 114 // Location will not be turned off, but LocationManager will throttle all 115 // requests to providers when the device is non-interactive. 116 LocationPowerSaveMode_LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF LocationPowerSaveMode = 5 117) 118 119// Enum value maps for LocationPowerSaveMode. 120var ( 121 LocationPowerSaveMode_name = map[int32]string{ 122 0: "UNKNOWN_LOCATION_POWER_SAVE_MODE", 123 1: "LOCATION_MODE_NO_CHANGE", 124 2: "LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF", 125 3: "LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF", 126 4: "LOCATION_MODE_FOREGROUND_ONLY", 127 5: "LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF", 128 } 129 LocationPowerSaveMode_value = map[string]int32{ 130 "UNKNOWN_LOCATION_POWER_SAVE_MODE": 0, 131 "LOCATION_MODE_NO_CHANGE": 1, 132 "LOCATION_MODE_GPS_DISABLED_WHEN_SCREEN_OFF": 2, 133 "LOCATION_MODE_ALL_DISABLED_WHEN_SCREEN_OFF": 3, 134 "LOCATION_MODE_FOREGROUND_ONLY": 4, 135 "LOCATION_MODE_THROTTLE_REQUESTS_WHEN_SCREEN_OFF": 5, 136 } 137) 138 139func (x LocationPowerSaveMode) Enum() *LocationPowerSaveMode { 140 p := new(LocationPowerSaveMode) 141 *p = x 142 return p 143} 144 145func (x LocationPowerSaveMode) String() string { 146 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 147} 148 149func (LocationPowerSaveMode) Descriptor() protoreflect.EnumDescriptor { 150 return file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[1].Descriptor() 151} 152 153func (LocationPowerSaveMode) Type() protoreflect.EnumType { 154 return &file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[1] 155} 156 157func (x LocationPowerSaveMode) Number() protoreflect.EnumNumber { 158 return protoreflect.EnumNumber(x) 159} 160 161// Deprecated: Use LocationPowerSaveMode.Descriptor instead. 162func (LocationPowerSaveMode) EnumDescriptor() ([]byte, []int) { 163 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{1} 164} 165 166// Status of the battery, whether full or charging etc. 167type BatteryStatus int32 168 169const ( 170 // Battery status unknown. 171 BatteryStatus_UNKNOWN_BATTERY_STATUS BatteryStatus = 0 172 // Battery is being charged. 173 BatteryStatus_BATTERY_STATUS_CHARGING BatteryStatus = 1 174 // Battery is discharging. 175 BatteryStatus_BATTERY_STATUS_DISCHARGING BatteryStatus = 2 176 // Battery is full. 177 BatteryStatus_BATTERY_STATUS_FULL BatteryStatus = 3 178 // Battery is not charging. 179 BatteryStatus_BATTERY_STATUS_NOT_CHARGING BatteryStatus = 4 180 // Battery is low on power. 181 BatteryStatus_BATTERY_STATUS_POWER_LOW BatteryStatus = 5 182) 183 184// Enum value maps for BatteryStatus. 185var ( 186 BatteryStatus_name = map[int32]string{ 187 0: "UNKNOWN_BATTERY_STATUS", 188 1: "BATTERY_STATUS_CHARGING", 189 2: "BATTERY_STATUS_DISCHARGING", 190 3: "BATTERY_STATUS_FULL", 191 4: "BATTERY_STATUS_NOT_CHARGING", 192 5: "BATTERY_STATUS_POWER_LOW", 193 } 194 BatteryStatus_value = map[string]int32{ 195 "UNKNOWN_BATTERY_STATUS": 0, 196 "BATTERY_STATUS_CHARGING": 1, 197 "BATTERY_STATUS_DISCHARGING": 2, 198 "BATTERY_STATUS_FULL": 3, 199 "BATTERY_STATUS_NOT_CHARGING": 4, 200 "BATTERY_STATUS_POWER_LOW": 5, 201 } 202) 203 204func (x BatteryStatus) Enum() *BatteryStatus { 205 p := new(BatteryStatus) 206 *p = x 207 return p 208} 209 210func (x BatteryStatus) String() string { 211 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 212} 213 214func (BatteryStatus) Descriptor() protoreflect.EnumDescriptor { 215 return file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[2].Descriptor() 216} 217 218func (BatteryStatus) Type() protoreflect.EnumType { 219 return &file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[2] 220} 221 222func (x BatteryStatus) Number() protoreflect.EnumNumber { 223 return protoreflect.EnumNumber(x) 224} 225 226// Deprecated: Use BatteryStatus.Descriptor instead. 227func (BatteryStatus) EnumDescriptor() ([]byte, []int) { 228 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{2} 229} 230 231// Type of the charger being used to charge the battery. 232type PowerSource int32 233 234const ( 235 // Power source unknown. 236 PowerSource_UNKNOWN_POWER_SOURCE PowerSource = 0 237 // Power source is an AC charger. 238 PowerSource_POWER_SOURCE_AC PowerSource = 1 239 // Power source is a USB port. 240 PowerSource_POWER_SOURCE_USB PowerSource = 2 241 // Power source is wireless. 242 PowerSource_POWER_SOURCE_WIRELESS PowerSource = 3 243 // Battery is unplugged. 244 PowerSource_POWER_SOURCE_UNPLUGGED PowerSource = 4 245) 246 247// Enum value maps for PowerSource. 248var ( 249 PowerSource_name = map[int32]string{ 250 0: "UNKNOWN_POWER_SOURCE", 251 1: "POWER_SOURCE_AC", 252 2: "POWER_SOURCE_USB", 253 3: "POWER_SOURCE_WIRELESS", 254 4: "POWER_SOURCE_UNPLUGGED", 255 } 256 PowerSource_value = map[string]int32{ 257 "UNKNOWN_POWER_SOURCE": 0, 258 "POWER_SOURCE_AC": 1, 259 "POWER_SOURCE_USB": 2, 260 "POWER_SOURCE_WIRELESS": 3, 261 "POWER_SOURCE_UNPLUGGED": 4, 262 } 263) 264 265func (x PowerSource) Enum() *PowerSource { 266 p := new(PowerSource) 267 *p = x 268 return p 269} 270 271func (x PowerSource) String() string { 272 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 273} 274 275func (PowerSource) Descriptor() protoreflect.EnumDescriptor { 276 return file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[3].Descriptor() 277} 278 279func (PowerSource) Type() protoreflect.EnumType { 280 return &file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[3] 281} 282 283func (x PowerSource) Number() protoreflect.EnumNumber { 284 return protoreflect.EnumNumber(x) 285} 286 287// Deprecated: Use PowerSource.Descriptor instead. 288func (PowerSource) EnumDescriptor() ([]byte, []int) { 289 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{3} 290} 291 292// Vehicle type categories 293type Vehicle_VehicleType_Category int32 294 295const ( 296 // Default, used for unspecified or unrecognized vehicle types. 297 Vehicle_VehicleType_UNKNOWN Vehicle_VehicleType_Category = 0 298 // An automobile. 299 Vehicle_VehicleType_AUTO Vehicle_VehicleType_Category = 1 300 // Any vehicle that acts as a taxi. 301 Vehicle_VehicleType_TAXI Vehicle_VehicleType_Category = 2 302 // Generally, a vehicle with a large storage capacity. 303 Vehicle_VehicleType_TRUCK Vehicle_VehicleType_Category = 3 304 // A motorcycle, moped, or other two-wheeled vehicle 305 Vehicle_VehicleType_TWO_WHEELER Vehicle_VehicleType_Category = 4 306) 307 308// Enum value maps for Vehicle_VehicleType_Category. 309var ( 310 Vehicle_VehicleType_Category_name = map[int32]string{ 311 0: "UNKNOWN", 312 1: "AUTO", 313 2: "TAXI", 314 3: "TRUCK", 315 4: "TWO_WHEELER", 316 } 317 Vehicle_VehicleType_Category_value = map[string]int32{ 318 "UNKNOWN": 0, 319 "AUTO": 1, 320 "TAXI": 2, 321 "TRUCK": 3, 322 "TWO_WHEELER": 4, 323 } 324) 325 326func (x Vehicle_VehicleType_Category) Enum() *Vehicle_VehicleType_Category { 327 p := new(Vehicle_VehicleType_Category) 328 *p = x 329 return p 330} 331 332func (x Vehicle_VehicleType_Category) String() string { 333 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 334} 335 336func (Vehicle_VehicleType_Category) Descriptor() protoreflect.EnumDescriptor { 337 return file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[4].Descriptor() 338} 339 340func (Vehicle_VehicleType_Category) Type() protoreflect.EnumType { 341 return &file_google_maps_fleetengine_v1_vehicles_proto_enumTypes[4] 342} 343 344func (x Vehicle_VehicleType_Category) Number() protoreflect.EnumNumber { 345 return protoreflect.EnumNumber(x) 346} 347 348// Deprecated: Use Vehicle_VehicleType_Category.Descriptor instead. 349func (Vehicle_VehicleType_Category) EnumDescriptor() ([]byte, []int) { 350 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{0, 0, 0} 351} 352 353// Vehicle metadata. 354type Vehicle struct { 355 state protoimpl.MessageState 356 sizeCache protoimpl.SizeCache 357 unknownFields protoimpl.UnknownFields 358 359 // The unique name for this vehicle. 360 // The format is providers/{provider}/vehicles/{vehicle} 361 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 362 // The vehicle state. 363 VehicleState VehicleState `protobuf:"varint,2,opt,name=vehicle_state,json=vehicleState,proto3,enum=maps.fleetengine.v1.VehicleState" json:"vehicle_state,omitempty"` 364 // Supported trip types. 365 SupportedTripTypes []TripType `protobuf:"varint,3,rep,packed,name=supported_trip_types,json=supportedTripTypes,proto3,enum=maps.fleetengine.v1.TripType" json:"supported_trip_types,omitempty"` 366 // List of IDs for trips in progress. 367 CurrentTrips []string `protobuf:"bytes,4,rep,name=current_trips,json=currentTrips,proto3" json:"current_trips,omitempty"` 368 // Last reported location of the vehicle. 369 LastLocation *VehicleLocation `protobuf:"bytes,5,opt,name=last_location,json=lastLocation,proto3" json:"last_location,omitempty"` 370 // Maximum capacity of the vehicle. This is the total numbers of riders 371 // on trips this vehicle can contain. The driver is not considered in 372 // this value. This value must be greater than or equal to one. 373 MaximumCapacity int32 `protobuf:"varint,6,opt,name=maximum_capacity,json=maximumCapacity,proto3" json:"maximum_capacity,omitempty"` 374 // The current available capacity of the vehicle. This is the 375 // maximum_capacity minus the current number of riders. 376 AvailableCapacity int32 `protobuf:"varint,7,opt,name=available_capacity,json=availableCapacity,proto3" json:"available_capacity,omitempty"` 377 // List of vehicle service attributes. 378 Attributes []*VehicleAttribute `protobuf:"bytes,8,rep,name=attributes,proto3" json:"attributes,omitempty"` 379 // The type of this Vehicle. Can be filtered during SearchVehicles. Also 380 // influences ETA and route calculations. 381 VehicleType *Vehicle_VehicleType `protobuf:"bytes,9,opt,name=vehicle_type,json=vehicleType,proto3" json:"vehicle_type,omitempty"` 382 // License plate information for the vehicle. 383 LicensePlate *LicensePlate `protobuf:"bytes,10,opt,name=license_plate,json=licensePlate,proto3" json:"license_plate,omitempty"` 384 // Deprecated. Use vehicle.waypoint instead. 385 // 386 // Deprecated: Do not use. 387 Route []*TerminalLocation `protobuf:"bytes,12,rep,name=route,proto3" json:"route,omitempty"` 388 // The polyline specifying the route the driver app intends to take to 389 // the next waypoint. Your driver app updates this every time a waypoint is 390 // passed or the driver reroutes. This list is also returned in 391 // Trip.current_route_segment for all active trips assigned to the vehicle. 392 // Note: This field is intended only for use by the Driver SDK. 393 CurrentRouteSegment string `protobuf:"bytes,20,opt,name=current_route_segment,json=currentRouteSegment,proto3" json:"current_route_segment,omitempty"` 394 // Time when current_route_segment was set. This field is ignored in 395 // UpdateVehicleRequests as it is calculated by the server. It should be 396 // stored by client and passed in to future requests to prevent returning 397 // routes to first way point that haven't changed. 398 CurrentRouteSegmentVersion *timestamppb.Timestamp `protobuf:"bytes,15,opt,name=current_route_segment_version,json=currentRouteSegmentVersion,proto3" json:"current_route_segment_version,omitempty"` 399 // The waypoint where current_route_segment ends. This can be supplied by 400 // drivers on UpdateVehicle calls either as a full trip waypoint, a waypoint 401 // latlnt, or as a the last latlng of the current_route_segment. FleetEngine 402 // will then do its best to interpolate to an actual waypoint if it is not 403 // fully specified. This field is ignored in UpdateVehicle calls unless 404 // current_route_segment is also specified. 405 CurrentRouteSegmentEndPoint *TripWaypoint `protobuf:"bytes,24,opt,name=current_route_segment_end_point,json=currentRouteSegmentEndPoint,proto3" json:"current_route_segment_end_point,omitempty"` 406 // The remaining driving distance for the 'current_route_segment'. This field 407 // facilitates journey sharing between the Driver app and the Consumer app. 408 // This value is updated by the Driver SDK. Fleet Engine does not update it. 409 // This field is also returned in Trip.remaining_distance_meters for all 410 // active trips assigned to the vehicle. The value is unspecified if the 411 // `Vehicle.current_route_segment` field is empty, or if the Driver app has 412 // not updated its value. 413 RemainingDistanceMeters *wrapperspb.Int32Value `protobuf:"bytes,18,opt,name=remaining_distance_meters,json=remainingDistanceMeters,proto3" json:"remaining_distance_meters,omitempty"` 414 // The ETA to the next waypoint that is the first entry in Vehicle.waypoint 415 // field. This field facilitates journey sharing between a Driver app and a 416 // Consumer app and is updated by the Driver SDK, and Fleet Engine does not 417 // update it. This field is also returned in Trip.eta_to_first_waypoint for 418 // all active trips assigned to the vehicle. The value is unspecified if the 419 // Vehicle.waypoint field is empty, or the Driver app has not updated its 420 // value. 421 EtaToFirstWaypoint *timestamppb.Timestamp `protobuf:"bytes,19,opt,name=eta_to_first_waypoint,json=etaToFirstWaypoint,proto3" json:"eta_to_first_waypoint,omitempty"` 422 // The remaining driving time for the 'current_route_segment'. This field 423 // facilitates journey sharing between the Driver app and the Consumer app. 424 // This value is updated by the Driver SDK. Fleet Engine does not update it. 425 // The value is unspecified if the `Vehicle.current_route_segment` field is 426 // empty, or if the Driver app has not updated its value. This value should 427 // match eta_to_first_waypoint - current_time if all parties are using the 428 // same clock. This field is currently write-only and will not yet be 429 // populated in Vehicle's get/update/search operations. When updating a 430 // vehicle, if you update both eta_to_first_waypoint and 431 // remaining_time_seconds in the same request, then only 432 // remaining_time_seconds is considered. 433 RemainingTimeSeconds *wrapperspb.Int32Value `protobuf:"bytes,25,opt,name=remaining_time_seconds,json=remainingTimeSeconds,proto3" json:"remaining_time_seconds,omitempty"` 434 // The remaining set of waypoints assigned to this Vehicle. 435 Waypoints []*TripWaypoint `protobuf:"bytes,22,rep,name=waypoints,proto3" json:"waypoints,omitempty"` 436 // Last time the waypoints was updated. Client should cache 437 // this value and pass it in GetVehicleRequest to ensure the 438 // waypoints.path_to_waypoint is only returned if it is updated 439 WaypointsVersion *timestamppb.Timestamp `protobuf:"bytes,16,opt,name=waypoints_version,json=waypointsVersion,proto3" json:"waypoints_version,omitempty"` 440 // Indicates if the driver accepts back-to-back rides. If 441 // `true`, services include the vehicle for back-to-back matches. 442 // If `false`, services exclude the vehicle from back-to-back matches. 443 // Default value is `false`. 444 BackToBackEnabled bool `protobuf:"varint,23,opt,name=back_to_back_enabled,json=backToBackEnabled,proto3" json:"back_to_back_enabled,omitempty"` 445 // Vehicle's navigation status. 446 NavigationStatus NavigationStatus `protobuf:"varint,26,opt,name=navigation_status,json=navigationStatus,proto3,enum=maps.fleetengine.v1.NavigationStatus" json:"navigation_status,omitempty"` 447 // Information about various device settings. This is internal debug only 448 // field, not included in the response. 449 DeviceSettings *DeviceSettings `protobuf:"bytes,27,opt,name=device_settings,json=deviceSettings,proto3" json:"device_settings,omitempty"` 450} 451 452func (x *Vehicle) Reset() { 453 *x = Vehicle{} 454 if protoimpl.UnsafeEnabled { 455 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[0] 456 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 457 ms.StoreMessageInfo(mi) 458 } 459} 460 461func (x *Vehicle) String() string { 462 return protoimpl.X.MessageStringOf(x) 463} 464 465func (*Vehicle) ProtoMessage() {} 466 467func (x *Vehicle) ProtoReflect() protoreflect.Message { 468 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[0] 469 if protoimpl.UnsafeEnabled && x != nil { 470 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 471 if ms.LoadMessageInfo() == nil { 472 ms.StoreMessageInfo(mi) 473 } 474 return ms 475 } 476 return mi.MessageOf(x) 477} 478 479// Deprecated: Use Vehicle.ProtoReflect.Descriptor instead. 480func (*Vehicle) Descriptor() ([]byte, []int) { 481 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{0} 482} 483 484func (x *Vehicle) GetName() string { 485 if x != nil { 486 return x.Name 487 } 488 return "" 489} 490 491func (x *Vehicle) GetVehicleState() VehicleState { 492 if x != nil { 493 return x.VehicleState 494 } 495 return VehicleState_UNKNOWN_VEHICLE_STATE 496} 497 498func (x *Vehicle) GetSupportedTripTypes() []TripType { 499 if x != nil { 500 return x.SupportedTripTypes 501 } 502 return nil 503} 504 505func (x *Vehicle) GetCurrentTrips() []string { 506 if x != nil { 507 return x.CurrentTrips 508 } 509 return nil 510} 511 512func (x *Vehicle) GetLastLocation() *VehicleLocation { 513 if x != nil { 514 return x.LastLocation 515 } 516 return nil 517} 518 519func (x *Vehicle) GetMaximumCapacity() int32 { 520 if x != nil { 521 return x.MaximumCapacity 522 } 523 return 0 524} 525 526func (x *Vehicle) GetAvailableCapacity() int32 { 527 if x != nil { 528 return x.AvailableCapacity 529 } 530 return 0 531} 532 533func (x *Vehicle) GetAttributes() []*VehicleAttribute { 534 if x != nil { 535 return x.Attributes 536 } 537 return nil 538} 539 540func (x *Vehicle) GetVehicleType() *Vehicle_VehicleType { 541 if x != nil { 542 return x.VehicleType 543 } 544 return nil 545} 546 547func (x *Vehicle) GetLicensePlate() *LicensePlate { 548 if x != nil { 549 return x.LicensePlate 550 } 551 return nil 552} 553 554// Deprecated: Do not use. 555func (x *Vehicle) GetRoute() []*TerminalLocation { 556 if x != nil { 557 return x.Route 558 } 559 return nil 560} 561 562func (x *Vehicle) GetCurrentRouteSegment() string { 563 if x != nil { 564 return x.CurrentRouteSegment 565 } 566 return "" 567} 568 569func (x *Vehicle) GetCurrentRouteSegmentVersion() *timestamppb.Timestamp { 570 if x != nil { 571 return x.CurrentRouteSegmentVersion 572 } 573 return nil 574} 575 576func (x *Vehicle) GetCurrentRouteSegmentEndPoint() *TripWaypoint { 577 if x != nil { 578 return x.CurrentRouteSegmentEndPoint 579 } 580 return nil 581} 582 583func (x *Vehicle) GetRemainingDistanceMeters() *wrapperspb.Int32Value { 584 if x != nil { 585 return x.RemainingDistanceMeters 586 } 587 return nil 588} 589 590func (x *Vehicle) GetEtaToFirstWaypoint() *timestamppb.Timestamp { 591 if x != nil { 592 return x.EtaToFirstWaypoint 593 } 594 return nil 595} 596 597func (x *Vehicle) GetRemainingTimeSeconds() *wrapperspb.Int32Value { 598 if x != nil { 599 return x.RemainingTimeSeconds 600 } 601 return nil 602} 603 604func (x *Vehicle) GetWaypoints() []*TripWaypoint { 605 if x != nil { 606 return x.Waypoints 607 } 608 return nil 609} 610 611func (x *Vehicle) GetWaypointsVersion() *timestamppb.Timestamp { 612 if x != nil { 613 return x.WaypointsVersion 614 } 615 return nil 616} 617 618func (x *Vehicle) GetBackToBackEnabled() bool { 619 if x != nil { 620 return x.BackToBackEnabled 621 } 622 return false 623} 624 625func (x *Vehicle) GetNavigationStatus() NavigationStatus { 626 if x != nil { 627 return x.NavigationStatus 628 } 629 return NavigationStatus_UNKNOWN_NAVIGATION_STATUS 630} 631 632func (x *Vehicle) GetDeviceSettings() *DeviceSettings { 633 if x != nil { 634 return x.DeviceSettings 635 } 636 return nil 637} 638 639// Information about the device's battery. 640type BatteryInfo struct { 641 state protoimpl.MessageState 642 sizeCache protoimpl.SizeCache 643 unknownFields protoimpl.UnknownFields 644 645 // Status of the battery, whether full or charging etc. 646 BatteryStatus BatteryStatus `protobuf:"varint,1,opt,name=battery_status,json=batteryStatus,proto3,enum=maps.fleetengine.v1.BatteryStatus" json:"battery_status,omitempty"` 647 // Status of battery power source. 648 PowerSource PowerSource `protobuf:"varint,2,opt,name=power_source,json=powerSource,proto3,enum=maps.fleetengine.v1.PowerSource" json:"power_source,omitempty"` 649 // Current battery percentage [0-100]. 650 BatteryPercentage float32 `protobuf:"fixed32,3,opt,name=battery_percentage,json=batteryPercentage,proto3" json:"battery_percentage,omitempty"` 651} 652 653func (x *BatteryInfo) Reset() { 654 *x = BatteryInfo{} 655 if protoimpl.UnsafeEnabled { 656 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[1] 657 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 658 ms.StoreMessageInfo(mi) 659 } 660} 661 662func (x *BatteryInfo) String() string { 663 return protoimpl.X.MessageStringOf(x) 664} 665 666func (*BatteryInfo) ProtoMessage() {} 667 668func (x *BatteryInfo) ProtoReflect() protoreflect.Message { 669 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[1] 670 if protoimpl.UnsafeEnabled && x != nil { 671 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 672 if ms.LoadMessageInfo() == nil { 673 ms.StoreMessageInfo(mi) 674 } 675 return ms 676 } 677 return mi.MessageOf(x) 678} 679 680// Deprecated: Use BatteryInfo.ProtoReflect.Descriptor instead. 681func (*BatteryInfo) Descriptor() ([]byte, []int) { 682 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{1} 683} 684 685func (x *BatteryInfo) GetBatteryStatus() BatteryStatus { 686 if x != nil { 687 return x.BatteryStatus 688 } 689 return BatteryStatus_UNKNOWN_BATTERY_STATUS 690} 691 692func (x *BatteryInfo) GetPowerSource() PowerSource { 693 if x != nil { 694 return x.PowerSource 695 } 696 return PowerSource_UNKNOWN_POWER_SOURCE 697} 698 699func (x *BatteryInfo) GetBatteryPercentage() float32 { 700 if x != nil { 701 return x.BatteryPercentage 702 } 703 return 0 704} 705 706// Information about various settings on the device. 707type DeviceSettings struct { 708 state protoimpl.MessageState 709 sizeCache protoimpl.SizeCache 710 unknownFields protoimpl.UnknownFields 711 712 // How location features are set to behave on the device when battery saver is 713 // on. 714 LocationPowerSaveMode LocationPowerSaveMode `protobuf:"varint,1,opt,name=location_power_save_mode,json=locationPowerSaveMode,proto3,enum=maps.fleetengine.v1.LocationPowerSaveMode" json:"location_power_save_mode,omitempty"` 715 // Whether the device is currently in power save mode. 716 IsPowerSaveMode bool `protobuf:"varint,2,opt,name=is_power_save_mode,json=isPowerSaveMode,proto3" json:"is_power_save_mode,omitempty"` 717 // Whether the device is in an interactive state. 718 IsInteractive bool `protobuf:"varint,3,opt,name=is_interactive,json=isInteractive,proto3" json:"is_interactive,omitempty"` 719 // Information about the battery state. 720 BatteryInfo *BatteryInfo `protobuf:"bytes,4,opt,name=battery_info,json=batteryInfo,proto3" json:"battery_info,omitempty"` 721} 722 723func (x *DeviceSettings) Reset() { 724 *x = DeviceSettings{} 725 if protoimpl.UnsafeEnabled { 726 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[2] 727 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 728 ms.StoreMessageInfo(mi) 729 } 730} 731 732func (x *DeviceSettings) String() string { 733 return protoimpl.X.MessageStringOf(x) 734} 735 736func (*DeviceSettings) ProtoMessage() {} 737 738func (x *DeviceSettings) ProtoReflect() protoreflect.Message { 739 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[2] 740 if protoimpl.UnsafeEnabled && x != nil { 741 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 742 if ms.LoadMessageInfo() == nil { 743 ms.StoreMessageInfo(mi) 744 } 745 return ms 746 } 747 return mi.MessageOf(x) 748} 749 750// Deprecated: Use DeviceSettings.ProtoReflect.Descriptor instead. 751func (*DeviceSettings) Descriptor() ([]byte, []int) { 752 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{2} 753} 754 755func (x *DeviceSettings) GetLocationPowerSaveMode() LocationPowerSaveMode { 756 if x != nil { 757 return x.LocationPowerSaveMode 758 } 759 return LocationPowerSaveMode_UNKNOWN_LOCATION_POWER_SAVE_MODE 760} 761 762func (x *DeviceSettings) GetIsPowerSaveMode() bool { 763 if x != nil { 764 return x.IsPowerSaveMode 765 } 766 return false 767} 768 769func (x *DeviceSettings) GetIsInteractive() bool { 770 if x != nil { 771 return x.IsInteractive 772 } 773 return false 774} 775 776func (x *DeviceSettings) GetBatteryInfo() *BatteryInfo { 777 if x != nil { 778 return x.BatteryInfo 779 } 780 return nil 781} 782 783// The license plate information of the Vehicle. This is used to support 784// congestion pricing restrictions in certain areas. To avoid storing 785// personally-identifiable information, only the minimum information 786// about the license plate is stored as part of the entity. 787type LicensePlate struct { 788 state protoimpl.MessageState 789 sizeCache protoimpl.SizeCache 790 unknownFields protoimpl.UnknownFields 791 792 // Required. CLDR Country/Region Code. For example, "US" for United States, 793 // or "IN" for India. 794 CountryCode string `protobuf:"bytes,1,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"` 795 // The last digit of the license plate or "-1" to denote no numeric value 796 // present in the license plate. 797 // 798 // * "ABC 1234" -> "4" 799 // * "AB 123 CD" -> "3" 800 // * "ABCDEF" -> "-1" 801 LastCharacter string `protobuf:"bytes,2,opt,name=last_character,json=lastCharacter,proto3" json:"last_character,omitempty"` 802} 803 804func (x *LicensePlate) Reset() { 805 *x = LicensePlate{} 806 if protoimpl.UnsafeEnabled { 807 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[3] 808 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 809 ms.StoreMessageInfo(mi) 810 } 811} 812 813func (x *LicensePlate) String() string { 814 return protoimpl.X.MessageStringOf(x) 815} 816 817func (*LicensePlate) ProtoMessage() {} 818 819func (x *LicensePlate) ProtoReflect() protoreflect.Message { 820 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[3] 821 if protoimpl.UnsafeEnabled && x != nil { 822 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 823 if ms.LoadMessageInfo() == nil { 824 ms.StoreMessageInfo(mi) 825 } 826 return ms 827 } 828 return mi.MessageOf(x) 829} 830 831// Deprecated: Use LicensePlate.ProtoReflect.Descriptor instead. 832func (*LicensePlate) Descriptor() ([]byte, []int) { 833 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{3} 834} 835 836func (x *LicensePlate) GetCountryCode() string { 837 if x != nil { 838 return x.CountryCode 839 } 840 return "" 841} 842 843func (x *LicensePlate) GetLastCharacter() string { 844 if x != nil { 845 return x.LastCharacter 846 } 847 return "" 848} 849 850// Types of vehicles that may be filtered for in SearchVehicles. 851type Vehicle_VehicleType struct { 852 state protoimpl.MessageState 853 sizeCache protoimpl.SizeCache 854 unknownFields protoimpl.UnknownFields 855 856 // Vehicle type category 857 Category Vehicle_VehicleType_Category `protobuf:"varint,1,opt,name=category,proto3,enum=maps.fleetengine.v1.Vehicle_VehicleType_Category" json:"category,omitempty"` 858} 859 860func (x *Vehicle_VehicleType) Reset() { 861 *x = Vehicle_VehicleType{} 862 if protoimpl.UnsafeEnabled { 863 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[4] 864 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 865 ms.StoreMessageInfo(mi) 866 } 867} 868 869func (x *Vehicle_VehicleType) String() string { 870 return protoimpl.X.MessageStringOf(x) 871} 872 873func (*Vehicle_VehicleType) ProtoMessage() {} 874 875func (x *Vehicle_VehicleType) ProtoReflect() protoreflect.Message { 876 mi := &file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[4] 877 if protoimpl.UnsafeEnabled && x != nil { 878 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 879 if ms.LoadMessageInfo() == nil { 880 ms.StoreMessageInfo(mi) 881 } 882 return ms 883 } 884 return mi.MessageOf(x) 885} 886 887// Deprecated: Use Vehicle_VehicleType.ProtoReflect.Descriptor instead. 888func (*Vehicle_VehicleType) Descriptor() ([]byte, []int) { 889 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP(), []int{0, 0} 890} 891 892func (x *Vehicle_VehicleType) GetCategory() Vehicle_VehicleType_Category { 893 if x != nil { 894 return x.Category 895 } 896 return Vehicle_VehicleType_UNKNOWN 897} 898 899var File_google_maps_fleetengine_v1_vehicles_proto protoreflect.FileDescriptor 900 901var file_google_maps_fleetengine_v1_vehicles_proto_rawDesc = []byte{ 902 0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 903 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x65, 0x68, 904 0x69, 0x63, 0x6c, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x6d, 0x61, 0x70, 905 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 906 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 907 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 908 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 909 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x67, 0x6f, 910 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 911 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 912 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 913 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 914 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 915 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 916 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xeb, 0x0d, 0x0a, 0x07, 917 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 918 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x46, 0x0a, 0x0d, 0x76, 919 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 920 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 921 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 922 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x74, 923 0x61, 0x74, 0x65, 0x12, 0x4f, 0x0a, 0x14, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 924 0x5f, 0x74, 0x72, 0x69, 0x70, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 925 0x0e, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 926 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 0x54, 0x79, 0x70, 0x65, 927 0x52, 0x12, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x72, 0x69, 0x70, 0x54, 928 0x79, 0x70, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 929 0x74, 0x72, 0x69, 0x70, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x75, 0x72, 930 0x72, 0x65, 0x6e, 0x74, 0x54, 0x72, 0x69, 0x70, 0x73, 0x12, 0x49, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 931 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 932 0x32, 0x24, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 933 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x4c, 0x6f, 934 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x63, 0x61, 935 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 936 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 937 0x6d, 0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 938 0x2d, 0x0a, 0x12, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x70, 939 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x61, 0x76, 0x61, 940 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x45, 941 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 942 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 943 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 944 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 945 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x0c, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 946 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x61, 947 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 948 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 949 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 950 0x70, 0x65, 0x12, 0x46, 0x0a, 0x0d, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x70, 0x6c, 951 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 952 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 953 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x65, 0x52, 0x0c, 0x6c, 0x69, 954 0x63, 0x65, 0x6e, 0x73, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x3f, 0x0a, 0x05, 0x72, 0x6f, 955 0x75, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 956 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 957 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 958 0x42, 0x02, 0x18, 0x01, 0x52, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x63, 959 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x73, 0x65, 0x67, 960 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x75, 0x72, 0x72, 961 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 962 0x5d, 0x0a, 0x1d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 963 0x5f, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 964 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 965 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 966 0x6d, 0x70, 0x52, 0x1a, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 967 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x67, 968 0x0a, 0x1f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 969 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 970 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 971 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 972 0x69, 0x70, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x1b, 0x63, 0x75, 0x72, 0x72, 973 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x45, 974 0x6e, 0x64, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x19, 0x72, 0x65, 0x6d, 0x61, 0x69, 975 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6d, 0x65, 976 0x74, 0x65, 0x72, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 977 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 978 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 979 0x6e, 0x67, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x65, 0x72, 0x73, 980 0x12, 0x4d, 0x0a, 0x15, 0x65, 0x74, 0x61, 0x5f, 0x74, 0x6f, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 981 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 982 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 983 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x12, 0x65, 0x74, 0x61, 984 0x54, 0x6f, 0x46, 0x69, 0x72, 0x73, 0x74, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 985 0x51, 0x0a, 0x16, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 986 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 987 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 988 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x72, 0x65, 989 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 990 0x64, 0x73, 0x12, 0x3f, 0x0a, 0x09, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x18, 991 0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 992 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x69, 0x70, 993 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x09, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 994 0x6e, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x11, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 995 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 996 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 997 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x77, 0x61, 0x79, 0x70, 998 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x14, 999 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x74, 0x6f, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x65, 0x6e, 0x61, 1000 0x62, 0x6c, 0x65, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x62, 0x61, 0x63, 0x6b, 1001 0x54, 0x6f, 0x42, 0x61, 0x63, 0x6b, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x52, 0x0a, 1002 0x11, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 1003 0x75, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1004 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 1005 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 1006 0x10, 0x6e, 0x61, 0x76, 0x69, 0x67, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 1007 0x73, 0x12, 0x4c, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x74, 1008 0x69, 0x6e, 0x67, 0x73, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x61, 0x70, 1009 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 1010 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 1011 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x1a, 1012 0xa5, 0x01, 0x0a, 0x0b, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 1013 0x4d, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 1014 0x0e, 0x32, 0x31, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1015 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x2e, 1016 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x61, 0x74, 0x65, 1017 0x67, 0x6f, 0x72, 0x79, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x47, 1018 0x0a, 0x08, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 1019 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x55, 0x54, 0x4f, 0x10, 1020 0x01, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x41, 0x58, 0x49, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x54, 1021 0x52, 0x55, 0x43, 0x4b, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x57, 0x4f, 0x5f, 0x57, 0x48, 1022 0x45, 0x45, 0x4c, 0x45, 0x52, 0x10, 0x04, 0x3a, 0x50, 0xea, 0x41, 0x4d, 0x0a, 0x22, 0x66, 0x6c, 1023 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1024 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 1025 0x12, 0x27, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 1026 0x76, 0x69, 0x64, 0x65, 0x72, 0x7d, 0x2f, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x2f, 1027 0x7b, 0x76, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x7d, 0x22, 0xcc, 0x01, 0x0a, 0x0b, 0x42, 0x61, 1028 0x74, 0x74, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x49, 0x0a, 0x0e, 0x62, 0x61, 0x74, 1029 0x74, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 1030 0x0e, 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 1031 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x53, 1032 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x53, 0x74, 1033 0x61, 0x74, 0x75, 0x73, 0x12, 0x43, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x6f, 1034 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x6d, 0x61, 0x70, 1035 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 1036 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x70, 0x6f, 1037 0x77, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x62, 0x61, 0x74, 1038 0x74, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 1039 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x50, 0x65, 1040 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x22, 0x8e, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x76, 1041 0x69, 0x63, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x63, 0x0a, 0x18, 0x6c, 1042 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x61, 1043 0x76, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 1044 0x6d, 0x61, 0x70, 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 1045 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x77, 0x65, 1046 0x72, 0x53, 0x61, 0x76, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x15, 0x6c, 0x6f, 0x63, 0x61, 0x74, 1047 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x4d, 0x6f, 0x64, 0x65, 1048 0x12, 0x2b, 0x0a, 0x12, 0x69, 0x73, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x76, 1049 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 1050 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x61, 0x76, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 1051 0x0e, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 1052 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 1053 0x74, 0x69, 0x76, 0x65, 0x12, 0x43, 0x0a, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 1054 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6d, 0x61, 0x70, 1055 0x73, 0x2e, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 1056 0x2e, 0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x62, 0x61, 1057 0x74, 0x74, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x5d, 0x0a, 0x0c, 0x4c, 0x69, 0x63, 1058 0x65, 0x6e, 0x73, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x75, 1059 0x6e, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 1060 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x64, 1061 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x72, 0x61, 0x63, 1062 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x43, 1063 0x68, 0x61, 0x72, 0x61, 0x63, 0x74, 0x65, 0x72, 0x2a, 0x42, 0x0a, 0x0c, 0x56, 0x65, 0x68, 0x69, 1064 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x15, 0x55, 0x4e, 0x4b, 0x4e, 1065 0x4f, 0x57, 0x4e, 0x5f, 0x56, 0x45, 0x48, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 1066 0x45, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 1067 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x2a, 0x92, 0x02, 0x0a, 1068 0x15, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x61, 1069 0x76, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x20, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 1070 0x4e, 0x5f, 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x4f, 0x57, 0x45, 0x52, 1071 0x5f, 0x53, 0x41, 0x56, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 1072 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4e, 0x4f, 1073 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x4c, 0x4f, 0x43, 1074 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x47, 0x50, 0x53, 0x5f, 0x44, 1075 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x57, 0x48, 0x45, 0x4e, 0x5f, 0x53, 0x43, 0x52, 1076 0x45, 0x45, 0x4e, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x02, 0x12, 0x2e, 0x0a, 0x2a, 0x4c, 0x4f, 0x43, 1077 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, 0x4c, 0x4c, 0x5f, 0x44, 1078 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x57, 0x48, 0x45, 0x4e, 0x5f, 0x53, 0x43, 0x52, 1079 0x45, 0x45, 0x4e, 0x5f, 0x4f, 0x46, 0x46, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x4c, 0x4f, 0x43, 1080 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x45, 0x47, 1081 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x04, 0x12, 0x33, 0x0a, 0x2f, 1082 0x4c, 0x4f, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x48, 1083 0x52, 0x4f, 0x54, 0x54, 0x4c, 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x53, 0x5f, 1084 0x57, 0x48, 0x45, 0x4e, 0x5f, 0x53, 0x43, 0x52, 0x45, 0x45, 0x4e, 0x5f, 0x4f, 0x46, 0x46, 0x10, 1085 0x05, 0x2a, 0xc0, 0x01, 0x0a, 0x0d, 0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x53, 0x74, 0x61, 1086 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x16, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x42, 1087 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x10, 0x00, 0x12, 1088 0x1b, 0x0a, 0x17, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 1089 0x53, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1e, 0x0a, 0x1a, 1090 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 1091 0x49, 0x53, 0x43, 0x48, 0x41, 0x52, 0x47, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 1092 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x46, 1093 0x55, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 0x59, 1094 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x48, 0x41, 0x52, 1095 0x47, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x41, 0x54, 0x54, 0x45, 0x52, 1096 0x59, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4c, 1097 0x4f, 0x57, 0x10, 0x05, 0x2a, 0x89, 0x01, 0x0a, 0x0b, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x6f, 1098 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 1099 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x10, 0x00, 0x12, 0x13, 1100 0x0a, 0x0f, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x41, 1101 0x43, 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x4f, 0x55, 1102 0x52, 0x43, 0x45, 0x5f, 0x55, 0x53, 0x42, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x4f, 0x57, 1103 0x45, 0x52, 0x5f, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 1104 0x53, 0x53, 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x53, 0x4f, 1105 0x55, 0x52, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x50, 0x4c, 0x55, 0x47, 0x47, 0x45, 0x44, 0x10, 0x04, 1106 0x42, 0x75, 0x0a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6d, 0x61, 0x70, 0x73, 0x2e, 1107 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x08, 1108 0x56, 0x65, 0x68, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x50, 0x01, 0x5a, 0x45, 0x67, 0x6f, 0x6f, 0x67, 1109 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 1110 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 1111 0x73, 0x2f, 0x6d, 0x61, 0x70, 0x73, 0x2f, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 1112 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x66, 0x6c, 0x65, 0x65, 0x74, 0x65, 0x6e, 0x67, 0x69, 0x6e, 1113 0x65, 0xa2, 0x02, 0x03, 0x43, 0x46, 0x45, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1114} 1115 1116var ( 1117 file_google_maps_fleetengine_v1_vehicles_proto_rawDescOnce sync.Once 1118 file_google_maps_fleetengine_v1_vehicles_proto_rawDescData = file_google_maps_fleetengine_v1_vehicles_proto_rawDesc 1119) 1120 1121func file_google_maps_fleetengine_v1_vehicles_proto_rawDescGZIP() []byte { 1122 file_google_maps_fleetengine_v1_vehicles_proto_rawDescOnce.Do(func() { 1123 file_google_maps_fleetengine_v1_vehicles_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_maps_fleetengine_v1_vehicles_proto_rawDescData) 1124 }) 1125 return file_google_maps_fleetengine_v1_vehicles_proto_rawDescData 1126} 1127 1128var file_google_maps_fleetengine_v1_vehicles_proto_enumTypes = make([]protoimpl.EnumInfo, 5) 1129var file_google_maps_fleetengine_v1_vehicles_proto_msgTypes = make([]protoimpl.MessageInfo, 5) 1130var file_google_maps_fleetengine_v1_vehicles_proto_goTypes = []interface{}{ 1131 (VehicleState)(0), // 0: maps.fleetengine.v1.VehicleState 1132 (LocationPowerSaveMode)(0), // 1: maps.fleetengine.v1.LocationPowerSaveMode 1133 (BatteryStatus)(0), // 2: maps.fleetengine.v1.BatteryStatus 1134 (PowerSource)(0), // 3: maps.fleetengine.v1.PowerSource 1135 (Vehicle_VehicleType_Category)(0), // 4: maps.fleetengine.v1.Vehicle.VehicleType.Category 1136 (*Vehicle)(nil), // 5: maps.fleetengine.v1.Vehicle 1137 (*BatteryInfo)(nil), // 6: maps.fleetengine.v1.BatteryInfo 1138 (*DeviceSettings)(nil), // 7: maps.fleetengine.v1.DeviceSettings 1139 (*LicensePlate)(nil), // 8: maps.fleetengine.v1.LicensePlate 1140 (*Vehicle_VehicleType)(nil), // 9: maps.fleetengine.v1.Vehicle.VehicleType 1141 (TripType)(0), // 10: maps.fleetengine.v1.TripType 1142 (*VehicleLocation)(nil), // 11: maps.fleetengine.v1.VehicleLocation 1143 (*VehicleAttribute)(nil), // 12: maps.fleetengine.v1.VehicleAttribute 1144 (*TerminalLocation)(nil), // 13: maps.fleetengine.v1.TerminalLocation 1145 (*timestamppb.Timestamp)(nil), // 14: google.protobuf.Timestamp 1146 (*TripWaypoint)(nil), // 15: maps.fleetengine.v1.TripWaypoint 1147 (*wrapperspb.Int32Value)(nil), // 16: google.protobuf.Int32Value 1148 (NavigationStatus)(0), // 17: maps.fleetengine.v1.NavigationStatus 1149} 1150var file_google_maps_fleetengine_v1_vehicles_proto_depIdxs = []int32{ 1151 0, // 0: maps.fleetengine.v1.Vehicle.vehicle_state:type_name -> maps.fleetengine.v1.VehicleState 1152 10, // 1: maps.fleetengine.v1.Vehicle.supported_trip_types:type_name -> maps.fleetengine.v1.TripType 1153 11, // 2: maps.fleetengine.v1.Vehicle.last_location:type_name -> maps.fleetengine.v1.VehicleLocation 1154 12, // 3: maps.fleetengine.v1.Vehicle.attributes:type_name -> maps.fleetengine.v1.VehicleAttribute 1155 9, // 4: maps.fleetengine.v1.Vehicle.vehicle_type:type_name -> maps.fleetengine.v1.Vehicle.VehicleType 1156 8, // 5: maps.fleetengine.v1.Vehicle.license_plate:type_name -> maps.fleetengine.v1.LicensePlate 1157 13, // 6: maps.fleetengine.v1.Vehicle.route:type_name -> maps.fleetengine.v1.TerminalLocation 1158 14, // 7: maps.fleetengine.v1.Vehicle.current_route_segment_version:type_name -> google.protobuf.Timestamp 1159 15, // 8: maps.fleetengine.v1.Vehicle.current_route_segment_end_point:type_name -> maps.fleetengine.v1.TripWaypoint 1160 16, // 9: maps.fleetengine.v1.Vehicle.remaining_distance_meters:type_name -> google.protobuf.Int32Value 1161 14, // 10: maps.fleetengine.v1.Vehicle.eta_to_first_waypoint:type_name -> google.protobuf.Timestamp 1162 16, // 11: maps.fleetengine.v1.Vehicle.remaining_time_seconds:type_name -> google.protobuf.Int32Value 1163 15, // 12: maps.fleetengine.v1.Vehicle.waypoints:type_name -> maps.fleetengine.v1.TripWaypoint 1164 14, // 13: maps.fleetengine.v1.Vehicle.waypoints_version:type_name -> google.protobuf.Timestamp 1165 17, // 14: maps.fleetengine.v1.Vehicle.navigation_status:type_name -> maps.fleetengine.v1.NavigationStatus 1166 7, // 15: maps.fleetengine.v1.Vehicle.device_settings:type_name -> maps.fleetengine.v1.DeviceSettings 1167 2, // 16: maps.fleetengine.v1.BatteryInfo.battery_status:type_name -> maps.fleetengine.v1.BatteryStatus 1168 3, // 17: maps.fleetengine.v1.BatteryInfo.power_source:type_name -> maps.fleetengine.v1.PowerSource 1169 1, // 18: maps.fleetengine.v1.DeviceSettings.location_power_save_mode:type_name -> maps.fleetengine.v1.LocationPowerSaveMode 1170 6, // 19: maps.fleetengine.v1.DeviceSettings.battery_info:type_name -> maps.fleetengine.v1.BatteryInfo 1171 4, // 20: maps.fleetengine.v1.Vehicle.VehicleType.category:type_name -> maps.fleetengine.v1.Vehicle.VehicleType.Category 1172 21, // [21:21] is the sub-list for method output_type 1173 21, // [21:21] is the sub-list for method input_type 1174 21, // [21:21] is the sub-list for extension type_name 1175 21, // [21:21] is the sub-list for extension extendee 1176 0, // [0:21] is the sub-list for field type_name 1177} 1178 1179func init() { file_google_maps_fleetengine_v1_vehicles_proto_init() } 1180func file_google_maps_fleetengine_v1_vehicles_proto_init() { 1181 if File_google_maps_fleetengine_v1_vehicles_proto != nil { 1182 return 1183 } 1184 file_google_maps_fleetengine_v1_fleetengine_proto_init() 1185 if !protoimpl.UnsafeEnabled { 1186 file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1187 switch v := v.(*Vehicle); i { 1188 case 0: 1189 return &v.state 1190 case 1: 1191 return &v.sizeCache 1192 case 2: 1193 return &v.unknownFields 1194 default: 1195 return nil 1196 } 1197 } 1198 file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1199 switch v := v.(*BatteryInfo); i { 1200 case 0: 1201 return &v.state 1202 case 1: 1203 return &v.sizeCache 1204 case 2: 1205 return &v.unknownFields 1206 default: 1207 return nil 1208 } 1209 } 1210 file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1211 switch v := v.(*DeviceSettings); i { 1212 case 0: 1213 return &v.state 1214 case 1: 1215 return &v.sizeCache 1216 case 2: 1217 return &v.unknownFields 1218 default: 1219 return nil 1220 } 1221 } 1222 file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1223 switch v := v.(*LicensePlate); i { 1224 case 0: 1225 return &v.state 1226 case 1: 1227 return &v.sizeCache 1228 case 2: 1229 return &v.unknownFields 1230 default: 1231 return nil 1232 } 1233 } 1234 file_google_maps_fleetengine_v1_vehicles_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1235 switch v := v.(*Vehicle_VehicleType); i { 1236 case 0: 1237 return &v.state 1238 case 1: 1239 return &v.sizeCache 1240 case 2: 1241 return &v.unknownFields 1242 default: 1243 return nil 1244 } 1245 } 1246 } 1247 type x struct{} 1248 out := protoimpl.TypeBuilder{ 1249 File: protoimpl.DescBuilder{ 1250 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1251 RawDescriptor: file_google_maps_fleetengine_v1_vehicles_proto_rawDesc, 1252 NumEnums: 5, 1253 NumMessages: 5, 1254 NumExtensions: 0, 1255 NumServices: 0, 1256 }, 1257 GoTypes: file_google_maps_fleetengine_v1_vehicles_proto_goTypes, 1258 DependencyIndexes: file_google_maps_fleetengine_v1_vehicles_proto_depIdxs, 1259 EnumInfos: file_google_maps_fleetengine_v1_vehicles_proto_enumTypes, 1260 MessageInfos: file_google_maps_fleetengine_v1_vehicles_proto_msgTypes, 1261 }.Build() 1262 File_google_maps_fleetengine_v1_vehicles_proto = out.File 1263 file_google_maps_fleetengine_v1_vehicles_proto_rawDesc = nil 1264 file_google_maps_fleetengine_v1_vehicles_proto_goTypes = nil 1265 file_google_maps_fleetengine_v1_vehicles_proto_depIdxs = nil 1266} 1267