Files
BQP/srcs/RobotNet10/FleetManager/RobotNet10.FleetManager/Documents/VDA5050/json_schemas/instantActions.schema
2026-07-13 09:25:40 +07:00

127 lines
5.3 KiB
Plaintext

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "instantActions",
"description": "JSON Schema for publishing instantActions that the AGV is to execute as soon as they arrive.",
"required": [
"headerId",
"timestamp",
"version",
"manufacturer",
"serialNumber",
"actions"
],
"subtopic": "/instantActions",
"type": "object",
"properties": {
"headerId": {
"title": "headerId",
"type": "integer",
"description": "headerId of the message. The headerId is defined per topic and incremented by 1 with each sent (but not necessarily received) message."
},
"timestamp": {
"title": "timestamp",
"type": "string",
"format": "date-time",
"description": "Timestamp in ISO8601 format (YYYY-MM-DDTHH:mm:ss.ffZ).",
"examples": [
"1991-03-11T11:40:03.12Z"
]
},
"version": {
"title": "Version",
"type": "string",
"description": "Version of the protocol [Major].[Minor].[Patch]",
"examples": [
"1.3.2"
]
},
"manufacturer": {
"type": "string",
"description": "Manufacturer of the AGV"
},
"serialNumber": {
"type": "string",
"description": "Serial number of the AGV."
},
"actions": {
"type": "array",
"items": {
"type": "object",
"description": "Describes an action that the AGV can perform.",
"required": [
"actionId",
"actionType",
"blockingType"
],
"properties": {
"actionType": {
"type": "string",
"description": "Name of action as described in the first column of \"Actions and Parameters\". Identifies the function of the action."
},
"actionId": {
"type": "string",
"description": "Unique ID to identify the action and map them to the actionState in the state. Suggestion: Use UUIDs."
},
"actionDescription": {
"type": "string",
"description": "Additional information on the action."
},
"blockingType": {
"type": "string",
"description": "Regulates if the action is allowed to be executed during movement and/or parallel to other actions.\nnone: action can happen in parallel with others, including movement.\nsoft: action can happen simultaneously with others, but not while moving.\nhard: no other actions can be performed while this action is running.",
"enum": [
"NONE",
"SOFT",
"HARD"
]
},
"actionParameters": {
"type": "array",
"description": "Array of actionParameter-objects for the indicated action e. g. deviceId, loadId, external Triggers.",
"items": {
"title": "actionParameter",
"type": "object",
"required": [
"key",
"value"
],
"properties": {
"key": {
"type": "string",
"description": "The key of the action parameter.",
"examples": [
"duration",
"direction",
"signal"
]
},
"value": {
"type": [
"array",
"boolean",
"number",
"string",
"object"
],
"description": "The value of the action parameter",
"examples": [
103.2,
"left",
true,
[
"arrays",
"are",
"also",
"valid"
]
]
}
}
}
}
}
}
}
}
}