Configuring pipeline configuring-pipeline
Authentication parameters such as the customer ID, the private key, and the authentication endpoint are configured in the instance configuration files.
The list of triggers to be processed is configured in an option in JSON format.
The triggers are used for targeting by a campaign workflow that sends emails. The campaign is set up so that a customer that has both trigger events receives an email.
Prerequisites prerequisites
Before starting this configuration, please check you are using:
-
Minimum, one of the following Adobe Campaign builds:
- 19.1.8.9039
- 19.1.4.9032 - Gold Standard 11
- 20.2.4.9187
- 20.3.1
-
Adobe Analytics Standard version
You also need:
- Adobe I/O project authentication
- a valid Organization ID - To find your Organization ID, refer to this page
- a Developer access to your Organization
- triggers configuration done in Adobe Analytics
Authentication and configuration files authentication-configuration
Authentication is required since pipeline is hosted in the Adobe Experience Cloud.
It uses a pair of public and private keys. This process has the same function as a user/password but is more secure.
Authentication is supported for the Marketing Cloud via Adobe I/O Project.
Step 1: Creating/updating Adobe I/O Project creating-adobe-io-project
For Hosted customers, you can create a customer care ticket to enable your organization with Adobe I/O Technical Account Tokens for the Triggers integration.
For On Premise customers, refer to the Configuring Adobe I/O for Adobe Experience Cloud Triggers page. Note that you need to select Adobe Analytics while adding API to the Adobe I/O credential.
Step 2: Configuring NmsPipeline_Config pipeline option configuring-nmspipeline
Once the authentication is set, pipeline will retrieve the events. It will only process triggers that are configured in Adobe Campaign. The trigger must have been generated from Adobe Analytics and pushed to the pipeline which will only process triggers that are configured in Adobe Campaign.
The option can also be configured with a wildcard in order to catch all triggers regardless of the name.
-
In Adobe Campaign, access the options menu under Administration > Platform > Options in the Explorer.
-
Select the NmsPipeline_Config option.
-
In the Value (long text) field, you can paste the following JSON code, which specifies two triggers. You need to make sure to remove comments.
code language-none { "topics": [ // list of "topics" that the pipelined is listening to. { "name": "triggers", // Name of the first topic: triggers. "consumer": "customer_dev", // Name of the instance that listens. This value can be found on the monitoring page of Adobe Campaign. "triggers": [ // Array of triggers. { "name": "3e8a2ba7-fccc-49bb-bdac-33ee33cf02bf", // TriggerType ID from Analytics "jsConnector": "cus:triggers.js" // Javascript library holding the processing function. }, { "name": "2da3fdff-13af-4c51-8ed0-05802a572e94", // Second TriggerType ID "jsConnector": "cus:triggers.js" // Can use the same JS for all. }, ] } ] }
-
You can also choose to paste the following JSON code which catches all triggers.
code language-none { "topics": [ { "name": "triggers", "consumer": "customer_dev", "triggers": [ { "name": "*", "jsConnector": "cus:pipeline.js" } ] } ] }
The Consumer parameter consumer-parameter
The pipeline works like a supplier and consumer model. Messages are consumed only for an individual consumer: each consumer gets its own copy of the messages.
The Consumer parameter identifies the instance as one of these consumers. The identity of the instance will call the pipeline. You can fill it with the instance name which can be found on the Monitoring page of the Client Console.
The pipeline service keeps track of the messages retrieved by each consumer. Using different consumers for different instances allows you to make sure that every message is sent to each instance.
Pipeline option recommendations pipeline-option-recommendation
To configure Pipeline option, you should follow these recommendations:
- Add or edit triggers under Triggers, you should not edit the rest.
- Make sure the JSON is valid. You can use a JSON Validator, refer to this website for example.
- “name” corresponds to the trigger ID. A wildcard “*” will catch all triggers.
- “Consumer” corresponds to the name of the calling instance or application.
- Pipelined also supports the “aliases” topic.
- You should always restart pipelined after making changes.
Step 3: Optional configuration step-optional
You can change some internal parameters as per your load requirements but make sure to test them before putting them into production.
The list of optional parameters can be found below:
https://api.omniture.com
cryptString("PRIVATE_KEY")
https://producer-pipeline-pnw.adobe.net
var/INSTANCE/pipelined.json.
Internal state is also accessible on-demand here:
http://INSTANCE:7781/pipelined/status
http://INSTANCE:PORT/pipelined/status
.Default is 7781
Default is 1000
Default is 5 (secs)
Default is 4
Default is 4
Default is 30 (secs)
Default is 300 (secs)
Pipelined process auto-start pipelined-process-autostart
The pipelined process needs to be started automatically.
For this, set the < pipelined > element in the config file to autostart=“true”:
<pipelined autoStart="true" ... "/>
Pipelined process restart pipelined-process-restart
A restart is required for the changes to take effect:
nlserver restart pipelined@instance
Step 4: Validation step-validation
To validate the pipeline setup for provisioning, follow the steps below:
- Make sure the pipelined process is running.
- Check the pipelined.log for pipeline connection logs.
- Verify the connection and if pings are received. Hosted customers can use the Monitoring from the Client Console.