Admin: Realtime Profiles
Overview
This tab allows you to create, edit and export Realtime Profiles. A Realtime profile represents the starting point for configuring RPI Realtime. On adding a Realtime profile, you can set its properties in accordance with your anticipated RPI Realtime environment. You can then save the profile and export it. Doing so generates an appSettings.json.config file, which can be installed at the RPI Realtime website.
The tab contains the following:

Realtime Profiles Configuration list
Selected Realtime Profile Details Each of these is discussed below.
Realtime Profiles Configuration List
The Realtime Profiles Configuration list consists of a toolbar and list. Toolbar
The following buttons appear within the Realtime Profiles Configuration list:

Add new Realtime Profile: clicking this button adds a new Realtime profile to the list. Its default name is 'New Realtime Provider' (uniqueness is ensured through the addition of an incrementing integer).
Delete selected Realtime Profiles: this button is enabled when one or more Realtime profiles are selected in the list. Invocation deletes the Realtime profiles without displaying an 'Are You Sure?' dialog.
Import: this button allows you to import a Realtime profile from a file. Clicking it displays the Import Realtime Profile Windows file system dialog, in which the File type defaults to 'Config Files (*.config)'. You can select a Realtime profile file and click Open to proceed the with import. An imported profile's name is 'New Imported Realtime Profile' (an incrementable integer can be appended to ensure uniqueness). The new Realtime profile's settings are as those saved in the imported file.
Export: clicking this button allows you to export the currently-selected Realtime profile. It is enabled when the current Realtime profile's state is Unchanged. Invocation displays the Save Realtime Profile As Windows file system dialog. By default, the Documents folder is selected, the file's name is 'appsettings', and file type 'JSON'. Having saved the Realtime profile, an information message is displayed. Following export, a Realtime profile file is generated, and settings from the Realtime profile are reflected at the same.
Refresh: clicking this button reloads details of Realtime profiles from the operational database.
In addition, you can save any changes you make to Realtime profiles using the Save Changes button shown at the bottom right of the interface.
List
All current Realtime profiles are listed in alphabetical order.

For each, the following read-only information is shown:
Name
Description
State
A single Realtime profile is created by default. Its name is 'Sample Realtime Profile', and description 'Sample profile created automatically at RPI installation or upgrade'.
Selected Realtime Profile Details
The Selected Realtime Profile Details section, shown below the Realtime Profiles Configuration list, contains a tabset, which contains five tabs:
Application Settings
Identity Settings
Queue and Cache Settings
Realtime Plugins Settings
Realtime Recommendations Settings
Each is discussed separately below.
Application Settings
This tab is used to manage the following Realtime profile settings:

Name: this mandatory string property can be a maximum of 100 characters in length. The value provided must be unique across Realtime profiles.
Description: this optional string property can be a maximum of 1000 characters in length.
RPI authentication token: this mandatory string (GUID) property represents the authorization token to be used when connecting to the RPI Realtime API. An example GUID is provided.
Realtime Agent address: this mandatory string property represents the address of the RPI Realtime Agent service, which is used by RPI Realtime to communicate with the RPI data warehouse and operational database. It defaults to the value
https://rpiserver/InteractionRealtimeAgent
.
Realtime Agent authentication token: this mandatory string (GUID) property represents the authorization token to be used by the RPI Realtime API when connecting to the Realtime Agent. An example GUID is provided.
Threshold between page visits: this mandatory integer property defines the time, in minutes, after which a visitor's visiting a previously-visited web page will be deemed a new visit. It defaults to the value 1.
Message expiry days: this mandatory integer property represents the number of days after which entries in a visitor's message history will expire. It defaults to the value 30.
Cache web form data: this checkbox allows you to specify whether to persist submitted web form data in a visitor's profile. It is unchecked by default.
Cached attribute load timeout: this mandatory integer property represents the time, in milliseconds, after which RPI Realtime will time out when attempting to load data from the data warehouse. It defaults to the value 0.
Message history refresh interval: this mandatory integer property represents the number of minutes between message history cache refreshes. It defaults to 0, meaning that message history is not cached. If set to a value greater than 1, message history is cached.
Enable help pages: this checkbox, which is unchecked by default, allows you to provide access to the RPI Realtime API help documentation.
Number of days to persist web events: this mandatory integer property represents the length of time, in days, for which web events data will be persisted in a visitor's profile. It defaults to the value 14.
Number of minutes to cache selection rule results: this mandatory integer property represents the length of time, in minutes, for which selection rule results will be cached and reused for a web visitor. It defaults to the value 60.
Map API key: this optional string property (blank by default) allows you to specify a Bing Maps API key, which is required to use Geolocation decisions.
Machine learning service address: this optional string property (blank by default) allows you to specify the URL address of the Redpoint Machine Learning Service.
Override minimum thread pool size: this checkbox, which is unchecked by default, facilitates specification of a minimum thread pool size different to the default setting.
Minimum thread pool size override: this integer property is enabled and mandatory when Override minimum thread pool size is checked. It allows you to specify the overridden minimum thread pool size. It defaults to the value 200
Parameter to CAL mappings: this property consists of toolbar and table.
Toolbar: exposing the following options:
Add New Item: clicking this button adds a new row to the table. By default, its Parameter Name is 'Example Field', and its Cached Attribute List Name 'AttributeCacheName'.
Remove Items: this button is enabled when one or more rows are selected in the table. Invocation removes the row(s) without display of an 'Are You Sure?' dialog.
Table, containing the following columns:
Parameter Name: this mandatory property must be unique within the table.
Cache Attribute List Name: mandatory
Note that provision of rows within the table is optional.
Identity Settings
This tab is used to manage the following Realtime profile settings:

