We all must have used Outbound Communications Manager business service for sending mails. There are various methods available to send mail and most commonly methods that are used to send mail are
The difference between both the methods is:
SubmitRequest is an Asynchronous way to send mail. When you use SubmitRequest method a job is created on Siebel Server to send mail and a record is created in S_SRM_REQUEST table. Siebel Server picks up record from there and processes it.
SendMessage you have the choice to control the way it is executed. If you pass the value of Argument ‘Process Mode’ with value as ‘Remote’ then it works similar to SubmitRequest method and if you specify “Process Mode” as ‘Local’ then execution of job happens in synchronous way and no record is created in S_SRM_REQUEST table.
Important thing to note:
According to the bookshelf documentation the default value for the “Process Mode” if it is not given by user is ‘Local’ which means that it should execute in Synchronous way and no record should be created in S_SRM_REQ
A Documentation Defect:
But after testing this in Siebel 220.127.116.11 Call Center module I found out that if “Process Mode” argument is not supplied then default process mode for SendMessage method is ‘Remote’ and not ‘local’ as mentioned in bookshelf.
So, If you want to SendMessage not to create record in S_SRM_REQUEST and be executed in Synchronous way then always provide Input argument ‘Process Mode’ with value as ‘Local’.
In the next post I will discuss the reason why you should always supply the value of ‘Process Mode’