Skip to content

Commit 99e97ae

Browse files
authored
Merge pull request #570 from openmobilityfoundation/ms-located-event-type
Added 'located' event_type to the docs, state machine, and schema.
2 parents 4e51423 + 20fe17d commit 99e97ae

8 files changed

Lines changed: 80 additions & 16 deletions

File tree

MDS-state-machine-diagram.svg

Lines changed: 1 addition & 1 deletion
Loading

agency/get_vehicle.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@
8787
"comms_restored",
8888
"compliance_pick_up",
8989
"decommissioned",
90+
"located",
9091
"maintenance",
9192
"maintenance_pick_up",
9293
"missing",
@@ -206,6 +207,7 @@
206207
"agency_drop_off",
207208
"battery_charged",
208209
"comms_restored",
210+
"located",
209211
"maintenance",
210212
"on_hours",
211213
"provider_drop_off",
@@ -228,7 +230,9 @@
228230
"contains": {
229231
"enum": [
230232
"comms_restored",
231-
"trip_leave_jurisdiction"
233+
"located",
234+
"trip_leave_jurisdiction",
235+
"unspecified"
232236
]
233237
}
234238
}
@@ -244,6 +248,7 @@
244248
"enum": [
245249
"battery_low",
246250
"comms_restored",
251+
"located",
247252
"maintenance",
248253
"off_hours",
249254
"system_suspend",
@@ -262,8 +267,10 @@
262267
"contains": {
263268
"enum": [
264269
"comms_restored",
270+
"located",
265271
"trip_enter_jurisdiction",
266-
"trip_start"
272+
"trip_start",
273+
"unspecified"
267274
]
268275
}
269276
}
@@ -280,6 +287,7 @@
280287
"agency_pick_up",
281288
"compliance_pick_up",
282289
"decommissioned",
290+
"located",
283291
"maintenance_pick_up",
284292
"rebalance_pick_up",
285293
"unspecified"
@@ -297,7 +305,9 @@
297305
"contains": {
298306
"enum": [
299307
"comms_restored",
300-
"reservation_start"
308+
"located",
309+
"reservation_start",
310+
"unspecified"
301311
]
302312
}
303313
}

agency/post_vehicle_event.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@
119119
"comms_restored",
120120
"compliance_pick_up",
121121
"decommissioned",
122+
"located",
122123
"maintenance",
123124
"maintenance_pick_up",
124125
"missing",
@@ -188,6 +189,7 @@
188189
"agency_drop_off",
189190
"battery_charged",
190191
"comms_restored",
192+
"located",
191193
"maintenance",
192194
"on_hours",
193195
"provider_drop_off",
@@ -210,7 +212,9 @@
210212
"contains": {
211213
"enum": [
212214
"comms_restored",
213-
"trip_leave_jurisdiction"
215+
"located",
216+
"trip_leave_jurisdiction",
217+
"unspecified"
214218
]
215219
}
216220
}
@@ -226,6 +230,7 @@
226230
"enum": [
227231
"battery_low",
228232
"comms_restored",
233+
"located",
229234
"maintenance",
230235
"off_hours",
231236
"system_suspend",
@@ -244,8 +249,10 @@
244249
"contains": {
245250
"enum": [
246251
"comms_restored",
252+
"located",
247253
"trip_enter_jurisdiction",
248-
"trip_start"
254+
"trip_start",
255+
"unspecified"
249256
]
250257
}
251258
}
@@ -262,6 +269,7 @@
262269
"agency_pick_up",
263270
"compliance_pick_up",
264271
"decommissioned",
272+
"located",
265273
"maintenance_pick_up",
266274
"rebalance_pick_up",
267275
"unspecified"
@@ -279,7 +287,9 @@
279287
"contains": {
280288
"enum": [
281289
"comms_restored",
282-
"reservation_start"
290+
"located",
291+
"reservation_start",
292+
"unspecified"
283293
]
284294
}
285295
}

