Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support user task listeners #4590

Open
8 of 11 tasks
barmac opened this issue Oct 8, 2024 · 10 comments
Open
8 of 11 tasks

Support user task listeners #4590

barmac opened this issue Oct 8, 2024 · 10 comments
Assignees
Labels
Camunda 8 Flags an issue as related to Camunda 8 in progress Currently worked on modeling
Milestone

Comments

@barmac
Copy link
Collaborator

barmac commented Oct 8, 2024

What should we do?

Implement user task listeners in Camunda 8

<userTask id="my_user_task" name="my_user_task">
 <extensionElements>
   <zeebe:userTask/>
   <zeebe:taskListeners>
     <zeebe:taskListener eventType="create" type="create_listener" retries="2"/>
     <zeebe:taskListener eventType="assignment" type="assignment_listener"/>
     <zeebe:taskListener eventType="update" type="update_listener" retries="8"/>
     <zeebe:taskListener eventType="complete" type="complete_listener"/>
   </zeebe:taskListeners>
   <zeebe:priorityDefinition/>
   <!--other extension props e.g. assignmentDefinition, priorityDefinition-->
 </extensionElements>
 <!--other props-->
</userTask>
  • I can define task listeners on user task
    • type (string, FEEL expression)
    • eventType: complete, assignment
    • retries (string, FEEL expression, default is 3)
  • TLs can be used in Camunda 8.7 or newer
  • When I switch from Zeebe user task to job worker, the task listeners are removed

Projects:

Why should we do it?

Product hub epic: https://github.com/camunda/product-hub/issues/1316

@barmac barmac added Camunda 8 Flags an issue as related to Camunda 8 modeling labels Oct 8, 2024
@nikku nikku added the needs more information Requires additional information to be actionable. label Oct 9, 2024
@barmac
Copy link
Collaborator Author

barmac commented Oct 17, 2024

This is blocked until we clarify the XML structure: https://camunda.slack.com/archives/C0622NWC9LK/p1729161860084329

@barmac
Copy link
Collaborator Author

barmac commented Oct 17, 2024

We clarified the XML structure, but the list of event types needs to be decided upon yet: https://github.com/camunda/product-hub/issues/1822#issuecomment-2419645986

@barmac
Copy link
Collaborator Author

barmac commented Oct 30, 2024

The duplicate listeners won't be rejected by the engine as decided in https://camunda.slack.com/archives/C0622NWC9LK/p1729762326243379?thread_ts=1729176573.663119&cid=C0622NWC9LK
We may consider to have a warning though as it's hard to imagine anybody defines duplicates on purpose.

@barmac
Copy link
Collaborator Author

barmac commented Oct 30, 2024

I updated the event types according to https://camunda.slack.com/archives/C0622NWC9LK/p1730303397300139?thread_ts=1730288591.575289&cid=C0622NWC9LK
Note that the stretch goal is to support more events, so it's not fixed yet.

@barmac
Copy link
Collaborator Author

barmac commented Oct 31, 2024

@barmac barmac added ready Ready to be worked on and removed needs more information Requires additional information to be actionable. labels Oct 31, 2024
@barmac
Copy link
Collaborator Author

barmac commented Oct 31, 2024

This is ready now.

@nikku nikku added this to the 8.7 milestone Nov 4, 2024
@barmac barmac mentioned this issue Nov 5, 2024
3 tasks
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 6, 2024
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 6, 2024
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 6, 2024
@misiekhardcore misiekhardcore added the in progress Currently worked on label Nov 6, 2024 — with bpmn-io-tasks
@misiekhardcore misiekhardcore removed the ready Ready to be worked on label Nov 6, 2024
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 6, 2024
@barmac
Copy link
Collaborator Author

barmac commented Nov 6, 2024

We could use this BPMN as an example to open once the feature is implemented:

user-task-listener.bpmn.txt

@misiekhardcore
Copy link
Contributor

@barmac what do you mean? where do you want to put this file?

@barmac
Copy link
Collaborator Author

barmac commented Nov 7, 2024

I prepared this as an example BPMN (cf. https://camunda.slack.com/archives/C0622NWC9LK/p1730909451217819). There's no need to include it anywhere in the source code, but we can use it as way to verify the solution.

misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 7, 2024
misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 7, 2024
misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 7, 2024
@barmac
Copy link
Collaborator Author

barmac commented Nov 7, 2024

We could use this BPMN as an example to open once the feature is implemented:

user-task-listener.bpmn.txt

The file was broken, but replaced it with a fixed one.

misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 7, 2024
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 7, 2024
misiekhardcore added a commit to camunda/zeebe-bpmn-moddle that referenced this issue Nov 7, 2024
misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 7, 2024
misiekhardcore added a commit to camunda/camunda-bpmn-js-behaviors that referenced this issue Nov 11, 2024
misiekhardcore added a commit to camunda/bpmnlint-plugin-camunda-compat that referenced this issue Nov 12, 2024
misiekhardcore added a commit to camunda/bpmnlint-plugin-camunda-compat that referenced this issue Nov 12, 2024
misiekhardcore added a commit to camunda/camunda-bpmn-js-behaviors that referenced this issue Nov 14, 2024
misiekhardcore added a commit to camunda/bpmnlint-plugin-camunda-compat that referenced this issue Nov 14, 2024
misiekhardcore added a commit to bpmn-io/bpmn-js-properties-panel that referenced this issue Nov 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Camunda 8 Flags an issue as related to Camunda 8 in progress Currently worked on modeling
Projects
None yet
Development

No branches or pull requests

3 participants