Jul 30, 2008

BPEL MailBox

BPELMailBox
Its all about how to utilize emails to make better Business Process.

Use Case :
Case 1> A sends a mail to service@fusion.com
with subject : upload to fusion directory

Case 2> B sends a mail to service@fusion.com
with subject : leave request from 10/10/2008 to 13/10/2008


Case 3> C sends a mail to service@fusion.com
with subject : book conference room conf2

Case 4> D sends a mail to service@fusion.com
with subject : <action code>

In above cases, each request says different actions to do using email subject code.

Requirements:
1> Use same email id for each request.

2> Service should authenticate users.

3> Service should be hot-pluggable (meaning more services can be added later on.)

Solution:
1> Create one BPEL Process which will be initialised by incoming mail.
The inputvariable should be of type mailMessage.
Refer notification based initialization of BPEL process

Message recieved should be passed to ESB Service as :



2> Create ESB service with input type mailMessage again :
Plug all service to be called as action using routing rules with filter expression.
Filter expression will decide the actionable bpel process.
Note : All BPEL process should be asyncronous with input variable type mailMessage.



There is no need to authenticate...as email server will authenticate you...

Thats all...Now u can hot plug your services to this ESB Mail Box....

Nice IDEA...