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"
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 Solace hostname to connect with.
The topic destination to publish messages.
PT1MdurationThe maximum time to wait for the message acknowledgement (in milliseconds) when deliveryMode is PERSISTENT.
PERSISTENTDIRECTPERSISTENTThe delivery mode to be used for publishing messages.
{}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 property.
STRINGSTRINGBINARYIONJSONThe Serializer to be used for serializing messages.
{}The config properties to be passed to the Serializer.
Configs in key/value pairs.
The Solace password.
{}The Solace properties to be used for connecting to the broker.
The Solace username.
defaultThe Solace VPN to connect with.
Total number of messages published by the task.