15Business Service Methods for Siebel Email Response
Business Service Methods for Siebel Email Response
This chapter provides information about business services for Siebel Email Response and other outbound communications, and it also includes information about applicable methods and arguments. It includes the following topics:
Siebel Email Response and Business Services
Siebel Email Response uses business services to interact with your Siebel database. A business service provides a new top-level object (such as a business object or applet) that you can use to implement reusable business logic and to implement business rule capabilities. For more information about business services, see Using Siebel Tools.
Inbound Email Manager Business Service
The following table lists the methods for the Inbound Email Manager business service.
Table Inbound Email Manager Methods
Method Name | Comment |
---|---|
AddAttachments |
Creates attachment records for the attachments in EventFields. |
AddCategories |
Associates categories with an activity record. |
DeleteTempFiles |
Deletes temporary files specified in EventFields. |
GetCategories |
Gets the list of categories and scores that are associated with an activity. |
GetEventCategories |
Enumerates the categories in EventFields and returns them in a hierarchy. |
GetPreference |
Gets the value of a user preference. |
GetResponseText |
Gets the auto-suggest response text for a set of categories by using the scores and thresholds for the categories. |
GetSearchSpec |
Creates a search specification by using the fields included as input arguments. For example, if Abstract and Area are input arguments, then the search specification named [Area]=“Installation” AND [Abstract]=“Production” is called the SRSearchSpec output argument. |
GetTokens |
Gets a specified number of tokens from a string. The tokens are returned in output properties such as Token 1, Token 2, and so on. |
ParseText |
Extracts response properties from the email. The input arguments of this method include a fixed argument named Text, which contains the text to parse, and one additional argument of the Literal type for each response property to extract. The values indicate the patterns to match and are in the following format: expression=exp | "Last("{prefix}%s[{suffix}]")" For example: expression=exp | "Last("Billing Account Number%s\n")" where:
You must implement the \n suffix to parse the text between the prefix and the end of line. If you do not implement this suffix, then all text in the message that follows the prefix is parsed. Therefore, in the example, the last occurrence of the Billing Account Number text is extracted, along with the text to the end of the line in which this value is present. The workflow process uses the extracted response properties. |
ReturnPropSet |
Returns a hierarchy that contains the input properties and properties from the input hierarchy. |
SetResponseFields |
Constructs To, CC, and BCC lines for outbound email by using corresponding lines from inbound email. |
Input Arguments for Methods of Inbound Email Manager
The following table lists and describes the input arguments for each method of the Inbound Email Manager business service.
Table Input Arguments for Inbound Email Manager Methods
Method | Input Argument Name | Comment |
---|---|---|
AddAttachments | Business Component |
Business component in which attachment records are created. |
Business Object |
Business object in which attachment records are created. |
|
EventFields |
Hierarchy that contains the file properties, such as FileName0, FilePath0, FileName1, FilePath1, and so on. |
|
AddCategories | ActivityID |
ID of the activity record with which categories are associated. |
BusComp |
Business component in which category associations are created. |
|
BusObj |
Business object in which category associations are created. |
|
Catalog |
Catalog that contains the categories. |
|
Categories |
List of the categories and the corresponding scores. |
|
DeleteTempFiles | EventFields |
Hierarchy that contains the file properties, such as FilePath0, FilePath1, and so on. |
GetCategories | ActivityID |
ID of the activity record from which categories are obtained. |
BusComp |
Business component of the associated categories. |
|
BusObj |
Business object of the associated categories. |
|
Categories |
List of the categories and the corresponding scores. |
|
GetEventCategories | Categories |
List of the categories that are extracted from EventFields. |
EventFields |
Event fields that contain category properties with a CATEGORY prefix. |
|
GetPreference | Category |
Category of the preference. |
Preference |
Name of the preference. |
|
Value |
Value of the preference. |
|
GetResponseText | Catalog ID |
ID of the catalog in which the categories are stored. If the Catalog ID input argument contains a value, then the Catalog ID input argument is used to locate the catalog. |
Categories |
List of the categories and the corresponding scores. |
|
CheckThreshold |
If Y, checks category scores against the threshold to determine if response text for a category is used. If N, gets the response text by using scores alone. |
|
CatalogName |
Name of the catalog in which the categories are stored. If the Catalog ID input argument contains a value, then the Catalog Name input argument is ignored. |
|
ClosingTemplate |
Name of the template that is used for the closing section of the email. |
|
EmailFormat |
Format in which the email is sent, that is, plain text or HTML. |
|
GreetingTemplate |
Name of the template that is used for the greeting section of the email. |
|
MaximumSections |
Maximum number of categories for which response text is returned. |
|
ResponseText |
Response text for the set of categories. |
|
GetSearchSpec |
[Name of a business component field] |
The name of a business component field, such as Area or Extract. |
GetTokens | Delimiter |
One or more characters that separate a token from the surrounding characters. The default value is the space character. |
NumTokens |
Number of tokens to obtain. The default value is 1. |
|
Text |
Text from which the tokens are obtained. |
|
ParseText |
Text |
String to parse. |
ReturnPropSet | PropSetType |
Type of the output hierarchy. |
SetResponseFields | InputEmailBccLine |
BCC line in the inbound email. |
InputEmailCcLine |
CC line in the inbound email. |
|
InputEmailToLine |
To line in the inbound email. |
|
InputMsgReceiveAddress |
Receiver address in the inbound email. |
|
InputMsgSenderAddress |
Sender address in the inbound email. |
|
InputResponseType |
Type of response. Values include Reply, Reply to All, and Forward. |
|
OutputEmailBccLine |
BCC line for the outbound email. |
|
OutputEmailCcLine |
CC line for the outbound email. |
|
OutputEmailToLine |
To line for the outbound email. |
Inbound Email Database Operations Business Service
This business service performs database-level actions. The following table lists the methods for the Inbound Email Database Operations business service.
Table Inbound Email Database Operations Methods
Method Name | Comment |
---|---|
AttachFile |
Creates an attachment record. |
DeleteRecord |
Deletes a record. |
ExpandBCTemplate |
Substitutes values in a template. |
FindRecord |
Finds a record. This method recognizes the CaseInsensitive parameter in the CFG file. By default, the CFG file is configured to perform case-sensitive searches. |
FindRecordEx |
Matches contacts when processing inbound email. Only Siebel Email Response uses this business service. This business service finds all contacts in the Siebel database with a primary or alternate email address that matches the From email address of the inbound email and then associates each contact with the email activity record. |
GetFieldValues |
Gets the field values from a record. |
GetRecordList |
Gets a list of records. |
InsertRecord |
Inserts a record. |
UseLocale |
Designates the hour clock for the server. A value of False (the default) indicates the server runs on a 24-hour clock. A value of True indicates the server runs on a 12-hour clock. The Run Process workflow receives the date (Planned) from the driver in 24-hour format. Workflow executes the request on the server side. Siebel Server can run on a computer using a 12-hour or 24-hour clock. |
Input Arguments for Methods of Inbound Email Database Operations
The following table lists and describes the input arguments for each method of the Inbound Email Database Operations business service.
Table Input Arguments for Inbound Email Database Operations Methods
Method | Input Argument Name | Comment |
---|---|---|
AttachFile | BusComp |
Name of the attachment business component. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
FileName |
Name of the file to attach. |
|
FilePath |
Path of the file to attach. |
|
DeleteRecord | BusComp |
Name of the business component from which to delete a record. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
ID |
ID of the record to delete. |
|
ExpandBCTemplate | BusComp |
Name of the business component used to get values for template substitutions. |
ReplyMessage |
Reply message with the substituted values. |
|
ReplyTemplate |
Reply template. |
|
FindRecord | BusComp |
Name of the business component from which to find a record. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
ID |
ID of a found record. |
|
QueryFields |
List of comma-separated fields to query. Query values are passed in additional arguments, with one argument for each field. |
|
ValueFields |
List of comma-separated fields from which to get values. Each field is passed back in one output argument, with the name set to the field name, and the value set to the field value. |
|
FindRecordEx |
Contact Alternate Email Address QueryField: Email Address |
Alternate email address for the contact. |
GetFieldValues | BusComp |
Name of the business component from which to get record values. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
ID |
ID of record from which to get values. |
|
IDField |
Field on which to query for the ID. |
|
ValueFields |
List of comma-separated fields from which to get values. Each field is passed back in one output argument, with the name set to the field name, and the value set to the field value. |
|
GetRecordList | BusComp |
Name of the business component from which to get record values. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
NumberofRows |
Number of records returned. The default value is 10. |
|
QueryFields |
List of comma-separated fields on which to query. Query values are passed in the additional argument fields, with one argument for each field. |
|
ValueFields |
List of comma-separated fields from which to get values. Each field is passed back in one output argument, with the name set to the field name, and the value set to the field value. |
|
InsertRecord | BusComp |
Name of the business component to insert record into. Each field value to be set is passed as an additional input argument with the name set to Field: followed by the field name. |
BusObj |
Name of the business object. |
|
ErrorMessage |
Error message if an error occurs during method execution. |
|
FatalErrCode |
Error code if a fatal error occurs during method execution. |
|
ID |
ID of the new record if the insert is successful. |
Outbound Communications Manager Business Service
This business service provides an interface to the outbound communications functionality of the Communications Outbound Manager server component, and it runs on the Siebel Server on which the Communications Outbound Manager server component runs. For more information about the Siebel application features for creating and submitting communication requests, see Defining Outbound Communication Requests .
This topic primarily shows the display names (Method Display Name) for each method. The internal names (Method Name) are also shown. Use internal names in any scripts that invoke these methods. All of the methods use profiles for a communications driver such as Internet SMTP/IMAP Server or Internet SMTP/POP3 Server.
The following table lists the methods for the Outbound Communications Manager business service.
Table Outbound Communications Manager Methods
Method Display Name and Method Name | Comment |
---|---|
Create and Submit Request (CreateRequest) |
Creates a record for a communication request, then submits it to the Communications Outbound Manager server component. This method uses the Action business component to create recipient activity records for any template that creates activities. |
Create and Submit Synchronous Request (CreateRequestSync) |
Creates a record for a communication request, then submits it to the Communications Outbound Manager server component. This method waits until the current request is processed before continuing to the next request. The response from the Communication Outbound Manager includes the ActivityIDList argument, which lists email addresses and activity IDs. This method uses the Action business component to create recipient activity records for any template that creates activities.
Note: You can determine the Activity ID for a particular email address by parsing the output string.
|
Send Message (SendMessage) |
Sends a message to recipients in explicit semicolon-delimited lists of addresses (To list, CC list, and BCC list). This method accepts only literal subject and message body text, and does not support field substitution. This method supports file attachments. Argument values are provided directly, such as from a workflow process or a script. |
Send SMTP Message (SendSmtpMessage) |
Sends an SMTP message to recipients in explicit semicolon-delimited lists of addresses (To list, CC list, and BCC list). This method accepts only literal subject and message body text, and does not support field substitution or file attachments. Unlike the Send Message method, this method does not require a specified communications profile. The profile Default SMTP Profile is used. Argument values are provided directly, such as from a workflow process or a script. |
Submit Request (SubmitRequest) |
Submits a communication request by using the name or ID of a request that was previously created. Submits the request to the Communications Outbound Manager server component. This method uses the Action business component to create recipient activity records for any template that creates activities. |
Submit Synchronous Request (SubmitRequestSync) |
Submits a communication request by using the name or ID of a request that was previously created. Submits the request to the Communications Outbound Manager server component. This method waits until the current request is processed before continuing to the next request. The response from the Communication Outbound Manager includes the ActivityIDList argument, which lists email addresses and activity IDs. This method uses the Action business component to create recipient activity records for any template that creates activities.
Note: You can determine the Activity ID for a particular email address by parsing the output string.
|
Arguments for Methods of Outbound Communications Manager
This topic lists the arguments for each method of the Outbound Communications Manager business service.
Arguments for Create and Submit Request Method
The following table lists the arguments for the Create and Submit Request (CreateRequest) method.
Table Arguments for Create and Submit Request Method
Argument Display Name and Data Type | Argument Name | Type | Req’d | Comment |
---|---|---|---|---|
# of Recipients (type: String) |
NumRecipients |
Input |
No |
Estimated total number of recipients. Used as a hint for auto-adjustment of number of subtasks. (Not available from the user interface for creating outbound requests.) |
# of Tasks (type: String) |
NumTasks |
Input |
No |
Number of subtasks to run. This number is based on each recipient’s last name. |
Child Recipient Search Spec (type: String) |
ChildRecipSearchSpec |
Input |
No |
Search specification to filter iteration child business component in the form child_BC_name: child_recip_search_spec. |
Comm Profile Override (type: String) |
CommProfileOverride |
Input |
No |
Communications profile to use for all communications templates in this request. |
Comm Template Name List (type: String) |
PackageNameList |
Input |
Yes |
Semicolon-delimited list of communications template names. |
Comments (type: String) |
Comments |
Input |
No |
Comments for the request. Corresponds to Comments field for the request. |
Create Only (type: String) |
CreateOnly |
Input |
No |
Creates the communication request without any associated source, recipient, or template records specified. Used when creating a parent request. |
Default Preference (type: String) |
RequestDefaultMedium |
Input |
No |
Communications channel to use if Only Send Preference is selected for the request and the channel preference is not specified for a recipient. Corresponds to Default Preference field for the request. |
Defined Component (type: String) |
DefinedComponent |
Input |
No |
Name of the defined Siebel Server component to receive this request. This name is based on CommOutboundMgr. Corresponds to Component Name field for the request. |
Message Reply Address List (type: String) |
MsgReplyAddressList |
Input |
No |
Semicolon-delimited list of email addresses. Recipients of email messages generated by the request can use this list. The list specifies email addresses that the recipient can reply to. |
Only Send Preference Flag (type: String) |
RequestSendFlag |
Input |
No |
(Currently you can set this argument only from the user interface for creating outbound requests.) Corresponds to Only Send Preference field for the request. |
Recipient Group (type: String) |
RecipientGroup |
Input |
Yes |
Source business object and recipient business component that is selected from the Recipient Group drop-down list. Corresponds to Recipient Group field for the request. |
Recipient Search Spec (type: String) |
RecipSearchSpec |
Input |
No |
Search specification to filter the recipients that the recipient business component returns. |
Request End Date (type: String) |
EndDate |
Output |
No |
Date or time that the request finished. Corresponds to End Time field for the request. |
Request ID (type: String) |
CommRequestId |
Output |
No |
ID for this communication request. A request must use either Request ID or Request Name. Corresponds to Request # field for the request. |
Request Language Code (type: String) |
RequestLanguageCode |
Input |
No |
Language applicable to this request. The value for this argument is derived, in priority order, from:
It is assumed that all recipients for a request share a common language and locale. |
Request Locale Code (type: String) |
RequestLocaleCode |
Input |
No |
Locale applicable to this request. The value for this argument is derived, in priority order, from:
It is assumed that all recipients for a request share a common language and locale. |
Request Name (type: String) |
RequestName |
Input |
No |
Name for this communication request. A request must use either Request ID or Request Name. Corresponds to Description field for the request. |
Request Parent ID (type: String) |
CommRequestParentId |
Input |
No |
ID for the parent request of this communication request (when current request is a subrequest). Corresponds to Request # field for the request. |
Request Start Date (type: String) |
StartDate |
Output |
No |
Date or time the request started. Corresponds to Start Time field for the request. |
Source ID List (type: String) |
SourceIdList |
Input |
Yes |
Semicolon-delimited list of IDs for recipient source records. |
SRM Request ID (type: String) |
SRMRequestId |
Output |
No |
ID for the server request for this communication request, as known to Server Request Broker. |
Status (type: String) |
Status |
Output |
No |
Status of the request. Corresponds to Status field for the request. |
Status Message (type: String) |
StatusMessage |
Output |
No |
Request status message. Corresponds to Status Message field for the request. |
Task Recipient Minimum (type: String) |
TaskRecipMin |
Input |
No |
Preferred minimum number of recipients for a subtask. A warning issued if this number is not met. (Not available from the user interface for creating outbound requests.) |
Test Address (type: String) |
TestAddress |
Input |
No |
Recipient address (for the To line) to use for testing. This address overrides all other addresses. If set to Null (case insensitive), then communications drivers are not loaded and messages are note sent. |
Web Server (type: String) |
WebServer |
Input |
No |
Web server to use for Siebel bookmarks (URLs). This argument corresponds to the WebServer parameter for Communications Outbound Manager. For more information, see Configuring Communications Outbound Manager. For information about the description for the Create Bookmark check box for advanced templates, see Fields for Templates. |
Arguments for Send Message Method
The following table lists the arguments for the Send Message (SendMessage) method.
Table Arguments for Send Message Method
Argument Display Name and Data Type | Argument Name | Type | Req’d | Comment |
---|---|---|---|---|
Bcc Address List (type: String) |
MsgBccList |
Input |
No |
Semicolon-delimited list of email addresses for the BCC line. |
Cc Address List (type: String) |
MsgCcList |
Input |
No |
Semicolon-delimited list of email addresses for the CC line. |
Communication Profile (type: String) |
CommProfile |
Input |
Yes |
Name of the communications profile used to send the message. |
Message Body (type: String) |
MsgBody |
Input |
No |
Email message body content. This content might be specified from a workflow process or script. Content processing depends in part on whether the argument type is Expression or Literal. For example, when the type is Expression, you can enter operators such as +, specify field names for substitution, and enclose literal strings in quotes. You must enclose carriage returns to include in output in quotes, such as in the following example: "New Quote" + " " + [Quote Number] For more information, see Siebel Business Process Framework: Workflow Guide. |
Message Subject (type: String) |
MsgSubject |
Input |
No |
Descriptive subject line for the email message. |
Mobile Media Type (type: String) |
MobileMediaType |
Input |
No |
For a wireless message, set this argument to Wireless. This argument must be empty in all other cases. |
Reply to Address List (type: String) |
MsgReplyAddressList |
Input |
No |
Semicolon-delimited list of email addresses to use for all recipients. The list specifies email addresses that the recipient can reply to. |
To Address List (type: String) |
MsgToList |
Input |
No |
Semicolon-delimited list of email addresses for the To line. For a wireless message, this argument must contain a list of contact IDs to send the message to. |
Arguments for Send SMTP Message Method
The following table lists the arguments for the Send SMTP Message (SendSmtpMessage) method.
Table Arguments for Send SMTP Message Method
Argument Display Name and Data Type | Argument Name | Type | Req’d | Comment |
---|---|---|---|---|
Bcc Address List (type: String) |
MsgBccList |
Input |
No |
Semicolon-delimited list of email addresses for the BCC line. |
Cc Address List (type: String) |
MsgCcList |
Input |
No |
Semicolon-delimited list of email addresses for the CC line. |
From Address (type: String) |
FromAddress |
Input |
Yes |
Email address of the sender. |
Message Body (type: String) |
MsgBody |
Input |
No |
Email message body content. This content might be specified from a workflow process or script. Content processing depends in part on whether the argument type is Expression or Literal. For example, when the type is Expression, you can enter operators such as +, specify field names for substitution, and enclose literal strings in quotes. You must enclose carriage returns to include in output in quotes, such as in the following example: "New Quote" + " " + [Quote Number] For more information, see Siebel Business Process Framework: Workflow Guide. |
Message Subject (type: String) |
MsgSubject |
Input |
No |
Descriptive subject line for the email message. |
To Address List (type: String) |
MsgToList |
Input |
No |
Semicolon-delimited list of email addresses for the To line. |
Arguments for Submit Request Method
The following table lists the arguments for the Submit Request (SubmitRequest) method.
Table Arguments for Submit Request Method
Argument Display Name and Data Type | Argument Name | Type | Req’d | Comment |
---|---|---|---|---|
# of Recipients (type: String) |
NumRecipients |
Input |
No |
Estimated total number of recipients. Used as a hint for auto-adjustment of number of subtasks. (Not available from user interface.) |
# of Tasks (type: String) |
NumTasks |
Input |
No |
Number of subtasks to run. This number is based on each recipient’s last name. |
Child Recipient Search Spec (type: String) |
ChildRecipSearchSpec |
Input |
No |
Search specification to filter iteration child business component in the form child_BC_name: child_recip_search_spec. |
Comm Profile Override (type: String) |
CommProfileOverride |
Input |
No |
Communications profile to use for all communications templates in this request. |
Defined Component (type: String) |
DefinedComponent |
Input |
No |
Name of the defined Siebel Server component to receive this request. This name is based on CommOutboundMgr. Corresponds to Component Name field for the request. |
Recipient Search Spec (type: String) |
RecipSearchSpec |
Input |
No |
Search specification to filter the recipients that the recipient business component returns. |
Request End Date (type: String) |
EndDate |
Output |
No |
Date or time the request finished. Corresponds to End Time field for the request. |
Request ID (type: String) |
CommRequestId |
Input |
No |
ID for this communication request. A request must use either Request ID or Request Name. Corresponds to Request # field for the request. |
Request Language Code (type: String) |
RequestLanguageCode |
Input |
No |
Language applicable to this request. The value for this argument is derived, in priority order, from:
It is assumed that all recipients for a request share a common language and locale. |
Request Locale Code (type: String) |
RequestLocaleCode |
Input |
No |
Locale applicable to this request. The value for this argument is derived, in priority order, from:
It is assumed that all recipients for a request share a common language and locale. |
Request Name (type: String) |
RequestName |
Input |
No |
Name for this communication request. A request must use either Request ID or Request Name. Corresponds to Description field for the request. |
Request Parent ID (type: String) |
CommRequestParentId |
Input |
No |
ID for the parent request of this communication request (when current request is a subrequest). Corresponds to Request # field for the request. |
Request Start Date (type: String) |
StartDate |
Output |
No |
Date or time the request started. Corresponds to Start Time field for the request. |
Status (type: String) |
Status |
Output |
No |
Status of the request. Corresponds to Status field for the request. |
Status Message (type: String) |
StatusMessage |
Output |
No |
Request status message. Corresponds to Status Message field for the request. |
Task Recipient Minimum (type: String) |
TaskRecipMin |
Input |
No |
Preferred minimum number of recipients for a subtask. A warning issued if this number is not met. (Not available from the user interface for creating outbound requests.) |
Test Address (type: String) |
TestAddress |
Input |
No |
Address to use for testing. This address overrides all other addresses. If it is set to Null (case insensitive), then communications drivers are not loaded and message are note sent. |
Web Server (type: String) |
WebServer |
Input |
No |
Web server to use for Siebel bookmarks (URLs). This argument corresponds to the WebServer parameter for Communications Outbound Manager. For more information, see Configuring Communications Outbound Manager. For information about the description for the Create Bookmark check box for advanced templates, see Fields for Templates. |