general-information.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,7 @@ Event types are the possible transitions bewteen some vehicle states.
267267
| `comms_restored` | Communications restored |
268268
| `compliance_pick_up` | Pick up for compliance |
269269
| `decommissioned` | Decommissioned |
270+
| `located` | Located |
270271
| `maintenance` | General maintenance |
271272
| `maintenance_pick_up` | Pick up for maintenance |
272273
| `missing` | Missing |
@@ -309,30 +310,36 @@ Vehicles can enter the `unknown` state to and from any other state with the foll
309310
| `on_trip` | `available` | `trip_cancel` | A trip was initiated, then canceled prior to moving any distance |
310311
| `non_operational` | `available` | `system_resume` | The vehicle is available because e.g. weather suspension or temporary regulations ended |
311312
| `unknown` | `available` | `comms_restored` | The vehicle transmitted status information after a period of being out of communication. |
313+
| `unknown` | `available` | `located` | The vehicle has been located by the provider |
312314
| `non_operational`, `unknown`| `available` | `unspecified` | The vehicle became available, but the provider cannot definitively (yet) specify the reason. Generally, regulator Service-Level Agreements will limit the amount of time a vehicle's last event type may be `unspecified`. |
313315
| `available` | `reserved` | `reservation_start` | The vehicle was reserved for use by a customer |
314316
| `unknown` | `reserved` | `comms_restored` | The vehicle transmitted status information after a period of being out of communication. |
317+
| `unknown` | `reserved` | `located` | The vehicle has been located by the provider |
315318
| `unknown` | `reserved` | `unspecified` | The provider cannot definitively state how a vehicle became reserved. |
316319
| `available`, `reserved` | `on_trip` | `trip_start` | A customer initiated a trip with this vehicle |
317320
| `elsewhere` | `on_trip` | `trip_enter_jurisdiction` | A vehicle on a trip entered the jurisdiction |
318321
| `unknown` | `on_trip` | `comms_restored` | The vehicle transmitted status information after a period of being out of communication. |
322+
| `unknown` | `on_trip` | `located` | The vehicle has been located by the provider |
319323
| `unknown` | `on_trip` | `unspecified` | The provider cannot definitively state how a vehicle started a trip. |
320324
| `on_trip` | `elsewhere` | `trip_leave_jurisdiction` | A vehicle on a trip left the jurisdiction |
321325
| `unknown` | `elsewhere` | `comms_restored` | The vehicle transmitted status information after a period of being out of communication. |
326+
| `unknown` | `elsewhere` | `located` | The vehicle has been located by the provider |
322327
| `unknown` | `elsewhere` | `unspecified` | The provider cannot definitively state how a vehicle went `elsewhere`. |
323328
| `available` | `non_operational` | `battery_low` | The vehicle's battery is below some rentability threshold |
324329
| `available` | `non_operational` | `maintenance` | The vehicle requires some non-charge-related maintenance |
325330
| `available` | `non_operational` | `off_hours` | The vehicle has exited operating hours (per the regulator or per the Provider) |
326331
| `available` | `non_operational` | `system_suspend` | The vehicle is not available because of e.g. weather or temporary regulations |
327332
| `available`, `unknown` | `non_operational` | `unspecified` | The vehicle became unavailable, but the Provider cannot definitively (yet) specify the reason. |
328333
| `unknown` | `non_operational` | `comms_restored` | The vehicle transmitted status information after a period of being out of communication |
334+
| `unknown` | `non_operational` | `located` | The vehicle has been located by the provider |
329335
| `available`, `non_operational`, `elsewhere` | `removed` | `rebalance_pick_up` | The provider picked up the vehicle for rebalancing purposes |
330336
| `available`, `non_operational`, `elsewhere` | `removed` | `maintenance_pick_up` | The provider picked up the vehicle to service it |
331337
| `available`, `non_operational`, `elsewhere`, `unknown` | `removed` | `agency_pick_up` | An agency picked up the vehicle for some reason, e.g. illegal placement |
332338
| `available`, `non_operational`, `elsewhere` | `removed` | `compliance_pick_up` | The provider picked up the vehicle because it was placed in a non-compliant location |
333339
| `available`, `non_operational`, `elsewhere`, `unknown` | `removed` | `decommissioned` | The provider has removed the vehicle from its fleet |
334340
| `unknown`, `non_operational`, `available`, `elsewhere` | `removed` | `unspecified` | The vehicle was removed, but the provider cannot definitively (yet) specify the reason |
335341
| `unknown` | `removed` | `comms_restored` | The vehicle transmitted status information after a period of being in an unknown state |
342+
| `unknown` | `removed` | `located` | The vehicle has been located by the provider |
336343
| `available`, `elsewhere`, `non_operational`, `on_trip`, `removed`, `reserved` | `unknown` | `missing` | The vehicle is not at its last reported GPS location, or that location is wildly in error |
337344
| `available`, `elsewhere`, `non_operational`, `on_trip`, `removed`, `reserved` | `unknown` | `comms_lost` | The vehicle is unable to transmit its GPS location or other status information |
338345
| `available`, `elsewhere`, `non_operational`, `on_trip`, `removed`, `reserved` | `unknown` | `unspecified` | The provider cannot definitively (yet) specify the reason for the unknown state |

