Structure of the Case event emitter JSON file
The JSON configuration file for the Case event emitter includes a source section to specify the object store for events, a filter section to specify what solutions are used, and an output section to specify the target location for retrieved events.
Source
The "input" field identifies the target object store that the emitter has to
connect to for retrieving events.
The
"input" field takes the following parameters:"input": {
"default" : {
"enable" : true,
"logicalUniqueId" : "8-character unique name",
"dateSql": "20180801T002840Z",
"ceUrl": "http://ceServerHost:port/wsi/FNCEWS40MTOM",
"ceObjectStore" : "Target object store to connect to",
"ceUsername" : "Object store administrator name",
"cePasswordBase64" : "Base64 encoded password"
}
}
- "enable"
- The value for the "enable" field must be true for the emitter to process the events from the source.
- "logicalUniqueId"
- The "logicalUniqueId" field must contain an 8-character alphanumeric string without underscores. This field represents the logical grouping of different emitters. In other words, all the emitters that use the same "logicalUniqueId" value are treated as a single group trying to emit the events from the Content Engine. This value is always required. While processing, the emitter keeps track of the events that are processed using the Content Engine Audit Processing Bookmark with a display name that is based on the "logicalUniqueId" field. Therefore, if the emitter is restarted and if the bookmark exists, the emitter processes the events from the last bookmark.
- "dateSql"
- The value of the "dateSql" field represents the creation date of the events. The emitter starts processing the events from that date. If a bookmark exists, the emitter ignores the "dateSql" field and processes the events based on the bookmark.
- "ceUrL", "ceObjectStore", "ceUsername", "cePasswordBase64"
- The values for the "ceUrL", "ceObjectStore",
"ceUsername", and "cePasswordBase64" fields must match the values
related to the Content Engine server that the emitter connects to for emitting the events. Tip: To encode your password for the "cePasswordBase64" field, run echo -n <yourPassword> from a Linux (or Unix emulation on Windows) command line, for example $ echo -n yourPassword | base64 eW91clBhc3N3b3Jk.
Filter
To avoid sending events about a case solution that must not be processed, you must specify the
name of each solution.
Attention: Add all the solutions you want to be processed
before you deploy the Case event
emitter.
"actions": {
"default": {
"type": "filter",
"conditions": [
{
"match": {
"source.icm.solution-name": "<The name of the solution whose events you want to be emitted>"
}
}
]
}
}
If you want to specify more than one solution, add a match block for each in
the conditions
array.
"actions": {
"default": {
"type": "filter",
"conditions": [
{
"match": {
"source.icm.solution-name": "<Solution Name A>"
}
},
{
"match": {
"source.icm.solution-name": "<Solution Name B>"
}
}
]
}
}
Output
The "output" field defines where the emitter should push events to.
Add all the
properties that the Kafka producer documentation identifies as mandatory.
"output" : {
"default" : {
"enable" : true,
"bootstrap.servers" : "A comma-separated list of servers",
"sasl.mechanism": "PLAIN etc.",
"topic" : "topic to use",
"security.protocol" : "See the Kafka documentation.",
"ssl.protocol" : "See the Kafka documentation.",
"ssl.enabled.protocols": "See the Kafka documentation.",
"ssl.endpoint.identification.algorithm" : "See the Kafka documentation.",
"api_key" : "An api key if you use Kafka on IBM Cloud (previously known as Bluemix)."
}
- bootstrap.server
- Details of the Kafka bootstrap server
- topic
- The Kafka topic to use
- sasl.mechanism, security.protocol, ssl.protocol, ssl.enabled.protocols, ssl.endpoint.identification.algorithm
- The security properties for Kafka. For more information, see the Producer Configs section of the Kafka documentation.
- api_key
- Set this property only if Kafka is used on IBM Cloud™.
For
example:
"output" : {
"default" : {
"enable" : true,
"type" : "kafka",
"sasl.mechanism": "PLAIN",
"bootstrap.servers" : "localhost:9092",
"topic" : "ibm-bai-ingress"
}
}
For more information about the Kafka output type, see Configuring event output to Kafka.