!!Kafka task
\\
__Apache Kafka__ is a high-performance, open-source distributed event streaming platform developed by the __Apache Software Foundation__. It is designed for building real-time data pipelines and stream-processing applications that handle high-throughput, fault-tolerant, and scalable message flows across systems. (More info : [Apache Kafak Link|https://kafka.apache.org/])\\
----
⚠️  Download the required JAR files and copy them into the __CrushFTP/plugins/lib/__ directory:\\
[kafka-clients.jar]\\
[kafka-streams.jar]\\
Then restart the CrushFTP service.\\
----
\\
The Kafka Task allows you to send either file contents or custom messages to a specified Kafka topic.\\
\\
[attachments|kafka_task.png]\\
\\
It is possible to load your own SASL connection parameters with the flag "Load custom client config"\\
\\
[attachments|kafka_custom_config.png]\\
\\
Config example:
\\
{{{
#KafkaTask SASL properties file example

# Kafka server host and port.
bootstrap.servers=192.168.10:9092

# Client id
client.id=MyCrushFTP

# Serializer (Do not change!)
key.serializer=org.apache.kafka.common.serialization.StringSerializer
value.serializer=org.apache.kafka.common.serialization.ByteArraySerializer

#Max block and timeout
max.block.ms=10000
request.timeout.ms=20000 

#Authentication related settings
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
    username="kafka-username" \
    password="kafka-password";
}}}