External task - alternatives of Polling?


#1

Hi team,

Is it possible to use any pattern other than polling? External task Pattern

Some Ideas:

  1. Apache Kafka topic?
  2. CloudEvent
  3. AMQP Message

#2

How would you imagine this architecture working?
Can you explain the steps you’ve like to see happen?


#3

External Kafka task Definition
At the time of defining BPMN execution model, implementation team defines destination Kafka connection Reference properties.

Execution
During execution, when BPMN engine encounters External task with Kafka topic connection, it publishes topic using producer.send.

Completion
When task is completed by external worker, it can use regular /task/complete REST API.


#4

So this can best be done using the existing external task pattern.
With the external task posting pushing the topic to kafka and then completing when it decided the service completed successfully.