Master key: this optional string property represents the principal key to be used to identify known visitors' profiles.
Master key alternative names: this table allows you to specify alternative names for the master key. You can add or delete values as required.
Additional keys: this table allows you to specify additional keys by which a known visitor's profile can be indexed. You can add or delete values as required.
Identity parameters: this table allows you to define the mapping of visitor profile data parameters to keys in the data warehouse. You can add or delete values as required.
Queue and Cache Settings
This tab is used to manage the following Realtime profile settings:

Queue Settings section: exposing the following properties:
Web form queue path: this optional string property allows you to specify the path of the Web Form Submission queue.
Web events queue path: this optional string property allows you to specify the path of the Web Events queue.
Enable web cache queue path: this checkbox, which is unchecked by default, allows you to specify whether visitor profile changes are sent to the Web Cache queue.
Web cache queue path: this string property allows you to specify the path of the queue to process visitor profile data. It is enabled, and mandatory, when Enable web cache queue path is checked.
Recommendations queue path: this optional string property allows you to specify the path of the Recommendations queue which is used by any Product Recommendation endpoints.
Listener queue path: this optional string property allows you to specify the path of the Listener queue.
RPI client for queue provider: this dropdown property lists all installed RPI clients in the current cluster. It allows you to select the RPI client from which to source queue provider information. Selection of a client is mandatory.
Cache Settings section, containing the following properties:
Default cache provider: this dropdown lists all supported memory cache provider types. Selection of a value therein enables additional properties, display of which is contingent on the value chosen.
If Redis:
Connection string
If Azure Redis:
Connection string
If SAP Hana:
Server name
Schema
User name
Password
If Memcached:
Section name: the Web.config section containing the Memcached configuration
If Cassandra:
Keyspace
Contact points
Username
Password
If Couchbase:
Server name
Username
Password
Bucket Name If MongoDB:
Server name
Port
Schema
Collection name
If NCache:
Cache ID
Server List
If CosmosDB:
Database ID
Connection String
If MemoryDB Redis:
Host
Port
SSL
Username
Password
All cache provider-specific properties are mandatory strings.
Additional Caches: accompanied by a button:
Manage Additional Caches: clicking this button displays the Additional Caches overlay (see below).
Cache Types list: this read-only list contains four rows. The following columns are displayed:
Cache Type: this read-only column contains the following values:
Visitor Profile Data
Visitor History Data
Non Visitor Data
Recommendation Data
Visitor Backup o Use Default: a writeable checkbox
Selected Cache Type section: this section displays details of the cache type selected to the left. When a cache type is not selected, a message advises to select one to view its details. The section exposes the following properties:
Cache Type: read-only.
Use default cache: this checkbox is checked by default. When unchecked, the Cache name property is displayed.
Cache name: this property is displayed when Use default cache is unchecked. A dropdown field, it lists all configured additional caches. It is mandatory if shown.
Days to persist: this mandatory integer property accepts a maximum value of 999,999,999.
Compress data: this checkbox is only shown when one of Visitor Profile or History Data is selected. It is checked by default.
The Additional Caches overlay contains the following:

