diff options
author | 2023-09-22 09:45:27 -0400 | |
---|---|---|
committer | 2023-09-22 09:45:27 -0400 | |
commit | 766283068a39df9bd7dabf10c8c36f5a75d4335a (patch) | |
tree | 2a7e07becb75e71c48774fd686c8840df031f5b6 /src/main/proto/messages/VehiclePrecisionLocation.proto | |
parent | 59f56720a88b9a8f638e4f0e6f1560cc575887df (diff) |
Signed-off-by: James Simon <jamsimox@amazon.com>
Change-Id: I9214b5eae0402e0de542227bda2aee2981c52eb5
Diffstat (limited to 'src/main/proto/messages/VehiclePrecisionLocation.proto')
-rw-r--r-- | src/main/proto/messages/VehiclePrecisionLocation.proto | 83 |
1 files changed, 56 insertions, 27 deletions
diff --git a/src/main/proto/messages/VehiclePrecisionLocation.proto b/src/main/proto/messages/VehiclePrecisionLocation.proto index 4438c79..7e132ec 100644 --- a/src/main/proto/messages/VehiclePrecisionLocation.proto +++ b/src/main/proto/messages/VehiclePrecisionLocation.proto @@ -1,39 +1,46 @@ -syntax = "proto3"; +syntax = "proto3"; /** +* <h1>Precise Vehicle Location</h1> +*<p>This set of messages define how to acquire vehicle location, either on demand or by interval and events.</p> +*<h2>Message Orchestration</h2> +*<p><img src="doc/images/mqttLocation.png" alt="HeaderMessage.puml"></p> +*<h2>MQTT Topic Design</h2> +*<table> +* <thead> +* <tr> +* <th>Direction</th> +* <th>Subscribe Topic</th> +* <th>Publish Topic</th> +* </tr> +* </thead> +* <tbody> +* <tr> +* <td>Vehicle to Cloud</td> +* <td>vloc/"*"</td> +* <td>vloc/<device_id></td> +* </tr> +* <tr> +* <td>Cloud to Vehicle</td> +* <td><device_id>/vloc</td> +* <td><device_id>/vloc</td> +* </tr> +* </tbody> +* </table> +*/ -package messages.location; -import "vss/vspec.proto"; +package messages; import "messages/VehicleMessageHeader.proto"; - - -// # Precise Vehicle Location -// -// This set of messages define how to aquire vehicle location, either on demand or by interval and events. -// -// ## Message Orchestration -// [TO-DO] -// -// ## MQTT Topic Design -// | Direction | Subscribe Topic | Publish Topic | -// | ----------- | ----- | -------- | -// | Vehicle to Cloud | vloc/* | vloc/<device_id> | -// | ----------- | ----- | -------- | -// | Cloud to Vehicle | <device_id>/vloc| <device_id>/vloc | -// -// - - -message RequestCurrentVehicleLocation +message RequestCurrentVehicleLocationTest /// Requests vehicle location on demand { - .vss.VehicleVehicleIdentification vehicleIdentification = 1; /// At most this identity should be all that is required to trigger the request for location + string vehicle_identity = 1; /// At most this identity should be all that is required to trigger the request for location and should contain a salted hash } message ResponseCurrentVehicleLocation /// Response to vehicle location request { - .messages.VehicleMessageHeading vehicleMessageHeading =1; - .vss.VehicleCurrentLocation vehicleCurrentLocation =2; + VehicleMessageHeading vehicleMessageHeading =1; + VehicleCurrentLocation vehicleCurrentLocation =2; ResponseStatusEnum responseStatus = 3; } @@ -46,8 +53,30 @@ enum ResponseStatusEnum { message PublishCurrentVehicleLocation /// This is the event based version, proactively publishing location data without a cloud side request { VehicleMessageHeading vehicleMessageHeading =1; - .vss.VehicleCurrentLocation vehicleCurrentLocation =2; + VehicleCurrentLocation vehicleCurrentLocation =2; } +message VehicleCurrentLocation { + string Timestamp = 1; + double Latitude = 2; + double Longitude = 3; + double Heading = 4; + double HorizontalAccuracy = 5; + double Altitude = 6; + double VerticalAccuracy = 7; + + VehicleCurrentLocationGNSSReceiver GNSSReceiver = 8; +} + +message VehicleCurrentLocationGNSSReceiver { + string FixType = 1; + VehicleCurrentLocationGNSSReceiverMountingPosition MountingPosition = 2; +} + +message VehicleCurrentLocationGNSSReceiverMountingPosition { + int32 X = 1; + int32 Y = 2; + int32 Z = 3; +} |