Info
Version: | 1.0.6 |
Author(s): | Coria Inc. |
Last Update: | Wednesday, April 29, 2020 |
.NET Fiddle: | Create the first Fiddle |
Project Url: | https://www.pulse.app/ |
NuGet Url: | https://www.nuget.org/packages/PulsePersonalizationApp |
Install
Install-Package PulsePersonalizationApp
dotnet add package PulsePersonalizationApp
paket add PulsePersonalizationApp
PulsePersonalizationApp Download (Unzip the "nupkg" after downloading)
Dependencies
- EPiServer.CMS.AspNet(>= 11.1.0)
- EPiServer.CMS.UI.Core(>= 11.1.0)
- System.Net.Http(>= 4.3.4)
- EPiServer.Personalization.MaxMindGeolocation(>= 1.0.0)
Tags
Installed as a Nuget package, the extension creates a criterion for Visitor Group membership that uses the existence of a specific market segment key in the list returned by the Pulse Personalization API.
A subscription to the Pulse Personalization API is required. This specific version of the Nuget package comes with a rate limited API key for testing purposes.
The app functions by geocoding the IP address of the visitor using the MaxMindGeolocation provider and passing the resulting lat/long coordinate pair to the Pulse API endpoint using the Pulse API Key for authentication.
Communication with the Pulse API Endpoint is secured using SSL. No Personally Identifiable Information (PII) is passed to or returned from the Pulse API Endpoint. The Pulse API Endpoint returns a list of market segments that have high scores for the geographic location corresponding to the coordinates passed to the endpoint.
Different market segments will be returned based on the datasets included in the subscription associated with the Pulse API Key.
In the event there are no datasets with corresponding high scores for any market segments and empty set is returned. In the event the Pulse API endpoint is unavailable, the visitor will not be added to any Pulse Analytics visitor groups.
The request for the market segments is performed asynchronously at session start. This means that the visitor will not be added to the Visitor Group(s) in time to personalize the first page load.
This is intentional to ensure that the first page load time is not adversely affected. We may add an option to override this behavior in future versions.