Additional Caches list: consisting of a toolbar and a list.
Toolbar: exposing the following options:
Add Additional Cache: clicking this button adds an additional cache to the list, with defaults as follows:
Cache Name: 'NewCacheName' (an incrementable integer can be added to ensure uniqueness).
Cache Provider = 'Redis'.
Remove Additional Cache: clicking this button removes the selected additional cache from the list without displaying an 'Are You Sure?' dialog.
List: containing the following read-only columns:
Cache Name
Cache Provider
Selected Additional Cache Details section: this section displays details of the additional cache selected to the left. When a cache is not selected, a message advises to select one. The section exposes the following properties:
Cache name: this mandatory property must be unique within the current Realtime profile.
Cache provider: a dropdown, exposing the following values:
Redis (the default)
AzureRedis
SAPHana
Database
Memcached
Cassandra
Couchbase
MongoDB
Ncache
CosmosDB
MemoryDB Redis
Cache Provider Settings section: the contents of this section depend on the value selected at the Cache provider dropdown. All properties shown are mandatory.
If Redis:
Connection string: defaulting to the value 'localhost:6379,ssl=False'.
If AzureRedis:
Connection string: defaulting to the value 'localhost:6379,ssl=False'.
If SAPHana:
Server name: defaulting to the value 'ServerHostname'.
Schema: defaulting to the value 'SchemaName'.
User name: defaulting to the value 'User'.
Password: a password-masked field with no default value.
If Database:
Database ID: defaulting to the value '11111111-1111-1111-1111-111111111111'
If Memcached:
Section name: defaulting to the value 'memcached'
If Cassandra:
Keyspace
Contact points
Username
Password
If Couchbase:
Server name
Username
Password
Bucket Name
If MongoDB:
Server name
Port
Schema
Collection name
If NCache:
Cache ID
Server List
If CosmosDB:
Database ID
Connection String
If MemoryDB Redis:
Host
Port
SSL
Username
Password
The overlay also contains a footer, containing a single button:
OK: clicking this button saves any changes and removes the overlay from display. Note that any validation errors must be resolved before the overlay can be closed.
Realtime Plugins Settings
This tab is used to manage the Realtime plugins configured at the current RPI Realtime installation.

It consists of the following:
Realtime Plugins: consisting of a toolbar and a list
Toolbar: exposing the following options:
Add new Realtime Plugin: clicking this button adds a new Realtime profile to the list. Its default name is 'RealTimePluginName' (an incrementable integer can be appended to ensure uniqueness).
Remove Realtime Plugin: clicking this button removes the currently-selected Realtime profile. An 'Are You Sure?' dialog is not shown.
List: displays all Realtime plugins configured at the current Realtime profile. The following read-only properties are shown:
Plugin Name
Predecision: a checkbox
Selected Realtime Plugin section: when a Realtime plugin is not selected, a message advises to select on from the list to view its details. The following properties are displayed:
Realtime plugin name: mandatory.
Realtime plugin assembly: mandatory. Defaults to the string 'Assembly DLL containing plugin code'.
Realtime plugin factory: mandatory. Defaults to the string 'Custom plugin class'.
Plugin is a predecision?: this checkbox is unchecked by default. If checked, Predecision filter type and Precision Filter Contexts are shown.
Predecision filter type: accompanied by two radio buttons:
Include: selected by default
Exclude
Predecision Filter Contexts: this property is only displayed if Plugin is a predecision checked. It consists of a toolbar and a list.
Toolbar: exposing the following options:
Add new Plugin Filter: clicking this button adds a new plugin filter to the list. Its default name is 'PluginFilter' (an incrementable integer can be appended to ensure uniqueness).
Remove Plugin Filter(s): clicking this button removes the selected plugin filter contexts without displaying an 'Are You Sure?' dialog.
List: one row is present in the list by default. It contains a single updateable field:
Filter Context: provision of a value in this context is mandatory. The supplied value must be unique within the list.
Plugin Settings: this property consists of a toolbar and a list.
Toolbar: exposing the following options:
Add new Plugin Setting clicking this button adds a new plugin setting to the list. Its default Setting Key is 'RealtimePluginSetting' (an incrementable integer can be appended to ensure uniqueness), and Setting Value is 'Setting Value'.
Remove Plugin Filter(s): clicking this button removes the selected plugin settings without displaying an 'Are You Sure?' dialog.
List: one row is present in the list by default. It contains the following updateable fields:
Setting Key: provision of a value in this context is mandatory. The supplied value must be unique within the list.
Setting Value: provision of a value in this context is mandatory.
Realtime Recommendations Settings
This tab is used to manage RPI Realtime’s Recommendations settings.

