Produce
Publish messages to a Solace Broker.
type: "io.kestra.plugin.solace.Produce"
Publish a file as messages into a Solace Broker.
id: send_messages_to_solace_queue
namespace: company.team
inputs:
- id: file
type: FILE
description: a CSV file with columns id, username, tweet, and timestamp
tasks:
- id: read_csv_file
type: io.kestra.plugin.serdes.csv.CsvToIon
from: "{{ inputs.file }}"
- id: transform_row_to_json
type: io.kestra.plugin.scripts.nashorn.FileTransform
from: "{{ outputs.read_csv_file.uri }}"
script: |
var result = {
"payload": {
"username": row.username,
"tweet": row.tweet
},
"properties": {
"correlationId": "42"
}
};
row = result
- id: send_message_to_solace
type: io.kestra.plugin.solace.Produce
from: "{{ outputs.transform_row_to_json.uri }}"
topicDestination: test/tweets
host: localhost:55555
username: admin
password: admin
vpn: default
messageSerializer: "JSON"
YES
The content of the message to be published to Solace
Can be an internal storage URI, a map (i.e. a list of key-value pairs) or a list of maps. The following keys are supported: payload
, properties
.
YES
The Solace hostname to connect with.
YES
The topic destination to publish messages.
YES
default
The Solace VPN to connect with.
YES
PT1M
duration
The maximum time to wait for the message acknowledgement (in milliseconds) when configuring deliveryMode
to PERSISTENT
.
YES
PERSISTENT
DIRECT
PERSISTENT
The delivery mode to be used for publishing messages messages.
YES
{}
Additional properties to customize all messages to be published.
Additional properties must be provided with Key of type String and Value of type String. Each key can be customer provided, or it can be a Solace message properties.
YES
STRING
STRING
BINARY
ION
JSON
The Serializer to be used for serializing messages.
YES
{}
The config properties to be passed to the Serializer.
Configs in key/value pairs.
YES
The Solace password.
YES
{}
The Solace properties to be used for connecting to the broker.
YES
The Solace username.