Geospatial marketing

Leverage location tracking by adding geo triggers along with custom marketing messaging we can open up new market opportunities that deliver custom customer experiences.


This example simulates geospatial real-time marketing through the use of geofence triggers and custom messages. Geofences are automatically added to the processor through the use of auto reference data binding.

Use case configuration

File: app-geospatialMarketingCampaign.env

SOURCEFILE=conf/sources/mobileSimulatedStream.yaml
REFERENCEDATA=conf/sources/mobileReferenceData.yaml
ENGINEFILE=conf/usecases/analytics/mobileEventDynamicCampaignStream.yaml
PUBLISHFILE=conf/publishers/marketingCampaignFile.yaml

Reference data stores can be used to prime the geofences. Change the required yaml file to test this feature in the app.env file.

ENGINEFILE=conf/usecases/analytics/mobileEventDynamicCampaignUsingGeofenceDataStoreStream.yaml

Pipeline configuration

processing unit:
  pipeline:
    - filter:
        expression: "(imsi !== null ) ? true : false;"
    
    - entity geo tracker:
        name: TFLMessage
        entity key: imsi
        min dwelling time: 2
        timeUnit: SECONDS  
        default radius: 150.0f
        geofences:
          stores:
            geoFenceStore:
              storeName: londonTransportStations
              getInitialImage: true
              initialImageQuery: select * from londonTransportStations
              primaryKey: id
        
    - geofence occupancy trigger:
        name: marketingCampaign
        tracker field: geoTrackingInfo
        plugin: com.fractalworks.streams.examples.telco.marketing.MarketingCampaignMessenger
    
    - filter:
        expression: "(typeof campaignMsg !== 'undefined' && campaignMsg !== null) ? true : false;"

Output Event

The following fields are added to the processed StreamEvent object.

// Some code

Last updated