How to Substitute Approval Step with “Email Reply”

Hi, there!

I heard a demand from users of Questetra BPM Suite like this.

“Want to advance the Process (Task) by Email!”

Naturally, a user who has logged in Questetra BPM Suite executes Tasks, however they could have some sort of situations.
One of these, for example, could be

“Want to advance a Process by the intention of who is not given a Login ID (who is other than employee, i.e. customer, etc. ).”

First of all, let’s organize the use case.

Use Case

Let’s consider a method to realize the substitution of “Decision” Step in this use case with Email.

It can be realized by combining the various functions of Questetra BPM Suite.
Overview of Method

Simple description of the method is as follows. (List numbers correspond the numbers in the figure above.)

  1. Transmitting a Request Email automatically from Throwing Message Intermediate Event (Email) to the Requestee.
  2. The Requestee receives the Email (1), and then replies as it is, using Reply-To as To.
    It would behave as described by replying an email naturally.
  3. Receiving the Email (2) at Message Start Event (Email).
  4. Analyzing the Subject of the Email (2) to obtain the Process ID of 1.
  5. Connecting from Throwing Message Intermediate Event (HTTP) to Catching Message Intermediate Event (HTTP) in the Process of 1.

=== Setting of Throwing Message Intermediate Event (HTTP) in “Requesting / Reply receiving Process Model” ===

Setting of Throwing Message Intermediate Event (HTTP) in "Requesting / Reply receiving Process Model"
Point 1
Set up the From-Address as Process Start Address of Message Start Event (Email) in “Email connection Process Model”.
Point 2
Set up the Process ID of “Requesting / Reply receiving Process Model” to the top of the Subject, punctuate with square bracket (“[“,”]”).

=== “Process ID analysis (Script Task)” in “Email connection Process Model” ===

Analyzing the content in the Subject to extract the Process ID of “Requesting / Reply receiving Process Model”, and then set into a Process Data item.

<Setting example of Script Task “Process ID analysis”>

var title = processInstance.getProcessInstanceTitle();	 	 
var sepStartPoint = title.indexOf("[");	 	 
var sepEndPoint = title.indexOf("]");	 	 
var id = title.slice(sepStartPoint+1,sepEndPoint);	 	 

* Message Start Event (Email) automatically sets the Subject of received email as the Title of the Process of its own.

* The Process will be connected to the Catching Message Intermediate Event in “Requesting / Reply receiving Process Model”, using the Process ID which has been set to Data Item Number “3”.

By doing all of this, you can advance the Steps by an operation of “Sending an Email” which is asynchronous with Questetra BPM Suite.

You will be able to achieve by making full use of the following knowledge of Questetra BPM Suite that is required.

  • M413 PROCESS CONNECTION Setting: Calling Sub-process in the Middle of the Flow, Standing by the Result of It

    There are many business operations that are called from other multiple operations. You should consider to isolate these Processes as Subroutine (Sub-process), such as a “Shipping Process” which is called from “Web Order Process” or “Fax order Process”, or a “Translation Process” which is called from “Press Release Drafting” or “Website Updating”. (Process Model Connecting APIs)

  • M318 API CONTROL Controlling Accesses from External to [Message Catch Event API]

    Questetra provides a [Process Model Connecting API] that can be used to connect Workflows to each other or to something else and a [Developer API] that enables full-scale development of applications. For each Process Model Creator’s who has established the reception of external requests, a [Process Model Connecting API] will be opened. If there are unnecessary API communications, they should be closed accordingly.

  • M218 AUTO START Auto Starting Triggered by Incoming Email

    By placing [Message Start Event (Email)], a mechanism of starting a Process triggered by email at the beginning of the business process, a new Process which took over data in the email will be started automatically each time receiving an email. For example, an email of “Inquiry from external” comes in, an Inquiry Correspondence Process will be generated.

  • M224 AUTO EVENT Auto Sending of Email with Business data Inserted

    By placing [Throwing Message Intermediate Event (E-mail)], an Email transmission event, an automated E-mail will be sent at each time the instance passing by. It is also possible to embed the business data that has been entered in the upstream processes into automated E-mail. For example, you can automatically send an email of the content of the reservations which has been confirmed through “Reservation process” to the customer (Reservation person).。

Yet, there are still many things that need further devising.
For example, there is a possibility of not working properly depending on the user’s Email client, for modifying the Subject of the requesting email unintentionally. So, devising for being capable of setting not only from the Subject of the email, but also from the email body, will be needed.
(I think excess correspondence may not be necessary, considering typical email clients.)

Well now, see you again!


About Masato Furukubo

Questetra, Inc. Sales Department
View all posts by Masato Furukubo

Prev article - 50. Questetra Tips Method for Operator Setting Being out of Process Model
Next article - 50. Questetra Tips Collaboration between Cloud-based Workflow and Cloud Storage (Box ed.)
Another article - Masato Furukubo How to Adjust Sleep Period (Specified Date Tnd Time to Timer)