provider/events.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,7 @@
179179
"comms_restored",
180180
"compliance_pick_up",
181181
"decommissioned",
182+
"located",
182183
"maintenance",
183184
"maintenance_pick_up",
184185
"missing",
@@ -397,6 +398,7 @@
397398
"agency_drop_off",
398399
"battery_charged",
399400
"comms_restored",
401+
"located",
400402
"maintenance",
401403
"on_hours",
402404
"provider_drop_off",
@@ -419,7 +421,9 @@
419421
"contains": {
420422
"enum": [
421423
"comms_restored",
422-
"trip_leave_jurisdiction"
424+
"located",
425+
"trip_leave_jurisdiction",
426+
"unspecified"
423427
]
424428
}
425429
}
@@ -435,6 +439,7 @@
435439
"enum": [
436440
"battery_low",
437441
"comms_restored",
442+
"located",
438443
"maintenance",
439444
"off_hours",
440445
"system_suspend",
@@ -453,8 +458,10 @@
453458
"contains": {
454459
"enum": [
455460
"comms_restored",
461+
"located",
456462
"trip_enter_jurisdiction",
457-
"trip_start"
463+
"trip_start",
464+
"unspecified"
458465
]
459466
}
460467
}
@@ -471,6 +478,7 @@
471478
"agency_pick_up",
472479
"compliance_pick_up",
473480
"decommissioned",
481+
"located",
474482
"maintenance_pick_up",
475483
"rebalance_pick_up",
476484
"unspecified"
@@ -488,7 +496,9 @@
488496
"contains": {
489497
"enum": [
490498
"comms_restored",
491-
"reservation_start"
499+
"located",
500+
"reservation_start",
501+
"unspecified"
492502
]
493503
}
494504
}

provider/status_changes.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,7 @@
179179
"comms_restored",
180180
"compliance_pick_up",
181181
"decommissioned",
182+
"located",
182183
"maintenance",
183184
"maintenance_pick_up",
184185
"missing",
@@ -338,6 +339,7 @@
338339
"agency_drop_off",
339340
"battery_charged",
340341
"comms_restored",
342+
"located",
341343
"maintenance",
342344
"on_hours",
343345
"provider_drop_off",
@@ -360,7 +362,9 @@
360362
"contains": {
361363
"enum": [
362364
"comms_restored",
363-
"trip_leave_jurisdiction"
365+
"located",
366+
"trip_leave_jurisdiction",
367+
"unspecified"
364368
]
365369
}
366370
}
@@ -376,6 +380,7 @@
376380
"enum": [
377381
"battery_low",
378382
"comms_restored",
383+
"located",
379384
"maintenance",
380385
"off_hours",
381386
"system_suspend",
@@ -394,8 +399,10 @@
394399
"contains": {
395400
"enum": [
396401
"comms_restored",
402+
"located",
397403
"trip_enter_jurisdiction",
398-
"trip_start"
404+
"trip_start",
405+
"unspecified"
399406
]
400407
}
401408
}
@@ -412,6 +419,7 @@
412419
"agency_pick_up",
413420
"compliance_pick_up",
414421
"decommissioned",
422+
"located",
415423
"maintenance_pick_up",
416424
"rebalance_pick_up",
417425
"unspecified"
@@ -429,7 +437,9 @@
429437
"contains": {
430438
"enum": [
431439
"comms_restored",
432-
"reservation_start"
440+
"located",
441+
"reservation_start",
442+
"unspecified"
433443
]
434444
}
435445
}

provider/vehicles.json

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,7 @@
217217
"comms_restored",
218218
"compliance_pick_up",
219219
"decommissioned",
220+
"located",
220221
"maintenance",
221222
"maintenance_pick_up",
222223
"missing",
@@ -407,6 +408,7 @@
407408
"agency_drop_off",
408409
"battery_charged",
409410
"comms_restored",
411+
"located",
410412
"maintenance",
411413
"on_hours",
412414
"provider_drop_off",
@@ -429,7 +431,9 @@
429431
"contains": {
430432
"enum": [
431433
"comms_restored",
432-
"trip_leave_jurisdiction"
434+
"located",
435+
"trip_leave_jurisdiction",
436+
"unspecified"
433437
]
434438
}
435439
}
@@ -445,6 +449,7 @@
445449
"enum": [
446450
"battery_low",
447451
"comms_restored",
452+
"located",
448453
"maintenance",
449454
"off_hours",
450455
"system_suspend",
@@ -463,8 +468,10 @@
463468
"contains": {
464469
"enum": [
465470
"comms_restored",
471+
"located",
466472
"trip_enter_jurisdiction",
467-
"trip_start"
473+
"trip_start",
474+
"unspecified"
468475
]
469476
}
470477
}
@@ -481,6 +488,7 @@
481488
"agency_pick_up",
482489
"compliance_pick_up",
483490
"decommissioned",
491+
"located",
484492
"maintenance_pick_up",
485493
"rebalance_pick_up",
486494
"unspecified"
@@ -498,7 +506,9 @@
498506
"contains": {
499507
"enum": [
500508
"comms_restored",
501-
"reservation_start"
509+
"located",
510+
"reservation_start",
511+
"unspecified"
502512
]
503513
}
504514
}

0 commit comments

Comments
 (0)