Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-13113

Cockpit batch operation to correlate message

      User Story (Required on creation):

      This feature allows operators to trigger a list of waiting process instances with messages in case the message was not received regularly.

      Functional Requirements (Required before implementation):

      • I can filter process instances (as with other batches) and then correlate a message to them
      • Exact set of supported parameters to be determined
      • This is part of the enterprise edition of Cockpit
      • CorrelateAll semantics: If a process instance waits for the same message multiple times (e.g. with multi-instance), all of the receiving events are triggered
      • From the view of a single process instance, I can navigate to the batch correlation page such that this process instance is pre-selected
        • Nice to have: On the process instance view, I can select the messages that the process can receive from a dropdown (+ option to type in something else) so that the Message name parameter is prefilled on the batch operation page

      Technical Requirements (Required before implementation):

      Limitations of Scope (Optional):

      • I can only select process instances
      • I can only pass global variables

      Hints (Optional):

        This is the controller panel for Smart Panels app

            [CAM-13113] Cockpit batch operation to correlate message

            Georg Röver added a comment -

            Hi,

            we need as parameter for the triggering:

            • Message Name
            • Message Variables

            Thanks a lot,

            Georg

            Georg Röver added a comment - Hi, we need as parameter for the triggering: Message Name Message Variables Thanks a lot, Georg

            Hello georg.roever@1und1.de,

            The message name will become a parameter of the batch operation, so that only those events are triggered that match the name.

            For filtering by variables, we plan to reuse Cockpit's search for process instances by variable, see the following screenshot:

            This is similar to MessageCorrelationBuilder#processInstanceVariablesEqual, however with the difference that it searches on the history, not the runtime data. If you like, you can try that out with the batch operations we already have in Cockpit.

            Exposing MessageCorrelationBuilder#localVariableEquals in the batch operation is out of scope.

            Lastly, it will be possible to submit a set of variables that should be set when the message is correlated (also on the process instance, not local level).

            Please let me know if this doesn't work for you or if anything is unclear.

            Best regards,
            Thorben

            Thorben Lindhauer added a comment - Hello georg.roever@1und1.de , The message name will become a parameter of the batch operation, so that only those events are triggered that match the name. For filtering by variables, we plan to reuse Cockpit's search for process instances by variable, see the following screenshot: This is similar to MessageCorrelationBuilder#processInstanceVariablesEqual , however with the difference that it searches on the history, not the runtime data. If you like, you can try that out with the batch operations we already have in Cockpit. Exposing MessageCorrelationBuilder#localVariableEquals in the batch operation is out of scope. Lastly, it will be possible to submit a set of variables that should be set when the message is correlated (also on the process instance, not local level). Please let me know if this doesn't work for you or if anything is unclear. Best regards, Thorben

            Tobias Metzke-Bernstein added a comment - - edited

            Decisions

            • Parameters: messageName, processInstanceQuery, historicProcessInstanceQuery, processInstanceIds, variables
            • Filter options related to executions from the synchronous API can be passed on to the batch via ProcessInstanceQuery and HistoricProcessInstanceQuery. Additionally, a list of process instance IDs can be provided. This is consistent with most other process instance-related batch operations. There are no additional parameters for filtering in the batch operation itself. Filtering by local variables will not be possible since the query the batch operates on is the process instance query.
            • Variables can be set on the correlated process instances via the variables parameter. Setting local variables will not be possible since the batch operates on the process instance execution.
            • We don't correlate to start messages with this batch operation. If necessary, this can be either added later on via new parameters or realized with a separate batch operation to separate those concerns.

            Tobias Metzke-Bernstein added a comment - - edited Decisions Parameters: messageName, processInstanceQuery, historicProcessInstanceQuery, processInstanceIds, variables Filter options related to executions from the synchronous API can be passed on to the batch via ProcessInstanceQuery and HistoricProcessInstanceQuery . Additionally, a list of process instance IDs can be provided. This is consistent with most other process instance-related batch operations. There are no additional parameters for filtering in the batch operation itself. Filtering by local variables will not be possible since the query the batch operates on is the process instance query. Variables can be set on the correlated process instances via the variables parameter. Setting local variables will not be possible since the batch operates on the process instance execution. We don't correlate to start messages with this batch operation. If necessary, this can be either added later on via new parameters or realized with a separate batch operation to separate those concerns.

              hariharan.parasuraman Hariharan Parasuraman
              meyer Daniel Meyer
              Hariharan Parasuraman Hariharan Parasuraman
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: