The EJM control message has several required XML nodes with different options that can be formatted to suit the type of Message Center services and STAR/PACE events triggered for execution.
Required XML Nodes
The most important nodes are:
- EagleML/header/sendTo. Represents the name of MC stream into which the message is to be sent in the following format http://www.eagleinvsys.com/[stream name]. For instance, it should be http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message for one of the most frequently used streams eagle_ml-2-0_default_cm_control_message.
EagleML/taskIdentifier/correlationId. Unique command identification string.
Note
This node value should be changed every time the message is sent into the stream to provide its uniqueness, otherwise MC reports of duplicate correlationId.
- EagleML/taskIdentifier/businessTaskId. Command title.
EagleML/taskParameters. In this section you customize various incoming parameters for current command in the following format:
<taskParameter> <name>[parameter Name]</name> <dataType>[parameter type(S-string)]</dataType> <value>[parameter value]</value> </taskParameter>
Control Message (RTR) XML Elements
The following table describes the Control Message (RTR) message elements. More task parameters can be defined if necessary.
Elements of XML | Description |
---|---|
<EagleML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:type="RunTaskRequest" eaglemlVersion="2-0" eaglemlType="RunTaskRequest" xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0"> | Root Node. Its content is fixed. |
<header> <messageId messageIdScheme="messageIdScheme">skdjfwir0iweopri</messageId> <sentBy>http://www.vendor.com</sentBy> <sentTo>http://www.eagleinvsys.com/eagleml-2-0_control_messages</sentTo> <creationTimestamp>2013-05-28T00:32:50.785-05:00:00</creationTimestamp> <expiryTimestamp>2013-05-28T15:32:50.785-05:00:00</expiryTimestamp> </header> | Message Header section. messageId node value must contain a unique identifier sentBy is a constant sentTo is a constant creationTimestamp – the message generation time expiryTimestamp - the time when message should expire The most common practice is to set about 30 minutes between creation and expiry timestamps. Skipping expiry timestamp specifying is possible, but in this case all files must be present before sending control message |
<taskIdentifier> <correlationId correlationIdScheme="correlationIdScheme">unique_corr_id</correlationId> <businessTaskId correlationIdScheme="businessTaskIdScheme">comprehensive_business_id</businessTaskId> </taskIdentifier> | Task Identifier section. correlationId is a required node and must be unique businessTaskId is a required node and should describe the task. We recommend making it more informative so that it takes less time for you to identify the process in the Message Center. |
<taskTypeEnum>LOAD</taskTypeEnum> | Task type enumeration is a constant |
<synchronousExecution>yes</synchronousExecution> | Optional node. Synchronous Execution should only be used in the context of web services. File and JMS delivery should be configured asynchronously. |
Task parameters section | |
<taskParameter> <name>ActionType</name> <datatype>S</datatype> <value>ACQUIRE</value> </taskParameter> | Action Type is a constant |
<taskParameter> <name>FeedType</name> <datatype>S</datatype> <value>VENDORX</value> </taskParameter> | Feed Type is a constant, it represents the fact that the message comes from VENDORX |
<taskParameter> <name>FeedSubType</name> <datatype>S</datatype> <value>SMF_CONSTITUENCE</value> </taskParameter> | Feed Sub Type. Depends on specific FeedType set. In the example SMF with constituencies is defined. |
<taskParameter> <name>DeliveryMethod</name> <datatype>S</datatype> <value>FTP</value> </taskParameter> | Delivery Method is a constant and is set to “FTP” in this example |
<taskParameter> <name>SECMASTER</name> <datatype>S</datatype> <value>smf_file_name_goes_here.csv</value> </taskParameter> | Security master filename. |
<taskParameter> <name>WAREHOUSE</name> <datatype>S</datatype> <value>constituence_file_name_here.csv</value> </taskParameter> | Constituence filename. |