It consists of the following:
Realtime Recommendations list: consisting of a toolbar and a list.
Toolbar: exposing the following options:
Add new Realtime Recommendation: clicking this button adds a new Realtime recommendation to the list. Its default name is 'RealtimeRecommendationName' (an incrementable integer can be appended to ensure uniqueness)
Remove Realtime Recommendation: clicking this button removes the currentlyselected Realtime recommendation from the list without displaying an 'Are You Sure?' dialog.
List: containing a single read-only column:
Recommendation Name
Selected Realtime Recommendation section: exposing the following properties:
Realtime recommendation name: mandatory; must be unique within the Realtime profile.
RPI client for recommendations: a dropdown field, listing all of the clients in the current RPI cluster.
Persist lookup hash?: a checkbox, which is unchecked by default.
Send response to database?: a checkbox, which is unchecked by default.
Recommendation Lookups list: consisting of a toolbar and a list.
Toolbar: exposing a single option:
Manage Lookups: clicking this button displays the Manage Recommendation Lookups overlay (see below).
List: containing a single row by default, with default values as follows: Lookup Response: 'LookupResponseName', Lookup Type: ‘Profile’. the list contains the following read-only columns:
Lookup Response
Lookup Type
The Manage Recommendation Lookups overlay contains the following:

Lookups list: consisting of a toolbar and a list.
Toolbar: exposing the following options:
Add new Recommendation Lookup: clicking this button adds a new row to list, with default values as follows:
Response Name: 'LookupResponseName'. An incrementable integer can be appended to ensure uniqueness.
Lookup Type: 'Profile'
Remove selected Recommendation Lookup: clicking this button removes the currently-selected lookup without display of an 'Are You Sure?' dialog.
List: containing the following read-only columns:
Response Name
Lookup Type
Selected Lookup section: if a lookup is not selected, a message advising to select one from the list is displayed. The section exposes the following properties:
Response name: mandatory. The property defaults to the value 'LookupResponseName'. An incrementable integer can be appended to ensure uniqueness.
Default response: an optional, multi-line property.
Lookup type: accompanied by two radio buttons:
Profile: selected by default. When selected, the Response DB parameter property is shown, and the Schema name, Table name and Refresh trigger (minutes) properties are hidden.
Table: when selected, the Schema name, Table name and Refresh trigger (minutes) are shown, and the Response DB parameter is hidden.
Response DB parameter: this property is mandatory when shown. It defaults to the value 'ResponseParameter'.
Schema name: this property is mandatory when shown. It defaults to the value 'dbo'.
Table name: this property is mandatory when shown. It defaults to the value 'Recommendation_Table'.
Refresh trigger (minutes): this integer property is mandatory when shown. It defaults to the value 10 and accepts a minimum value of 0 and a maximum value of 999,999,999.
Table Lookup Additional Fields list: consisting of a toolbar and a list.
Toolbar: exposing the following options:
Add new Additional Field: clicking this button adds new row to grid, with defaults as follows:
Database Field: 'FieldName' (an incrementable integer can be appended to ensure uniqueness).
Default Value: 'DefaultValue'
Remove selected Additional Field(s): clicking this button removes the selected rows from the grid without display of an 'Are You Sure?' dialog.
List: containing a single one row by default. The list exposes the following writeable columns:
Database Field: mandatory
Default Value: optional
Footer: exposing a single button:
OK: clicking this button saves any changes and closes the overlay. Note that you cannot close the overlay until any validation errors therein have been resolved.