UNPKG

@asyncapi/specs

Version:
89 lines (88 loc) 3.23 kB
{ "$schema": "http://json-schema.org/draft-07/schema#", "$id": "http://asyncapi.com/bindings/ros2/0.1.0/operation.json", "description": "This object contains information about the operation representation in ROS 2.", "examples": [ { "node": "/turtlesim", "qosPolicies": { "deadline": "-1", "durability": "volatile", "history": "unknown", "leaseDuration": "-1", "lifespan": "-1", "liveliness": "automatic", "reliability": "reliable" }, "role": "subscriber" } ], "type": "object", "required": [ "role", "node" ], "properties": { "bindingVersion": { "description": "The version of this binding. If omitted, 'latest' MUST be assumed.", "type": "string", "enum": [ "0.1.0" ] }, "node": { "description": "The name of the ROS 2 node that implements this operation.", "type": "string" }, "qosPolicies": { "type": "object", "properties": { "deadline": { "description": "The expected maximum amount of time between subsequent messages being published to a topic. -1 means infinite.", "type": "integer" }, "durability": { "description": "Persistence specification that determines message availability for late-joining subscribers", "type": "string", "enum": [ "transient_local", "volatile" ] }, "history": { "description": "Policy parameter that defines the maximum number of samples maintained in the middleware queue", "type": "string", "enum": [ "keep_last", "keep_all", "unknown" ] }, "leaseDuration": { "description": "The maximum period of time a publisher has to indicate that it is alive before the system considers it to have lost liveliness. -1 means infinite.", "type": "integer" }, "lifespan": { "description": "The maximum amount of time between the publishing and the reception of a message without the message being considered stale or expired. -1 means infinite.", "type": "integer" }, "liveliness": { "description": "Defines the mechanism by which the system monitors and determines the operational status of communication entities within the network.", "type": "string", "enum": [ "automatic", "manual" ] }, "reliability": { "description": "Specifies the communication guarantee model that determines whether message delivery confirmation between publisher and subscriber is required.", "type": "string", "enum": [ "best_effort", "realiable" ] } } }, "role": { "description": "Specifies the ROS 2 type of the node for this operation.", "type": "string", "enum": [ "publisher", "action_client", "service_client", "subscriber", "action_server", "service_server" ] } }, "patternProperties": { "^x-[\\w\\d\\.\\x2d_]+$": { "$ref": "http://asyncapi.com/definitions/3.1.0/specificationExtension.json" } }, "additionalProperties": false }