google-maps-fleet_engine-v1 0.a → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/maps/fleet_engine/v1/rest.rb +38 -0
  6. data/lib/google/maps/fleet_engine/v1/trip_service/client.rb +996 -0
  7. data/lib/google/maps/fleet_engine/v1/trip_service/credentials.rb +47 -0
  8. data/lib/google/maps/fleet_engine/v1/trip_service/paths.rb +50 -0
  9. data/lib/google/maps/fleet_engine/v1/trip_service/rest/client.rb +930 -0
  10. data/lib/google/maps/fleet_engine/v1/trip_service/rest/service_stub.rb +368 -0
  11. data/lib/google/maps/fleet_engine/v1/trip_service/rest.rb +52 -0
  12. data/lib/google/maps/fleet_engine/v1/trip_service.rb +55 -0
  13. data/lib/google/maps/fleet_engine/v1/vehicle_service/client.rb +1639 -0
  14. data/lib/google/maps/fleet_engine/v1/vehicle_service/credentials.rb +47 -0
  15. data/lib/google/maps/fleet_engine/v1/vehicle_service/paths.rb +50 -0
  16. data/lib/google/maps/fleet_engine/v1/vehicle_service/rest/client.rb +1545 -0
  17. data/lib/google/maps/fleet_engine/v1/vehicle_service/rest/service_stub.rb +547 -0
  18. data/lib/google/maps/fleet_engine/v1/vehicle_service/rest.rb +52 -0
  19. data/lib/google/maps/fleet_engine/v1/vehicle_service.rb +55 -0
  20. data/lib/google/maps/fleet_engine/v1/version.rb +8 -3
  21. data/lib/google/maps/fleet_engine/v1.rb +46 -0
  22. data/lib/google/maps/fleetengine/v1/fleetengine_pb.rb +63 -0
  23. data/lib/google/maps/fleetengine/v1/header_pb.rb +46 -0
  24. data/lib/google/maps/fleetengine/v1/traffic_pb.rb +44 -0
  25. data/lib/google/maps/fleetengine/v1/trip_api_pb.rb +66 -0
  26. data/lib/google/maps/fleetengine/v1/trip_api_services_pb.rb +53 -0
  27. data/lib/google/maps/fleetengine/v1/trips_pb.rb +61 -0
  28. data/lib/google/maps/fleetengine/v1/vehicle_api_pb.rb +81 -0
  29. data/lib/google/maps/fleetengine/v1/vehicle_api_services_pb.rb +108 -0
  30. data/lib/google/maps/fleetengine/v1/vehicles_pb.rb +64 -0
  31. data/lib/google-maps-fleet_engine-v1.rb +21 -0
  32. data/proto_docs/README.md +4 -0
  33. data/proto_docs/google/api/client.rb +399 -0
  34. data/proto_docs/google/api/field_behavior.rb +85 -0
  35. data/proto_docs/google/api/launch_stage.rb +71 -0
  36. data/proto_docs/google/api/resource.rb +222 -0
  37. data/proto_docs/google/api/routing.rb +459 -0
  38. data/proto_docs/google/geo/type/viewport.rb +70 -0
  39. data/proto_docs/google/maps/fleetengine/v1/fleetengine.rb +342 -0
  40. data/proto_docs/google/maps/fleetengine/v1/header.rb +111 -0
  41. data/proto_docs/google/maps/fleetengine/v1/traffic.rb +76 -0
  42. data/proto_docs/google/maps/fleetengine/v1/trip_api.rb +296 -0
  43. data/proto_docs/google/maps/fleetengine/v1/trips.rb +286 -0
  44. data/proto_docs/google/maps/fleetengine/v1/vehicle_api.rb +684 -0
  45. data/proto_docs/google/maps/fleetengine/v1/vehicles.rb +358 -0
  46. data/proto_docs/google/protobuf/duration.rb +98 -0
  47. data/proto_docs/google/protobuf/empty.rb +34 -0
  48. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  49. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  50. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  51. data/proto_docs/google/type/latlng.rb +38 -0
  52. metadata +119 -13
