ALERT CONFIGURATION
Database Configuration
All the configurations are explained with respect to Wallets request fund activity.
- The Activity entry is added in the DIGX_EP_ACT_B table.
Column Name |
Description |
---|---|
COD_ACT_ID |
Primary key of the table. An identifier for the activity raising the event. It is the combination of the fully qualified name for the class and the method name. |
TXT_ACT_NAME |
Name of the activity. As a convention it is ‘.’ separated combination of class name and method name. |
TXT_ACT_DESC |
Description of the activity. |
MODULE_TYPE |
Module type of the activity. It maps to the ModuleType enumeration. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_ACT_B.sql
- The event is added in the table DIGX_PM_EVENT_ALL_B table.
Column Name |
Description |
---|---|
EVENT_CODE |
Primary key of the table. An identifier for the event occurred. It should start from the module type followed by the logical name for the event. |
EVENT_DESC |
Description of the event. |
ALERTS_FLAG |
Identifies whether the alert is required for this event or not. Possible values : ‘Y’ or ‘N’. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_PM_EVENT_ALL_B.sql
- The activity Event combination is added in DIGX_EP_ACT_EVT_B table. Separate entries are required for all the events of the activity i.e. Suppose activity 'com.ofss.digx.app.wallet.service.core.Wallet.requestFunds' has two events one for success and other for failure, 2 entries will go in the table for both of them.
Column Name |
Description |
---|---|
COD_ACT_ID |
Activity Id. It must match to the COD_ACT_ID column of DIGX_EP_ACT_B table. |
COD_EVENT_ID |
Event Id. It must match to the EVENT_CODE column of DIGX_PM_EVENT_ALL_B table. |
TXT_ACT_EVT_DESC |
Description of the activity event combination. |
TXT_EVT_TYP |
Event type. It maps to EventType enumeration. |
TXT_ACT_EVT_TYP |
Activity Event type. It maps to ActivityEventType enumeration. Possible values : ‘BULK’ or ‘ONLINE’. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_ACT_EVT_B.sql
- Message templates are added based on the destination types to the table DIGX_EP_MSG_TMPL_B table.
Column Name |
Description |
---|---|
COD_TMPL_ID |
Primary key of the table. Uniquely identifies a message template. It should start from the module type followed by the logical name for the template. |
DESTINATION_TYPE |
Destination type of the template. It maps to DestinationType enumeration. |
MSG_TMPL_NAME |
Logical name of the message template. |
MSG_TMPL_DESC |
Description of the message template. |
TXT_MSG_TMPL |
It contains the format for the message body. It is stored as CLOB in the table. |
TXT_SUBJECT_TMPL |
It contains the subject for the message. It is also stored as CLOB in the table. |
DETERMINANT_VALUE |
It determines the entity code for the template. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_MSG_TMPL_B.sql
As you can see in the above example, the data elements like wallet id, amount and sender name are defined in between ‘#’.The entry for those data elements(or attributes) is done in the following tables.
- Message attributes are added in the table DIGX_EP_MSG_ATTR_B table.
Column Name |
Description |
---|---|
COD_TMPL_ID |
Message template Id. It must match to the COD_TMPL_ID column of DIGX_EP_MSG_TMPL_B table. |
COD_ATTR_ID |
Name of the attribute. It must match to the one defined inside TXT_MSG_TMPL of DIGX_EP_MSG_TMPL_B table. |
ATTR_MASK |
Masking format for the attribute value. Characters given as ‘X’ will be masked and the ones given as ‘D’ will be displayed as it is. |
DETERMINANT_VALUE |
It determines the entity code for the template. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/metadata/DIGX_MD_SERVICE_ATTR.sql
- Service attributes are added in DIGX_MD_SERVICE_ATTR table.
Column Name |
Description |
---|---|
COD_SERVICE_ATTR_ID |
Name of the attribute. It must match to the one defined inside TXT_MSG_TMPL of DIGX_EP_MSG_TMPL_B table. |
TYP_DATA_AVAIL |
Masking format for the attribute value. Characters given as ‘X’ will be masked and the ones given as ‘D’ will be displayed as it is. |
TYP_DATA_SRC |
It determines the entity code for the template. |
COD_ATTR_ID |
Name of the attribute. It must match to the one defined inside TXT_MSG_TMPL of DIGX_EP_MSG_TMPL_B table. |
COD_SERVICE_ID |
Masking format for the attribute value. Characters given as ‘X’ will be masked and the ones given as ‘D’ will be displayed as it is. |
PARAMETER_NAME |
It determines the entity code for the template. |
REF_FIELD_DEFN_ID |
It determines the entity code for the template. |
Here, in case of TYP_DATA_SRC as ‘INPUT’, there can be 2 cases :
- The attribute value is passed directly to the activity i.e. the attribute value is one of the arguments passed to the activity. In this case, TYP_DATA_AVAIL will be ‘DIRECT’.
- The attribute value is not passed directly to the activity , but it can be obtained from one of the arguments passed to the activity i.e. it is part of one of the DTOs which is passed to the activity. In this case, TYP_DATA_AVAIL will be ‘INDIRECT’.
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/metadata/DIGX_MD_SERVICE_ATTR.sql
- Source of the message attributes are added in DIGX_EP_MSG_SRC_B table.
Column Name |
Description |
---|---|
COD_MESS_TMPL_ID |
Message template Id. It must match to the COD_TMPL_ID column of DIGX_EP_MSG_TMPL_B table. |
COD_ATTR_ID |
Name of the attribute. It must match to the one defined inside TXT_MSG_TMPL of DIGX_EP_MSG_TMPL_B table. |
COD_ACT_ID |
Activity Id. It must match to COD_ACT_ID column of DIGX_EP_ACT_B table. |
COD_SERVICE_ATTR_ID |
Service attribute id. It must match to COD_SERVICE_ATTR_ID of DIGX_MD_SERVICE_ATTR table. |
DETERMINANT_VALUE |
It determines the entity code for the template. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_MSG_SRC_B.sql
- The attributes which are input to the activity are added in DIGX_MD_SERVICE_INPUTS table.
Column Name |
Description |
---|---|
COD_SERVICE_ID |
Activity Id. It must match to COD_ACT_ID column of DIGX_EP_ACT_B table. |
PARAMETER_NAME |
The name of the argument passed to the activity. |
PARAMETER_INDEX |
Unique index of the argument for an activity. It starts from 0 for a particular activity. |
DATA_TYPE |
Data type of the argument passed to the activity. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_MSG_SRC_B.sql
- The generic attributes along with their data types are added in DIGX_MD_GEN_ATTR_LEGACY_B table.
Column Name |
Description |
---|---|
COD_CONSTRAINT_ATTR_ID |
Attribute Id |
TXT_CONSTRAINT_ATTR_NAME |
Name or description of the attribute. |
DATA_TYPE |
Data type of the attribute to format the attribute value. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/metadata/DIGX_MD_GEN_ATTR_LEGACY_B.sql
- Entry for alert is added in DIGX_EP_ACT_EVT_ACN_B table.
Column Name |
Description |
---|---|
COD_ACT_ID |
Activity Id |
COD_EVENT_ID |
Event Id |
COD_ACTION_ID |
Action Id. Possible value : ‘A’ (means Alert) |
FLG_TRANSACTIONAL |
Possible values : ‘Y’ or ‘N’. This flag indicates whether events under this event category are transactional events or not.A Transactional event is an event which get processed within the same session of manager API. |
COD_DEC_ID |
Possible Value : 0 |
FLG_CONDITIONAL |
Possible value : ‘N’ |
Possible values : 1 or 2 . 1 indicates the importance of alert is critical. 2 indicates the importance of alert is informational. |
|
ALERT_NAME |
Unique name for the alert. |
EXPIRY_DATE |
Expiry Date of the alert |
ALERT_TYPE |
Alert Type. Possible values: ‘M’ or ‘S’. ‘M’ indicates the alert is of mandatory type and cannot be subscribed/unsubscribed by the user. ‘S’ indicates the alert is of subscribed type which can be subscribed/unsubscribed by the user. |
ALERT_DISPATCH_TYPE |
Alert Dispatch Type. Possible values: ‘I’ or ‘D’. ‘I’ indicates immediate i.e. the alert needs to be send immediately. ‘D’ indicates deffered i.e. the alert will be sent later. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_ACT_EVT_ACN_B.sql
- Entry for recipient message templates is added in DIGX_EP_EVT_REC_B table. Separate entries are required for all the destination types of the alert i.e. Suppose activity 'com.ofss.digx.app.wallet.service.core.Wallet.requestFunds' has two destination types, EMAIL and SMS, 2 entries will go in this table.
Column Name |
Description |
---|---|
COD_ACT_ID |
Activity Id |
COD_EVENT_ID |
Event Id |
COD_ACTION_ID |
Action Id. Possible value : ‘A’ (means Alert) |
COD_MSG_TMPL_ID |
Message Template Id. Foreign key to COD_TMPL_ID of DIGX_EP_MSG_TMPL_B. |
TXT_DEST_TYP |
Destination Type. Possible value : ‘EMAIL’ , ‘SMS’, ‘SECURE_MAIL_BOX’ , ‘PUSH_NOTIFICATION’ |
SUBSCRIBER_TYPE |
Possible value : ‘PARTY’ |
SUBSCRIBER_VALUE |
Possible value : ‘CUSTOMER’. |
ALERT_TYPE |
Alert Type. Possible values: ‘M’ or ‘S’. ‘M’ indicates the alert is of mandatory type and cannot be subscribed/unsubscribed by the user. ‘S’ indicates the alert is of subscribed type which can be subscribed/unsubscribed by the user. |
LOCALE |
Locale to pick the location/language specific template for. |
SVN Location for Seed Data Script : http://obcpsvn.oraclecorp.com:8080/svn/clip/trunk/core/seed/oracle/alerts/DIGX_EP_EVT_REC_B.sql
Note: Entries for most of the activities, events, corresponding activity events , message templates, message attributes are already added. Please check for the entries in the table to avoid repetition.
API For Raising an Event
For raising an event, registerActivityAndGenerateEvent API has been provided in the AbstractApplication class.
It takes 4 parameters:
- Session Context
- EventId
- ActivityLog
Alerts can be either Account based or Party A party is any individual or business entity having a banking relationship with the bank. based. If it is Account based, populating 2 attributes(accountId and accountType) of ActivityLog is bare minimum requirement. Similarily, if it is Party based,populating 1 attribute(customerId) of ActivityLog is bare minimum requirement. For the other attributes, In case the attribute is already present in com.ofss.digx.app.alerts.dto.eventgen.ActivityLog class use the existing ActivityLog instance. Else create a subclass of ActivityLog having your attribute. Set the attribute value in the ActivityLog child class and pass its instance as an argument to registerActivityAndGenerateEvent method.
Custom Fields For Push Notifications
Following Keys can be used to customize Push Notifications.
Key Name |
Value |
---|---|
SOUND_IOS |
File name of custom sound file added to OBDX IOS App |
SOUND_ANDROID |
File name of custom sound file added to OBDX Android App |
LARGE_ICON_ANDROID |
URL of icon image to be displayed as large icon in Big Style Push Notification of OBDX Android App. |
LARGE_IMAGE_ANDROID |
URL of image to be displayed in Big Style Push Notification of OBDX Android App. |
These custom keys are to be added to the value of “TXT_MSG_TMPL” column of DIGX_EP_MSG_TMPL_B table.
If alerts are being created through front end UI User Interface, add following keys to “Notification Message” section.
Syntax for adding custom keys to Push Notification alert messages
[customfield1Name~customfield1Value|customfield2Name~customfield2Value]
Example 1:
You have requested for #NoOfChequeBook# cheque book with #ChequeBookOption# leaves on Account #AccountNo#.
[SOUND_ANDROID~isntit|LARGE_IMAGE_ANDROID~http://static1.squarespace.com/static/54ac6f9ae4b0cf1d82a4b59e/t/587f9e52cd0f68e84c5548fd/1484758653422/?format=300w|SOUND_IOS~chime.m4a]
Example 2:
You have requested for #NoOfChequeBook# cheque book with #ChequeBookOption# leaves on Account #AccountNo#.
[SOUND_ANDROID~isntit|LARGE_ICON_ANDROID~http://static1.squarespace.com/static/54ac6f9ae4b0cf1d82a4b59e/t/587f9e52cd0f68e84c5548fd/1484758653422/?format=300w|SOUND_IOS~chime.m4a]
Multi-Entity Specific Templates
Entity specific templates can be created by following ways :
- Creation of a new alert and template before the entity creation.
If a new alert has to be maintained before the creation of any new entity, the data for the same has to be inserted in the following tables twice.
One for DETERMINANT_VALUE ‘*’ and the other for DETERMINANT_VALUE ‘OBDX_BU’, which is the default entity.
Tables :
DIGX_EP_MSG_TMPL_B
DIGX_EP_MSG_ATTR_B
DIGX_EP_MSG_SRC_B - Creation of a new alert and template after the entity creation.
If a new alert has to be maintained after the creation of entity/entities, the same can be replicated for the different entities using the below queries.
First insert the templates for DETERMINANT_VALUE ‘*’ and DETERMINAT_VALUE ‘OBDX_BU’ and then execute the below queries for the respective entities.