Skip to content

Commit 11092c7

Browse files
committed
Merge branch 'dev' into feature-agency-provider-api-alignment
# Conflicts: # agency/README.md # provider/README.md
2 parents 8651484 + 813a14e commit 11092c7

11 files changed

Lines changed: 380 additions & 17 deletions

File tree

agency/README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,8 @@ Body Params:
9898
| `mode` | Enum | Required | [Mobility Mode][modes] |
9999
| `propulsion_types` | Enum[] | Required | Array of [Propulsion Type][propulsion-types]; allows multiple values |
100100
| `vehicle_attributes` | Conditionally Required | Array of [vehicle attributes](/modes/#vehicle-attributes) | Vehicle attributes appropriate for the current [mode][modes] |
101+
| `battery_capacity` | Integer | Required if Available | Capacity of battery expressed as milliamp hours (mAh) |
102+
| `fuel_capacity` | Integer | Required if Available | Capacity of fuel tank (liquid, solid, gaseous) expressed in liters |
101103

102104
201 Success Response:
103105

@@ -214,6 +216,32 @@ Body Params:
214216

215217
[Top][toc]
216218

219+
<<<<<<< HEAD
220+
=======
221+
## Telemetry Data
222+
223+
A standard point of vehicle telemetry. References to latitude and longitude imply coordinates encoded in the [WGS 84 (EPSG:4326)](https://en.wikipedia.org/wiki/World_Geodetic_System) standard GPS or GNSS projection expressed as [Decimal Degrees](https://en.wikipedia.org/wiki/Decimal_degrees).
224+
225+
| Field | Type | Required/Optional | Field Description |
226+
| -------------- | -------------- | --------------------- | ------------------------------------------------------------ |
227+
| `device_id` | UUID | Required | ID used in [Register](#vehicle---register) |
228+
| `timestamp` | [timestamp][ts]| Required | Date/time that event occurred. Based on GPS or GNSS clock |
229+
| `gps` | Object | Required | Telemetry position data |
230+
| `gps.lat` | Double | Required | Latitude of the location |
231+
| `gps.lng` | Double | Required | Longitude of the location |
232+
| `gps.altitude` | Double | Required if Available | Altitude above mean sea level in meters |
233+
| `gps.heading` | Double | Required if Available | Degrees - clockwise starting at 0 degrees at true North |
234+
| `gps.speed` | Float | Required if Available | Estimated speed in meters / sec as reported by the GPS chipset |
235+
| `gps.accuracy` | Float | Required if Available | Horizontal accuracy, in meters |
236+
| `gps.hdop` | Float | Required if Available | Horizontal GPS or GNSS accuracy value (see [hdop][hdop]) |
237+
| `gps.satellites` | Integer | Required if Available | Number of GPS or GNSS satellites
238+
| `battery_percent` | Integer | Required if Applicable | Percent battery charge of vehicle, expressed between 0 and 100 |
239+
| `fuel_percent` | Integer | Required if Applicable | Percent fuel in vehicle, expressed between 0 and 100 |
240+
| `stop_id` | UUID | Required if Applicable | Stop that the vehicle is currently located at. Only applicable for _docked_ Micromobility. See [Stops][stops] |
241+
242+
[Top][toc]
243+
244+
>>>>>>> dev
217245
## Stops
218246

219247
The `/stops` endpoint allows an agency to register city-managed Stops, or a provider to register self-managed Stops.

general-information.md

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -432,17 +432,28 @@ See new location within [individual modes](/modes#list-of-supported-modes) in [m
432432

433433
A vehicle record is as follows:
434434

435-
| Field | Type | Field Description |
436-
| ------------- | --------- | ----------------------------------------------------------------------------- |
437-
| `device_id` | UUID | Provided by Operator to uniquely identify a vehicle |
438-
| `provider_id` | UUID | Issued by Agency and [tracked](../providers.csv) |
439-
| `vehicle_id` | String | Vehicle Identification Number (vehicle_id) visible on vehicle |
440-
| `vehicle_type` | Enum | [Vehicle Type][vehicle-types] |
441-
| `propulsion_types` | Enum[] | Array of [Propulsion Type][propulsion-types]; allows multiple values |
442-
| `vehicle_attributes` | Array of [vehicle attributes](/modes/#vehicle-attributes) | Vehicle attributes appropriate for the current [mode][modes] |
443-
| `state` | Enum | Current vehicle state. See [Vehicle State][vehicle-states] |
444-
| `prev_events` | Enum[] | Last [Vehicle Event][vehicle-events] |
445-
| `updated` | [timestamp][ts] | Date of last event update |
435+
(?) TODO separate out immutable vs mutable traits e.g. `fuel_capacity` vs `fuel_percent`
436+
437+
(?) TODO include last-event and last-telemetry objects INSTEAD of pulling up rando fields
438+
439+
| Field | Type | Required/Optional | Comments |
440+
| ----- | ---- | ----------------- | ----- |
441+
| `provider_id` | UUID | Required | A UUID for the Provider, unique within MDS. See MDS [provider list](/providers.csv). |
442+
| `device_id` | UUID | Required | A unique device ID in UUID format, should match this device in Provider |
443+
| `vehicle_id` | String | Required | A unique vehicle identifier (visible code, licence plate, etc), visible on the vehicle itself |
444+
| `vehicle_type` | Enum | Required | see [vehicle types][vehicle-types] table |
445+
| `vehicle_attributes` | Array | Optional | **[Mode](/modes#list-of-supported-modes) Specific**. [Vehicle attributes](/modes#vehicle-attributes) given as mode-specific unordered key-value pairs |
446+
| `propulsion_types` | Enum[] | Required | Array of [propulsion types][propulsion-types]; allows multiple values |
447+
| `battery_capacity` | Integer | Required if Available | Capacity of battery expressed as milliamp hours (mAh) |
448+
| `fuel_capacity` | Integer | Required if Available | Capacity of fuel tank (liquid, solid, gaseous) expressed in liters |
449+
| `last_event_time` | [timestamp][ts] | Required | Date/time when last state change occurred. See [Event Times][event-times] |
450+
| `last_state` | Enum | Required | [Vehicle state][vehicle-states] of most recent state change. |
451+
| `last_event_types` | Enum[] | Required | [Vehicle event(s)][vehicle-events] of most recent state change, allowable values determined by `last_vehicle_state`. |
452+
| `last_event_location` | GeoJSON [Point Feature][point-geo]| Required | Location of vehicle's last event. See also [Stop-based Geographic Data][stop-based-geo]. |
453+
| `current_location` | GeoJSON [Point Feature][point-geo] | Required if Applicable | Current location of vehicle if different from last event, and the vehicle is not currently on a trip. See also [Stop-based Geographic Data][stop-based-geo]. |
454+
| `battery_percent` | Integer | Required if Applicable | Percent battery charge of vehicle, expressed between 0 and 100 |
455+
| `fuel_percent` | Integer | Required if Applicable | Percent fuel in vehicle, expressed between 0 and 100 |
456+
446457

447458
[Top][toc]
448459

geography/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ Type of geography. These specific types are recommendations based on ones common
128128
| `municipal_boundary` | Edge of a city |
129129
| `policy_zone` | Zone where [Policy](/policy) rules could be in effect, like operating area, distribution/equity zones, no/slow ride zone, no parking, etc |
130130
| `county_boundary` | Edge of a county |
131-
| `stop` | See [Stops](/general-information.ms#stops) |
131+
| `stop` | See [Stops](/general-information.md#stops) |
132132
| `council_district` | City council district |
133133
| `political_district` | Politically defined voting area |
134134
| `neighborhood` | Neighborhood area |

modes/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,14 @@ The `trip_type` field allows the purpose of each trip segment to be described. S
5858

5959
The `trip_attributes` array allows additional mode-specific information about the nature of a trip to be described. It can return a list of JSON-formatted key/value pairs which correspond to the allowed attributes and values for the operative mode. See each [mode definition](#list-of-supported-modes) for details.
6060

61+
_See more available trip attributes for any mode in the [trips endpoint](/provider#trips)._
62+
6163
### Vehicle Attributes
6264

6365
The `vehicle_attributes` array returns a list of JSON-formatted key/value pairs which correspond to the allowed attributes and values for the operative mode. For each mode, the allowed attributes and corresponding values are defined in the [mode definition](#list-of-supported-modes).
6466

67+
_See more available vehicle attributes for any mode in the [vehicles endpoint](/provider#vehicles)._
68+
6569
### Accessibility Options
6670

6771
The `accessibility_options` array returns a list of JSON-formatted key/value pairs which correspond to the allowed accessibility attributes and values for the operative mode. For each mode, the allowed attributes and corresponding values are defined in the [mode definition](#list-of-supported-modes).

0 commit comments

Comments
 (0)