Unverified Commit 17805398 authored by Dan Jones's avatar Dan Jones
Browse files

feat: features and fixtures from js adapter

parent 72413c71
{
"openapi": "3.0.3",
"info": {
"title": "soar",
"version": "1.0",
"description": "SoAR message schemas"
},
"paths": {},
"components": {
"schemas": {
"Message": {
"properties": {
"metadata": {
"$ref": "#/components/schemas/Metadata"
},
"payload": {
"$ref": "#/components/schemas/Payload"
}
},
"required": ["metadata", "payload"]
},
"Payload": {
"discriminator": {
"propertyName": "message_type",
"mapping": {
"VehicleStatus": "#/components/schemas/VehicleStatus",
"VehicleMission": "#/components/schemas/VehicleMission",
"AreaOfInterest": "#/components/schemas/AreaOfInterest"
}
},
"oneOf": [
{
"$ref": "#/components/schemas/VehicleStatus"
},
{
"$ref": "#/components/schemas/VehicleMission"
},
{
"$ref": "#/components/schemas/AreaOfInterest"
}
]
},
"Metadata": {
"properties": {
"source": {
"type": "string",
"description": "The sender.",
"example": "autonomy-engine"
},
"destination": {
"type": "string",
"description": "Publisher topic.",
"example": "soar.noc.autosub.ah1.status"
},
"delivery_type": {
"type": "string",
"description": "Published or broadcast",
"enum": ["broadcast", "publish"],
"example": "2.0.0"
},
"message_id": {
"type": "string",
"description": "An identifier for the type of message received.",
"example": "VehicleStatus"
}
},
"required": ["source","destination","message_id"],
"type": "object"
},
"Coordinates": {
"properties": {
"latitude": {
"type": "number",
"description": "Latitude in decimal degrees.",
"example": 54.234
},
"longitude": {
"type": "number",
"description": "Longitude in decimal degrees.",
"example": -1.432
},
"depth": {
"type": "number",
"description": "Target depth",
"default": 0,
"example": 50
},
"altitude": {
"type": "number",
"description": "Target altitude above bottom",
"default": 0,
"example": 50
},
"projection": {
"type": "integer",
"description": "EPSG Projection Code",
"example": 4326,
"default": 4326
}
},
"required": ["latitude", "longitude"],
"type": "object"
},
"VehicleStatus": {
"properties": {
"message_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "VehicleStatus",
"enum": ["VehicleStatus"]
},
"operator_id": {
"type": "string",
"description": "An identifier for the operator.",
"example": "noc"
},
"vehicle_id": {
"type": "string",
"description": "An identifier for the vehicle.",
"example": "noc_ah1"
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
},
"battery_percentage": {
"type": "number",
"description": "The remaining battery capacity.",
"example": 64
}
},
"required": ["message_type", "operator_id", "vehicle_id", "coordinates", "battery_percentage"],
"type": "object"
},
"VehicleMission": {
"properties": {
"message_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "VehicleMission",
"enum": ["VehicleMission"]
},
"operator_id": {
"type": "string",
"description": "An identifier for the operator.",
"example": "noc"
},
"vehicle_id": {
"type": "string",
"description": "An identifier for the vehicle.",
"example": "noc_ah1"
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
},
"actions": {
"type": "array",
"items": {
"discriminator": {
"propertyName": "action_type",
"mapping": {
"GoToWaypoint": "#/components/schemas/GoToWaypoint",
"DescendToAltitude": "#/components/schemas/DescendToAltitude",
"AscendToSurface": "#/components/schemas/AscendToSurface"
}
},
"oneOf": [
{
"$ref": "#/components/schemas/VehicleStatus"
},
{
"$ref": "#/components/schemas/VehicleMission"
},
{
"$ref": "#/components/schemas/AreaOfInterest"
}
]
}
}
},
"required": ["message_type", "operator_id", "vehicle_id", "coordinates", "actions"],
"type": "object"
},
"AreaOfInterest": {
"properties": {
"message_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "AreaOfInterest",
"enum": ["AreaOfInterest"]
},
"operator_id": {
"type": "string",
"description": "An identifier for the operator.",
"example": "noc"
},
"vehicle_id": {
"type": "string",
"description": "An identifier for the vehicle.",
"example": "noc_ah1"
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
}
},
"required": ["message_type", "operator_id", "vehicle_id", "coordinates"],
"type": "object"
},
"GoToWaypoint": {
"properties": {
"action_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "GoToWaypoint",
"enum": ["GoToWaypoint"]
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
}
},
"type": "object"
},
"DescendToAltitude": {
"properties": {
"action_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "DescendToAltitude",
"enum": ["DescendToAltitude"]
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
}
},
"type": "object"
},
"AscendToSurface": {
"properties": {
"action_type": {
"type": "string",
"description": "An identifier for the payload type.",
"example": "AscendToSurface",
"enum": ["AscendToSurface"]
},
"coordinates": {
"$ref": "#/components/schemas/Coordinates"
}
},
"type": "object"
}
}
}
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment