mqtt-source/kamelet.json

125 lines
4.9 KiB
JSON

{
"apiVersion": "camel.apache.org/v1",
"kind": "Kamelet",
"metadata": {
"name": "mqtt-source",
"annotations": {
"camel.apache.org/kamelet.support.level": "Stable",
"camel.apache.org/catalog.version": "4.22.1",
"camel.apache.org/kamelet.icon": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjMuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMiIgYmFzZVByb2ZpbGU9InRpbnkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIKCSB5PSIwcHgiIHZpZXdCb3g9IjAgMCAzMjAgMzIwIiBvdmVyZmxvdz0idmlzaWJsZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxnIGlkPSJibGFja19iZyIgZGlzcGxheT0ibm9uZSI+Cgk8cmVjdCBkaXNwbGF5PSJpbmxpbmUiIHdpZHRoPSIzMjAiIGhlaWdodD0iMzIwIi8+CjwvZz4KPGcgaWQ9ImxvZ29zIj4KCTxnPgoJCTxwYXRoIGZpbGw9IiM2NjAwNjYiIGQ9Ik03LjEsMTgwLjZ2MTE3LjFjMCw4LjQsNi44LDE1LjMsMTUuMywxNS4zSDE0MkMxNDEsMjM5LjgsODAuOSwxODAuNyw3LjEsMTgwLjZ6Ii8+CgkJPHBhdGggZmlsbD0iIzY2MDA2NiIgZD0iTTcuMSw4NC4xdjQ5LjhjOTksMC45LDE3OS40LDgwLjcsMTgwLjQsMTc5LjFoNTEuN0MyMzguMiwxODYuNiwxMzQuNSw4NC4yLDcuMSw4NC4xeiIvPgoJCTxwYXRoIGZpbGw9IiM2NjAwNjYiIGQ9Ik0zMTIuOSwyOTcuNlYxOTMuNUMyNzguMSwxMDcuMiwyMDcuMywzOC45LDExOSw3LjFIMjIuNGMtOC40LDAtMTUuMyw2LjgtMTUuMywxNS4zdjE1CgkJCWMxNTIuNiwwLjksMjc2LjYsMTI0LDI3Ny42LDI3NS42aDEzQzMwNi4xLDMxMi45LDMxMi45LDMwNi4xLDMxMi45LDI5Ny42eiIvPgoJCTxwYXRoIGZpbGw9IiM2NjAwNjYiIGQ9Ik0yNzIuNiw0OS44YzE0LjUsMTQuNCwyOC42LDMxLjcsNDAuNCw0Ny44VjIyLjRjMC04LjQtNi44LTE1LjMtMTUuMy0xNS4zaC03Ny4zCgkJCUMyMzguNCwxOS43LDI1Ni42LDMzLjksMjcyLjYsNDkuOHoiLz4KCTwvZz4KPC9nPgo8L3N2Zz4K",
"camel.apache.org/provider": "Apache Software Foundation",
"camel.apache.org/kamelet.group": "MQTT",
"camel.apache.org/kamelet.namespace": "Messaging"
},
"labels": {
"camel.apache.org/kamelet.type": "source"
}
},
"spec": {
"definition": {
"title": "MQTT Source",
"description": "Allows receiving messages from any endpoint that supports the MQTT protocol, such as a message broker.",
"required": [
"topic",
"brokerUrl"
],
"type": "object",
"properties": {
"topic": {
"title": "Topic",
"description": "The topic to subscribe to",
"type": "string",
"example": "mytopic"
},
"brokerUrl": {
"title": "Broker URL",
"description": "The URL of the broker where to establish the connection",
"type": "string",
"example": "tcp://mosquitto:1883"
},
"clientId": {
"title": "Client ID",
"description": "The client ID to use when connecting to the resource",
"type": "string",
"default": "mqtt-source"
},
"username": {
"title": "Username",
"description": "Username to use when connecting to the MQTT broker",
"type": "string",
"x-descriptors": [
"urn:camel:group:credentials"
]
},
"password": {
"title": "Password",
"description": "Password to use when connecting to the MQTT broker",
"type": "string",
"format": "password",
"x-descriptors": [
"urn:camel:group:credentials"
]
}
}
},
"dependencies": [
"camel:paho",
"camel:kamelet"
],
"template": {
"from": {
"uri": "paho:{{topic}}",
"parameters": {
"brokerUrl": "{{brokerUrl}}",
"clientId": "{{clientId}}",
"userName": "{{?username}}",
"password": "{{?password}}"
},
"steps": [
{
"to": "kamelet:sink"
}
]
}
}
},
"propertiesSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"title": "MQTT Source",
"description": "Allows receiving messages from any endpoint that supports the MQTT protocol, such as a message broker.",
"required": [
"topic",
"brokerUrl"
],
"properties": {
"topic": {
"type": "string",
"title": "Topic",
"description": "The topic to subscribe to"
},
"brokerUrl": {
"type": "string",
"title": "Broker URL",
"description": "The URL of the broker where to establish the connection"
},
"clientId": {
"type": "string",
"title": "Client ID",
"description": "The client ID to use when connecting to the resource",
"default": "mqtt-source"
},
"username": {
"type": "string",
"title": "Username",
"description": "Username to use when connecting to the MQTT broker"
},
"password": {
"type": "string",
"title": "Password",
"description": "Password to use when connecting to the MQTT broker",
"format": "password"
}
}
}
}