@@ -0,0 +1,296 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Maps
22
+ module FleetEngine
23
+ module V1
24
+ # CreateTrip request message.
25
+ # @!attribute [rw] header
26
+ # @return [::Google::Maps::FleetEngine::V1::RequestHeader]
27
+ # The standard Fleet Engine request header.
28
+ # @!attribute [rw] parent
29
+ # @return [::String]
30
+ # Required. Must be in the format `providers/{provider}`.
31
+ # The provider must be the Project ID (for example, `sample-cloud-project`)
32
+ # of the Google Cloud Project of which the service account making
33
+ # this call is a member.
34
+ # @!attribute [rw] trip_id
35
+ # @return [::String]
36
+ # Required. Unique Trip ID.
37
+ # Subject to the following restrictions:
38
+ #
39
+ # * Must be a valid Unicode string.
40
+ # * Limited to a maximum length of 64 characters.
41
+ # * Normalized according to [Unicode Normalization Form C]
42
+ # (http://www.unicode.org/reports/tr15/).
43
+ # * May not contain any of the following ASCII characters: '/', ':', '?',
44
+ # ',', or '#'.
45
+ # @!attribute [rw] trip
46
+ # @return [::Google::Maps::FleetEngine::V1::Trip]
47
+ # Required. Trip entity to create.
48
+ #
49
+ # When creating a Trip, the following fields are required:
50
+ #
51
+ # * `trip_type`
52
+ # * `pickup_point`
53
+ #
54
+ # The following fields are used if you provide them:
55
+ #
56
+ # * `number_of_passengers`
57
+ # * `vehicle_id`
58
+ # * `dropoff_point`
59
+ # * `intermediate_destinations`
60
+ # * `vehicle_waypoints`
61
+ #
62
+ # All other Trip fields are ignored. For example, all trips start with a
63
+ # `trip_status` of `NEW` even if you pass in a `trip_status` of `CANCELED` in
64
+ # the creation request.
65
+ #
66
+ # Only `EXCLUSIVE` trips support `intermediate_destinations`.
67
+ #
68
+ # When `vehicle_id` is set for a shared trip, you must supply
69
+ # the list of `Trip.vehicle_waypoints` to specify the order of the remaining
70
+ # waypoints for the vehicle, otherwise the waypoint order will be
71
+ # undetermined.
72
+ #
73
+ # When you specify `Trip.vehicle_waypoints`, the list must contain all
74
+ # the remaining waypoints of the vehicle's trips, with no extra waypoints.
75
+ # You must order these waypoints such that for a given trip, the pickup
76
+ # point is before intermediate destinations, and all intermediate
77
+ # destinations come before the drop-off point. An `EXCLUSIVE` trip's
78
+ # waypoints must not interleave with any other trips.
79
+ #
80
+ # The `trip_id`, `waypoint_type` and `location` fields are used, and all
81
+ # other TripWaypoint fields in `vehicle_waypoints` are ignored.
82
+ class CreateTripRequest
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+ end
86
+
87
+ # GetTrip request message.
88
+ # @!attribute [rw] header
89
+ # @return [::Google::Maps::FleetEngine::V1::RequestHeader]
90
+ # The standard Fleet Engine request header.
91
+ # @!attribute [rw] name
92
+ # @return [::String]
93
+ # Required. Must be in the format `providers/{provider}/trips/{trip}`.
94
+ # The provider must be the Project ID (for example, `sample-cloud-project`)
95
+ # of the Google Cloud Project of which the service account making
96
+ # this call is a member.
97
+ # @!attribute [rw] view
98
+ # @return [::Google::Maps::FleetEngine::V1::TripView]
99
+ # The subset of Trip fields that should be returned and their interpretation.
100
+ # @!attribute [rw] current_route_segment_version
101
+ # @return [::Google::Protobuf::Timestamp]
102
+ # Indicates the minimum timestamp (exclusive) for which `Trip.route` or
103
+ # `Trip.current_route_segment` data are retrieved. If route data are
104
+ # unchanged since this timestamp, the route field is not set in the response.
105
+ # If a minimum is unspecified, the route data are always retrieved.
106
+ # @!attribute [rw] remaining_waypoints_version
107
+ # @return [::Google::Protobuf::Timestamp]
108
+ # Indicates the minimum timestamp (exclusive) for which
109
+ # `Trip.remaining_waypoints` are retrieved. If they are unchanged since this
110
+ # timestamp, the `remaining_waypoints` are not set in the response. If this
111
+ # field is unspecified, `remaining_waypoints` is always retrieved.
112
+ # @!attribute [rw] route_format_type
113
+ # @return [::Google::Maps::FleetEngine::V1::PolylineFormatType]
114
+ # The returned current route format, `LAT_LNG_LIST_TYPE` (in `Trip.route`),
115
+ # or `ENCODED_POLYLINE_TYPE` (in `Trip.current_route_segment`). The default
116
+ # is `LAT_LNG_LIST_TYPE`.
117
+ # @!attribute [rw] current_route_segment_traffic_version
118
+ # @return [::Google::Protobuf::Timestamp]
119
+ # Indicates the minimum timestamp (exclusive) for which
120
+ # `Trip.current_route_segment_traffic` is retrieved. If traffic data are
121
+ # unchanged since this timestamp, the `current_route_segment_traffic` field
122
+ # is not set in the response. If a minimum is unspecified, the traffic data
123
+ # are always retrieved. Note that traffic is only available for On-Demand
124
+ # Rides and Deliveries Solution customers.
125
+ # @!attribute [rw] remaining_waypoints_route_version
126
+ # @return [::Google::Protobuf::Timestamp]
127
+ # Indicates the minimum timestamp (exclusive) for which
128
+ # `Trip.remaining_waypoints.traffic_to_waypoint` and
129
+ # `Trip.remaining_waypoints.path_to_waypoint` data are retrieved. If data are
130
+ # unchanged since this timestamp, the fields above are
131
+ # not set in the response. If `remaining_waypoints_route_version` is
132
+ # unspecified, traffic and path are always retrieved.
133
+ class GetTripRequest
134
+ include ::Google::Protobuf::MessageExts
135
+ extend ::Google::Protobuf::MessageExts::ClassMethods
136
+ end
137
+
138
+ # ReportBillableTrip request message.
139
+ # @!attribute [rw] name
140
+ # @return [::String]
141
+ # Required. Must be in the format
142
+ # `providers/{provider}/billableTrips/{billable_trip}`. The
143
+ # provider must be the Project ID (for example, `sample-cloud-project`) of
144
+ # the Google Cloud Project of which the service account making this call is a
145
+ # member.
146
+ # @!attribute [rw] country_code
147
+ # @return [::String]
148
+ # Required. Two letter country code of the country where the trip takes
149
+ # place. Price is defined according to country code.
150
+ # @!attribute [rw] platform
151
+ # @return [::Google::Maps::FleetEngine::V1::BillingPlatformIdentifier]
152
+ # The platform upon which the request was issued.
153
+ # @!attribute [rw] related_ids
154
+ # @return [::Array<::String>]
155
+ # The identifiers that are directly related to the trip being reported. These
156
+ # are usually IDs (for example, session IDs) of pre-booking operations done
157
+ # before the trip ID is available. The number of `related_ids` is
158
+ # limited to 50.
159
+ # @!attribute [rw] solution_type
160
+ # @return [::Google::Maps::FleetEngine::V1::ReportBillableTripRequest::SolutionType]
161
+ # The type of GMP product solution (for example,
162
+ # `ON_DEMAND_RIDESHARING_AND_DELIVERIES`) used for the reported trip.
163
+ class ReportBillableTripRequest
164
+ include ::Google::Protobuf::MessageExts
165
+ extend ::Google::Protobuf::MessageExts::ClassMethods
166
+
167
+ # Selector for different solution types of a reported trip.
168
+ module SolutionType
169
+ # The default value. For backwards-compatibility, the API will use
170
+ # `ON_DEMAND_RIDESHARING_AND_DELIVERIES` by default which is the first
171
+ # supported solution type.
172
+ SOLUTION_TYPE_UNSPECIFIED = 0
173
+
174
+ # The solution is an on-demand ridesharing and deliveries trip.
175
+ ON_DEMAND_RIDESHARING_AND_DELIVERIES = 1
176
+ end
177
+ end
178
+
179
+ # UpdateTrip request message.
180
+ # @!attribute [rw] header
181
+ # @return [::Google::Maps::FleetEngine::V1::RequestHeader]
182
+ # The standard Fleet Engine request header.
183
+ # @!attribute [rw] name
184
+ # @return [::String]
185
+ # Required. Must be in the format
186
+ # `providers/{provider}/trips/{trip}`. The provider must
187
+ # be the Project ID (for example, `sample-consumer-project`) of the Google
188
+ # Cloud Project of which the service account making this call is a member.
189
+ # @!attribute [rw] trip
190
+ # @return [::Google::Maps::FleetEngine::V1::Trip]
191
+ # Required. The Trip associated with the update.
192
+ #
193
+ # The following fields are maintained by the Fleet Engine. Do not update
194
+ # them using Trip.update.
195
+ #
196
+ # * `current_route_segment`
197
+ # * `current_route_segment_end_point`
198
+ # * `current_route_segment_traffic`
199
+ # * `current_route_segment_traffic_version`
200
+ # * `current_route_segment_version`
201
+ # * `dropoff_time`
202
+ # * `eta_to_next_waypoint`
203
+ # * `intermediate_destinations_version`
204
+ # * `last_location`
205
+ # * `name`
206
+ # * `number_of_passengers`
207
+ # * `pickup_time`
208
+ # * `remaining_distance_meters`
209
+ # * `remaining_time_to_first_waypoint`
210
+ # * `remaining_waypoints`
211
+ # * `remaining_waypoints_version`
212
+ # * `route`
213
+ #
214
+ # When you update the `Trip.vehicle_id` for a shared trip, you must supply
215
+ # the list of `Trip.vehicle_waypoints` to specify the order of the remaining
216
+ # waypoints, otherwise the order will be undetermined.
217
+ #
218
+ # When you specify `Trip.vehicle_waypoints`, the list must contain all
219
+ # the remaining waypoints of the vehicle's trips, with no extra waypoints.
220
+ # You must order these waypoints such that for a given trip, the pickup
221
+ # point is before intermediate destinations, and all intermediate
222
+ # destinations come before the drop-off point. An `EXCLUSIVE` trip's
223
+ # waypoints must not interleave with any other trips.
224
+ # The `trip_id`, `waypoint_type` and `location` fields are used, and all
225
+ # other TripWaypoint fields in `vehicle_waypoints` are ignored.
226
+ #
227
+ # To avoid a race condition for trips with multiple destinations, you
228
+ # should provide `Trip.intermediate_destinations_version` when updating
229
+ # the trip status to `ENROUTE_TO_INTERMEDIATE_DESTINATION`. The
230
+ # `Trip.intermediate_destinations_version` passed must be consistent with
231
+ # Fleet Engine's version. If it isn't, the request fails.
232
+ # @!attribute [rw] update_mask
233
+ # @return [::Google::Protobuf::FieldMask]
234
+ # Required. The field mask indicating which fields in Trip to update.
235
+ # The `update_mask` must contain at least one field.
236
+ class UpdateTripRequest
237
+ include ::Google::Protobuf::MessageExts
238
+ extend ::Google::Protobuf::MessageExts::ClassMethods
239
+ end
240
+
241
+ # SearchTrips request message.
242
+ # @!attribute [rw] header
243
+ # @return [::Google::Maps::FleetEngine::V1::RequestHeader]
244
+ # The standard Fleet Engine request header.
245
+ # @!attribute [rw] parent
246
+ # @return [::String]
247
+ # Required. Must be in the format `providers/{provider}`.
248
+ # The provider must be the Project ID (for example, `sample-cloud-project`)
249
+ # of the Google Cloud Project of which the service account making
250
+ # this call is a member.
251
+ # @!attribute [rw] vehicle_id
252
+ # @return [::String]
253
+ # The vehicle associated with the trips in the request. If unspecified, the
254
+ # returned trips do not contain:
255
+ #
256
+ # * `current_route_segment`
257
+ # * `remaining_waypoints`
258
+ # * `remaining_distance_meters`
259
+ # * `eta_to_first_waypoint`
260
+ # @!attribute [rw] active_trips_only
261
+ # @return [::Boolean]
262
+ # If set to true, the response includes Trips that influence a driver's
263
+ # route.
264
+ # @!attribute [rw] page_size
265
+ # @return [::Integer]
266
+ # If not set, the server decides the number of results to return.
267
+ # @!attribute [rw] page_token
268
+ # @return [::String]
269
+ # Set this to a value previously returned in the `SearchTripsResponse` to
270
+ # continue from previous results.
271
+ # @!attribute [rw] minimum_staleness
272
+ # @return [::Google::Protobuf::Duration]
273
+ # If specified, returns the trips that have not been updated after the time
274
+ # `(current - minimum_staleness)`.
275
+ class SearchTripsRequest
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+ end
279
+
280
+ # SearchTrips response message.
281
+ # @!attribute [rw] trips
282
+ # @return [::Array<::Google::Maps::FleetEngine::V1::Trip>]
283
+ # The list of trips for the requested vehicle.
284
+ # @!attribute [rw] next_page_token
285
+ # @return [::String]
286
+ # Pass this token in the SearchTripsRequest to page through list results. The
287
+ # API returns a trip list on each call, and when no more results remain the
288
+ # trip list is empty.
289
+ class SearchTripsResponse
290
+ include ::Google::Protobuf::MessageExts
291
+ extend ::Google::Protobuf::MessageExts::ClassMethods
292
+ end
293
+ end
294
+ end
295
+ end
296
+ end
@@ -0,0 +1,286 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Maps
22
+ module FleetEngine
23
+ module V1
24
+ # Trip metadata.
25
+ # @!attribute [r] name
26
+ # @return [::String]
27
+ # Output only. In the format "providers/\\{provider}/trips/\\{trip}"
28
+ # @!attribute [rw] vehicle_id
29
+ # @return [::String]
30
+ # ID of the vehicle making this trip.
31
+ # @!attribute [rw] trip_status
32
+ # @return [::Google::Maps::FleetEngine::V1::TripStatus]
33
+ # Current status of the trip.
34
+ # @!attribute [rw] trip_type
35
+ # @return [::Google::Maps::FleetEngine::V1::TripType]
36
+ # The type of the trip.
37
+ # @!attribute [rw] pickup_point
38
+ # @return [::Google::Maps::FleetEngine::V1::TerminalLocation]
39
+ # Location where customer indicates they will be picked up.
40
+ # @!attribute [rw] actual_pickup_point
41
+ # @return [::Google::Maps::FleetEngine::V1::StopLocation]
42
+ # Input only. The actual location when and where customer was picked up.
43
+ # This field is for provider to provide feedback on actual pickup
44
+ # information.
45
+ # @!attribute [rw] actual_pickup_arrival_point
46
+ # @return [::Google::Maps::FleetEngine::V1::StopLocation]
47
+ # Input only. The actual time and location of the driver arrival at
48
+ # the pickup point.
49
+ # This field is for provider to provide feedback on actual arrival
50
+ # information at the pickup point.
51
+ # @!attribute [r] pickup_time
52
+ # @return [::Google::Protobuf::Timestamp]
53
+ # Output only. Either the estimated future time when the rider(s) will be
54
+ # picked up, or the actual time when they were picked up.
55
+ # @!attribute [rw] intermediate_destinations
56
+ # @return [::Array<::Google::Maps::FleetEngine::V1::TerminalLocation>]
57
+ # Intermediate stops in order that the trip requests (in addition
58
+ # to pickup and dropoff). Initially this will not be supported for shared
59
+ # trips.
60
+ # @!attribute [rw] intermediate_destinations_version
61
+ # @return [::Google::Protobuf::Timestamp]
62
+ # Indicates the last time the `intermediate_destinations` was modified.
63
+ # Your server should cache this value and pass it in `UpdateTripRequest`
64
+ # when update `intermediate_destination_index` to ensure the
65
+ # `intermediate_destinations` is not changed.
66
+ # @!attribute [rw] intermediate_destination_index
67
+ # @return [::Integer]
68
+ # When `TripStatus` is `ENROUTE_TO_INTERMEDIATE_DESTINATION`, a number
69
+ # between [0..N-1] indicating which intermediate destination the vehicle will
70
+ # cross next. When `TripStatus` is `ARRIVED_AT_INTERMEDIATE_DESTINATION`, a
71
+ # number between [0..N-1] indicating which intermediate destination the
72
+ # vehicle is at. The provider sets this value. If there are no
73
+ # `intermediate_destinations`, this field is ignored.
74
+ # @!attribute [rw] actual_intermediate_destination_arrival_points
75
+ # @return [::Array<::Google::Maps::FleetEngine::V1::StopLocation>]
76
+ # Input only. The actual time and location of the driver's arrival at
77
+ # an intermediate destination.
78
+ # This field is for provider to provide feedback on actual arrival
79
+ # information at intermediate destinations.
80
+ # @!attribute [rw] actual_intermediate_destinations
81
+ # @return [::Array<::Google::Maps::FleetEngine::V1::StopLocation>]
82
+ # Input only. The actual time and location when and where the customer was
83
+ # picked up from an intermediate destination. This field is for provider to
84
+ # provide feedback on actual pickup information at intermediate destinations.
85
+ # @!attribute [rw] dropoff_point
86
+ # @return [::Google::Maps::FleetEngine::V1::TerminalLocation]
87
+ # Location where customer indicates they will be dropped off.
88
+ # @!attribute [rw] actual_dropoff_point
89
+ # @return [::Google::Maps::FleetEngine::V1::StopLocation]
90
+ # Input only. The actual time and location when and where customer was
91
+ # dropped off. This field is for provider to provide feedback on actual
92
+ # dropoff information.
93
+ # @!attribute [r] dropoff_time
94
+ # @return [::Google::Protobuf::Timestamp]
95
+ # Output only. Either the estimated future time when the rider(s) will be
96
+ # dropped off at the final destination, or the actual time when they were
97
+ # dropped off.
98
+ # @!attribute [r] remaining_waypoints
99
+ # @return [::Array<::Google::Maps::FleetEngine::V1::TripWaypoint>]
100
+ # Output only. The full path from the current location to the dropoff point,
101
+ # inclusive. This path could include waypoints from other trips.
102
+ # @!attribute [rw] vehicle_waypoints
103
+ # @return [::Array<::Google::Maps::FleetEngine::V1::TripWaypoint>]
104
+ # This field supports manual ordering of the waypoints for the trip. It
105
+ # contains all of the remaining waypoints for the assigned vehicle, as well
106
+ # as the pickup and drop-off waypoints for this trip. If the trip hasn't been
107
+ # assigned to a vehicle, then Fleet Engine ignores this field. For privacy
108
+ # reasons, this field is only populated by the server on `UpdateTrip` and
109
+ # `CreateTrip` calls, NOT on `GetTrip` calls.
110
+ # @!attribute [r] route
111
+ # @return [::Array<::Google::Type::LatLng>]
112
+ # Output only. Anticipated route for this trip to the first entry in
113
+ # remaining_waypoints. Note that the first waypoint may belong to a different
114
+ # trip.
115
+ # @!attribute [r] current_route_segment
116
+ # @return [::String]
117
+ # Output only. An encoded path to the next waypoint.
118
+ #
119
+ # Note: This field is intended only for use by the Driver SDK and Consumer
120
+ # SDK. Decoding is not yet supported.
121
+ # @!attribute [r] current_route_segment_version
122
+ # @return [::Google::Protobuf::Timestamp]
123
+ # Output only. Indicates the last time the route was modified.
124
+ #
125
+ # Note: This field is intended only for use by the Driver SDK and Consumer
126
+ # SDK.
127
+ # @!attribute [r] current_route_segment_traffic
128
+ # @return [::Google::Maps::FleetEngine::V1::ConsumableTrafficPolyline]
129
+ # Output only. Indicates the traffic conditions along the
130
+ # `current_route_segment` when they're available.
131
+ #
132
+ # Note: This field is intended only for use by the Driver SDK and Consumer
133
+ # SDK.
134
+ # @!attribute [r] current_route_segment_traffic_version
135
+ # @return [::Google::Protobuf::Timestamp]
136
+ # Output only. Indicates the last time the `current_route_segment_traffic`
137
+ # was modified.
138
+ #
139
+ # Note: This field is intended only for use by the Driver SDK and Consumer
140
+ # SDK.
141
+ # @!attribute [r] current_route_segment_end_point
142
+ # @return [::Google::Maps::FleetEngine::V1::TripWaypoint]
143
+ # Output only. The waypoint where `current_route_segment` ends.
144
+ # @!attribute [r] remaining_distance_meters
145
+ # @return [::Google::Protobuf::Int32Value]
146
+ # Output only. The remaining driving distance in the `current_route_segment`
147
+ # field. The value is unspecified if the trip is not assigned to a vehicle,
148
+ # or the trip is completed or cancelled.
149
+ # @!attribute [r] eta_to_first_waypoint
150
+ # @return [::Google::Protobuf::Timestamp]
151
+ # Output only. The ETA to the next waypoint (the first entry in the
152
+ # `remaining_waypoints` field). The value is unspecified if the trip is not
153
+ # assigned to a vehicle, or the trip is inactive (completed or cancelled).
154
+ # @!attribute [r] remaining_time_to_first_waypoint
155
+ # @return [::Google::Protobuf::Duration]
156
+ # Output only. The duration from when the Trip data is returned to the time
157
+ # in `Trip.eta_to_first_waypoint`. The value is unspecified if the trip is
158
+ # not assigned to a vehicle, or the trip is inactive (completed or
159
+ # cancelled).
160
+ # @!attribute [r] remaining_waypoints_version
161
+ # @return [::Google::Protobuf::Timestamp]
162
+ # Output only. Indicates the last time that `remaining_waypoints` was changed
163
+ # (a waypoint was added, removed, or changed).
164
+ # @!attribute [r] remaining_waypoints_route_version
165
+ # @return [::Google::Protobuf::Timestamp]
166
+ # Output only. Indicates the last time the
167
+ # `remaining_waypoints.path_to_waypoint` and
168
+ # `remaining_waypoints.traffic_to_waypoint` were modified. Your client app
169
+ # should cache this value and pass it in `GetTripRequest` to ensure the
170
+ # paths and traffic for `remaining_waypoints` are only returned if updated.
171
+ # @!attribute [rw] number_of_passengers
172
+ # @return [::Integer]
173
+ # Immutable. Indicates the number of passengers on this trip and does not
174
+ # include the driver. A vehicle must have available capacity to be returned
175
+ # in a `SearchVehicles` response.
176
+ # @!attribute [r] last_location
177
+ # @return [::Google::Maps::FleetEngine::V1::VehicleLocation]
178
+ # Output only. Indicates the last reported location of the vehicle along the
179
+ # route.
180
+ # @!attribute [r] last_location_snappable
181
+ # @return [::Boolean]
182
+ # Output only. Indicates whether the vehicle's `last_location` can be snapped
183
+ # to the current_route_segment. False if `last_location` or
184
+ # `current_route_segment` doesn't exist.
185
+ # It is computed by Fleet Engine. Any update from clients will be ignored.
186
+ # @!attribute [rw] view
187
+ # @return [::Google::Maps::FleetEngine::V1::TripView]
188
+ # The subset of Trip fields that are populated and how they should be
189
+ # interpreted.
190
+ class Trip
191
+ include ::Google::Protobuf::MessageExts
192
+ extend ::Google::Protobuf::MessageExts::ClassMethods
193
+ end
194
+
195
+ # The actual location where a stop (pickup/dropoff) happened.
196
+ # @!attribute [rw] point
197
+ # @return [::Google::Type::LatLng]
198
+ # Required. Denotes the actual location.
199
+ # @!attribute [rw] timestamp
200
+ # @return [::Google::Protobuf::Timestamp]
201
+ # Indicates when the stop happened.
202
+ # @!attribute [rw] stop_time
203
+ # @deprecated This field is deprecated and may be removed in the next major version update.
204
+ # @return [::Google::Protobuf::Timestamp]
205
+ # Input only. Deprecated. Use the timestamp field.
206
+ class StopLocation
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # The status of a trip indicating its progression.
212
+ module TripStatus
213
+ # Default, used for unspecified or unrecognized trip status.
214
+ UNKNOWN_TRIP_STATUS = 0
215
+
216
+ # Newly created trip.
217
+ NEW = 1
218
+
219
+ # The driver is on their way to the pickup point.
220
+ ENROUTE_TO_PICKUP = 2
221
+
222
+ # The driver has arrived at the pickup point.
223
+ ARRIVED_AT_PICKUP = 3
224
+
225
+ # The driver has arrived at an intermediate destination and is waiting for
226
+ # the rider.
227
+ ARRIVED_AT_INTERMEDIATE_DESTINATION = 7
228
+
229
+ # The driver is on their way to an intermediate destination
230
+ # (not the dropoff point).
231
+ ENROUTE_TO_INTERMEDIATE_DESTINATION = 8
232
+
233
+ # The driver has picked up the rider and is on their way to the
234
+ # next destination.
235
+ ENROUTE_TO_DROPOFF = 4
236
+
237
+ # The rider has been dropped off and the trip is complete.
238
+ COMPLETE = 5
239
+
240
+ # The trip was canceled prior to pickup by the driver, rider, or
241
+ # rideshare provider.
242
+ CANCELED = 6
243
+ end
244
+
245
+ # A set of values that indicate upon which platform the request was issued.
246
+ module BillingPlatformIdentifier
247
+ # Default. Used for unspecified platforms.
248
+ BILLING_PLATFORM_IDENTIFIER_UNSPECIFIED = 0
249
+
250
+ # The platform is a client server.
251
+ SERVER = 1
252
+
253
+ # The platform is a web browser.
254
+ WEB = 2
255
+
256
+ # The platform is an Android mobile device.
257
+ ANDROID = 3
258
+
259
+ # The platform is an IOS mobile device.
260
+ IOS = 4
261
+
262
+ # Other platforms that are not listed in this enumeration.
263
+ OTHERS = 5
264
+ end
265
+
266
+ # Selector for different sets of Trip fields in a `GetTrip` response. See
267
+ # [AIP-157](https://google.aip.dev/157) for context. Additional views are
268
+ # likely to be added.
269
+ module TripView
270
+ # The default value. For backwards-compatibility, the API will default to an
271
+ # SDK view. To ensure stability and support, customers are
272
+ # advised to select a `TripView` other than `SDK`.
273
+ TRIP_VIEW_UNSPECIFIED = 0
274
+
275
+ # Includes fields that may not be interpretable or supportable using
276
+ # publicly available libraries.
277
+ SDK = 1
278
+
279
+ # Trip fields are populated for the Journey Sharing use case. This view is
280
+ # intended for server-to-server communications.
281
+ JOURNEY_SHARING_V1S = 2
282
+ end
283
+ end
284
+ end
285
+ end
286
+ end