Complete user task with a message event

We’re trying to model tasks, which are presented to the users, but are not directly completed by them. The completion happens using message events. The topic is a continuation of an earlier one, but I’ve reduced the problem to a simpler one, so hopefully an elegant solution can be found. Here’s an example process:

The goal is to complete a task when SomeEvent (message) is received in the process.
With “Task A”, the task gets deleted, instead of completed. If we can specify the reason (to be “completed” instead of "deleted), we can mask the task as completed to external systems, but I’m not aware how to do that.
With “Task B”, we manually complete it, but that is a cumbersome step to be repeated on every such task (also clutters the model to some extent and uses Camunda specific extensions to BPMN).

As a side note, our use case for tasks is to broadcast their state to other systems interested in them. This means that we don’t use the tasklist directly, and we might get away with another type of tasks (not user ones). I tried to use receive tasks, but they don’t seem to show up as TaskEvent/DelegateTask as described in the docs, so I assume task in that context means user task.

forum.bpmn (7.0 KB)

Hello @milan.milanov ,

please have a look at External Tasks, it looks like this could be what you are looking for.

https://docs.camunda.org/manual/7.15/reference/bpmn20/tasks/service-task/#external-tasks

They behave similar to User Tasks but they are inteded to be handled by Machines, so called External Task Workers. There are some Client Implementations just to give you an idea:

https://docs.camunda.org/manual/7.15/user-guide/ext-client/

I hope this helps

Jonathan