Incorporate Fusion Signals into Appkit Applications
1 Add the Fusion Signals dependency
Signals tracking in Fusion requires the Fusion Signals module. To enable this module, insert this within the dependencies
tag of your pom.xml
:
<dependency>
<groupId>twigkit</groupId>
<artifactId>twigkit.activity.fusion-signals</artifactId>
<version>${project.parent.version}</version>
</dependency>
2 Add fusion.conf to activity tracking resources
To access this module when Appkit starts up, create a fusion.conf
file in resources/conf/activity/tracking/
. In that file, configure the signals-endpoint
. This is the REST-API endpoint that will ingest signal data into a signals collection. For example:
signals-endpoint: http://localhost:8764/api/apollo/signals/image_catalog
signals-index-pipeline:
commit: true
async: false
platform-config: platforms.fusion
Here, image_catalog
is the name of a primary collection that will be used to generate an auxiliary collection consisting of activity tracking data.
When accessing Fusion using a service account, the parameter platform-config
is required. This is the name of the Fusion platform configuration that includes the necessary parameters required for basic authentication. For example, if the configuration file for the Fusion platform, fusion.conf
is stored in resources/conf/platforms/fusion/
then the platform-config
parameter would be set as shown above. If, however, the configuration file for the Fusion platform was named myFusion.conf
and again stored in resources/conf/platforms/fusion/
, then the platform-config
parameter would be platforms.fusion.myFusion
. For quick reference, the platform configuration should contain these parameters to enable basic authentication:
impersonate: true
userName: joebloggs
password: Enc(<encoded password>)
For more information about how authentication is used when accessing the Fusion Signals endpoint, see the Authentication section below.
Several optional parameters are also provided as shown. The first, signals-index-pipeline
, can be used to define an index pipeline that will to be used to convert the raw JSON signal data into a set of Solr documents. As stated in the Fusion Signals API documentation, if no pipeline is defined, then the preconfigured _signals_ingest
pipeline will be used. Both the remaining two parameters, commit
and async
, are booleans. If commit
is set to true, a Solr commit will occur at the end of indexing allowing a persistent record of the activity to be kept. If async
is set to true, signals will be indexed in asynchronous mode. In this mode, an autoCommit is issued with each signal and failures are not reported. The default is false.