Skip to main content

How To Guide PDP Server Installation Instructions for Windows

Description

This How-to guide explains the installation of the PDP Server (PDP) on Windows 10.

Notes

This guide will require information from your Estate Manager environment.

Overview

This guide will cover installing the Enactor PDP Server on Windows.

The Estate Manager must be installed and configured before you install the PDP Server.

Additionally, the following entities should be configured prior to installation: Device, and Location.

The guide does not cover the installation of any restaurant-specific devices.

Use the worksheet in this document to record the values you will need for the installation.

Prerequisites

In addition to the prerequisites required by each database server, you will need the following:

  • Minimum 10GB of free disk space

  • Network connectivity to the Estate Manager

  • Network connectivity to the PDP Server, if applicable

Deployment Models

The PDP Server is typically installed at a store location but could be installed anywhere in the estate with connectivity to the Estate Manager.

Pre-Installation

There are 3 files that are used to install the PDP Server application:

  • EnactorPDP-x.x.x-example.ini - this file should be populated the necessary configuration data for the PDP Server installation; this file will be copied to installer.ini and modified with the location and device specific values prior to running the installer.

  • EnactorPDP-x.x.x.bat - a script file that can execute the Windows installer with options.

  • EnactorPDP-x.x.x.msi - the Windows installer for the PDP Server with version x.x.x.

Create the installer.ini file

The installer requires a configuration file named installer.ini in the same directory.

To create the installer.ini file, copy the EnactorPDP-x.x.x-example.ini to installer.ini.

Edit the installer.ini file

The enactor.xml configuration file for the PDP Server is created by the installer using the data in the installer.ini file. It is essential to set the values correctly prior to install so that future updates of the application using the Application Updater will have the correct values when the PDP Server is updated.

The installer.ini file is a Windows INI file with key and value pairs identified by key=value. The file contains the necessary parameters for configuring the PDP Server during installation. This document provides instructions for populating installer.ini with the required configuration.

Modifications to installer.ini

The installer.ini file needs to be modified to meet the requirements of the device being installed. The example file that is provided with the installer contains all values that are possible for the installer. Not all values will need to be set. Use the values from the worksheet unless otherwise instructed.

Server Base URL

A Base URL can be used for service invocations from the PDP Server to the Estate Manager or other devices. Each Base URL contains a Hostname / IP address and a port.

Eg: SERVER_EMAPP_URL_BASE=http://xxx.xxx.xxx.xxx:yyyyy/ where xxx is the hostname or IP address of the server and yyyyy is the port.

Note that in a Docker Estate Manager environment, the Swarm Leader's IP address or hostname should be used for any Estate Manager URL's.

Device and Location Details

The Device Type and Device ID must match the configuration from the Estate Manager for this device. The standard model for Device IDs is pdpServer@<locationId>.<company>.

For example, pdpServer@0001.enactor is the PDP Server at Location 0001 for company Enactor. Device ID's are case sensitive so use the exact string that was used in the configuration.

The Device Type for the PDP Server is PDP_SERVER.

Location IDs will be set when configuring the Locations. The Location ID should be set for the store where the PDP Server is being installed.

Database Server

Each PDP Server requires a database. This will contain all the required configuration, plus other data such as transactions and other messages.

The database configuration will vary depending on the database server that is used, for example MariaDB or MS SQL Server. This document describes configuring the PDP Server to use a MariaDB database.

The database server has an identifier that is used by the PDP Server application to make the connection to the database. Database identifiers will look like the following:

MYSQL

A JDBC database driver is used to connect to the database server. The driver will vary depending on the database server that is used. When MariaDB is used database drivers will look like the following:

com.mysql.jdbc.Driver

The PDP Server connects to the database using a URL or connection string that includes the database server name, the database server port, and the database name. Connections strings are specific to the database server type and will look like the following:

jdbc:mysql://HOST:PORT/DATABASE?serverTimezone=UTC&defaultFetchSize=100 0&useCursorFetch=true&useLegacyDatetimeCode=false&serverTimezo ne=Europe%2FLondon&useUnicode=true&characterEncoding=UTF-8

Creation steps for a MariaDB user and database

Configuring MariaDB is described in a separate How-to Guide (How To Guide MariaDB Server - Install Instructions for Windows).

After installation open the HeidiSQL client application and run the following commands to create a User and a Database:

CREATE USER 'enactorpdp'@'localhost' IDENTIFIED BY 'En4ct0rSt0re';

CREATE DATABASE IF NOT EXISTS enactorpdp;

GRANT ALL PRIVILEGES ON enactorpdp.* TO 'enactorpdp'@'localhost';

This script will create a user with ID enactorpdp and password En4ct0rSt0re and a database named enactorpdp.

Installation Worksheet

The following information will be needed to create the installer.ini for the installation.

Note:

The Example Value column below contains example values in this document. These values will vary according to the configured environments.

Estate Manager (EM)

Note that in a Docker Estate Manager environment, the Swarm Leader's IP address or hostname should be used for these values.

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_EMAPP_URL_BASEhttp://xxx.xxx.xxx.xxx:39830Server.EMApp.URL.BaseEstate Manager application. Where xxx is the IP address or hostname of the Estate Manager.
SERVER_EMPROC_URL_BASEhttp:// xxx.xxx.xxx.xxx:39832Server.EMProc.URL.BaseEstate Manager Processing. Where xxx is the IP address or hostname of the Estate Manager.
SERVER_EMWS_URL_BASEhttp:// xxx.xxx.xxx.xxx:39833Server.EMWS.URL.BaseEstate Manager Web Services. Where xxx is the IP address or hostname of the Estate Manager.
SERVER_BP_URL_BASEhttp:// xxx.xxx.xxx.xxx:39831Server.BP.URL.BaseEstate Manager Business Process. Where xxx is the IP address or hostname of the Estate Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Store Server

If Store Servers are not being used in the estate, these parameters maybe populated with the Estate Manager values.

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_BOAPP_URL_BASEhttp:// xxx.xxx.xxx.xxx:39848Server.BOApp.URL.BaseBack Office Application.
Where xxx is the IP address or hostname of the Store Server.
SERVER_BOPROC_URL_BASEhttp:// xxx.xxx.xxx.xxx:39848Server.BOProc.URL.BaseBack Office Processing.
Where xxx is the IP address or hostname of the Store Server.
SERVER_BOREPORTS_URL_BASEhttp:// xxx.xxx.xxx.xxx:39848Server.BOReports.URL.BaseBack Office Reports.
Where xxx is the IP address or hostname of the Store Server.
SERVER_BOWS_URL_BASEhttp:// xxx.xxx.xxx.xxx:39848Server.BOWS.URL.BaseBack Office Web Services.
Where xxx is the IP address or hostname of the Store Server.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Card Authorisation

It is possible to configure multiple card authorisation servers. These configuration settings can also be used for Gift Card authorisation.

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_CARD_AUTH1_URL_BASEhttp://xxx.xxx.xxx.xxx:39856Server.CardAuth1.URL.BaseWhere xxx is the IP address or hostname of the machine where the card auth server is installed. (Usually, but not always, the Estate Manager)
SERVER_CARD_AUTH2_URL_BASEhttp://xxx.xxx.xxx.xxx:39856Server.CardAuth2.URL.BaseWhere xxx is the IP address or hostname of the machine where the card auth server is installed. (Usually, but not always, the Estate Manager)
SERVER_CARD_AUTH3_URL_BASEhttp://xxx.xxx.xxx.xxx:39856Server.CardAuth3.URL.BaseWhere xxx is the IP address or hostname of the machine where the card auth server is installed. (Usually, but not always, the Estate Manager)
SERVER_CARD_AUTH4_URL_BASEhttp://xxx.xxx.xxx.xxx:39856Server.CardAuth4.URL.BaseWhere xxx is the IP address or hostname of the machine where the card auth server is installed. (Usually, but not always, the Estate Manager).

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Database Server

Contains the necessary configuration to enable the PDP server to connect to the database.

Property .ini fileExample ValueEnactor.xml valueDescription
DATABASE_DRIVERcom.mysql.jdbc.DriverdriverNameThe driver will vary depending on the database server that is used. When MariaDB is installed, com.mysql.jdbc.Driver is specified.
DATABASE_IDENTIFIERMYSQLQueryTranslator.DatabaseIdentifierThe database server also has an identifier that is used by the application to make the connection to the database. When a MariaDB is used, MYSQL is used as the identifier.
DATABASE_PASSWORDEn4ct0rSt0reencryptedPasswordDatabase Password that the PDP Server will use.
DATABASE_SCHEMAenactorpdpCommon.DatabaseSchemaDatabase Schema name that the PDP Server will connect to.
DATABASE_URLjdbc:mysql://localhost:3306/enactorpdp?serverTimezone=UTC&defaultFetchSize=1000&useCursorFetch=true&useLegacyDatetimeCode=false&serverTimezone=Europe%2FLondon&useUnicode=true&characterEncoding=UTF-8serverNameDatabase Server URL that the PDP Server will connect to.
DATABASE_USERNAMEenactorpdpusernameDatabase Username that the PDP Server will use.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Process Connections

If the estate uses Store Servers, then StandardPosBackOfficeEstateManager should be specified. Otherwise, StandardPosEstateManager should be used (unless there is a customer-specific process connection).

Property .ini fileExample ValueEnactor.xml valueDescription
PROCESS_CONNECTION_DEFINITIONStandardPosBackOfficeEstateManagerProcessConnections.DefinitionId

Process Set

Defines the Process Set and Parent Process set that the PDP server will use.

Property .ini fileExample ValueEnactor.xml valueDescription
PROCESS_SETHTMLPosCommon.ProcessSetThis can be defined as HTMLPos if the React UI is being used on the Mobile POS.
If the React UI is NOT being used, this value should be set to NextGen unless an Enactor representative advises otherwise.
PARENT_PROCESS_SETNextGenCommon.ParentProcessSetThis should be defined as NextGen unless an Enactor representative advises otherwise.

Device and Location

Property .ini fileExample ValueEnactor.xml valueDescription
DEVICE_IDpdpServer@0001.EnactorService.DeviceID
Container.DeviceId
JMX.ApplicationId
Must match the Device ID that is configured on the Estate Manager.
DEVICE_TYPEPDP_SERVERService.DeviceTypeMust be specified as PDP_SERVER for a PDP Server installation.
LOCATION_ID0001Service.LocationIDMust match the Location ID that is configured on the Estate Manager.

SOLR

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_SOLR_URL_BASEhttp://xxx.xxx.xxx.xxx:39846/solr/Server.Solr.URL.BaseWhere xxx is the IP address or hostname of the Solr Index server. (Usually, but not always, the Estate Manager)

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Reports

Where a Store Server is installed in the same Location, the Store Server hostname or IP address should be used. Where there is no Store Server, the Estate Manager hostname or IP address should be used.

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_EMREPORTS_URL_BASEhttp://xxx.xxx.xxx.xxx:39848 - where a Store Server is being used.
http://xxx.xxx.xxx.xxx:39831 - where there is no Store Server.
Server.EMREPORT.HostServer.Reports.HostWhere xxx is the hostname or IP address of either the Store Server or Estate Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Advance Configuration

Broadcast Proxy

The PDP server can be configured to use its local Store Server (or, indeed, any other Store Server) as a download proxy for broadcasts and application updates. This parameter is optional and does not have to be used. If there are no Store Servers in the estate, this value does not need to be set.

Property .ini fileExample ValueEnactor.xml valueDescription
BROADCAST_DOWNLOAD_PROXY_URLhttp://xxx.xxx.xxx.xxx:39848/WebCore/FileDownloadServletBroadcast.DownloadProxyUrlWhere xxx is the hostname or IP address of the Store Server.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Order Parameters

If the Enactor Orders Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_ORDERtrueModules.OrderModuleDetermines whether the Orders module is enabled on the PDP server.
SERVER_OMBP_URL_BASEhttp://xxx.xxx.xxx.xxx:39834/Server.OMBP.URL.BaseWhere xxx is the IP address or hostname of the Order Manager.
SERVER_OMPROC_URL_BASEhttp://xxx.xxx.xxx.xxx:39836/Server.OMProc.URL.BaseWhere xxx is the IP address or hostname of the Order Manager.
SERVER_OMWS_URL_BASEhttp://xxx.xxx.xxx.xxx:39837/Server.OMWS.URL.BaseWhere xxx is the IP address or hostname of the Order Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Inventory Module

If the Enactor Inventory Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_INVENTORYtrueModules.InventoryModuleDetermines whether the Inventory module is enabled on the PDP server.
SERVER_IMBP_URL_BASEhttp://xxx.xxx.xxx.xxx:39842/Server.IMBP.URL.BaseWhere xxx is the IP address or hostname of the Inventory Manager.
SERVER_IMPROC_URL_BASEhttp://xxx.xxx.xxx.xxx:39844/Server.IMProc.URL.BaseWhere xxx is the IP address or hostname of the Inventory Manager.
SERVER_IMWS_URL_BASEhttp://xxx.xxx.xxx.xxx:39845/Server.IMWS.URL.BaseWhere xxx is the IP address or hostname of the Inventory Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Customer Collection Module

If the Enactor Customer Collection Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_CUSTOMER_COLLECTIONStrueModules.CustomerCollectionsModuleDetermines whether the Customer Collections module is enabled on the PDP Server.

CRM Module

If the Enactor CRM Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_CRMtrueDetermines whether the CRM module is enabled on the PDP Server.
SERVER_CMAPP_URL_BASEhttp://xxx.xxx.xxx.xxx:39838/Server.CMApp.URL.BaseWhere xxx is the IP address or hostname of the Customer Manager.
SERVER_CMPROC_URL_BASEhttp://xxx.xxx.xxx.xxx:39840/Server.CMProc.URL.BaseWhere xxx is the IP address or hostname of the Customer Manager.
SERVER_CMWS_URL_BASEhttp://xxx.xxx.xxx.xxx:39841/Server.CMWS.URL.BaseWhere xxx is the IP address or hostname of the Customer Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Repair Module

If the Enactor Repairs Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_REPAIRtrueModules.RepairModuleDetermines whether the Repair module is enabled on the PDP Server.

Time Attendance Module

If the Enactor Time & Attendance Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
MODULE_TIME_ATTENDANCEtrueModules.TimeAttendanceModuleDetermines whether the Time & Attendance module is enabled on the PDP Server.

Payments

Enactor Payments configuration:

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_TMS_URL_BASEhttp://xxx.xxx.xxx.xxx:39888/WebTerminalManager/Server.TMS.URL.BaseWhere xxx is the IP address or hostname of the Web Terminal Manager.
USE_PAYMENT_SERVICEfalseCommon.UsePaymentServiceThis parameter is mostly deprecated - only set to true on the advice of an Enactor representative.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Promotion Module

If the Enactor Promotion Manager Module is being used, the following configuration should be defined:

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_PMAPP_URL_BASEhttp://xxx.xxx.xxx.xxx:39891/Server.PMApp.URL.BaseWhere xxx is the IP address or hostname of the Promotion Manager.
SERVER_PM_URL_BASEhttp://xxx.xxx.xxx.xxx:39892/Server.PM.URL.BaseWhere xxx is the IP address or hostname of the Promotion Manager.
SERVER_PMWS_URL_BASEhttp://xxx.xxx.xxx.xxx:39890/Server.PMWS.URL.BaseWhere xxx is the IP address or hostname of the Promotion Manager.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Gift Card

If Enactor gift cards are being used, the following parameters can be set should the Gift Card Auth Server be different from the Payment Card Auth Server:

Property .ini fileExample ValueEnactor.xml valueDescription
SERVER_GIFT_CARD_AUTH1_URL_BASEhttp://xxx.xxx.xxx.xxx:39856/Server.GiftCardAuth1.URL.BaseWhere xxx is the IP address or hostname of the Gift Card Auth Server.
SERVER_GIFT_CARD_AUTH2_URL_BASEhttp://xxx.xxx.xxx.xxx:39856/Server.GiftCardAuth2.URL.BaseWhere xxx is the IP address or hostname of the Gift Card Auth Server.

Note: The ports specified above are Enactor's default values - if alternative port numbers are being used then the port numbers should be amended to reflect those being used.

Additional Parameters for the React UI

The following parameters should all be set when the React User Interface will be used on devices attached to this PDP server:

Property .ini fileValueEnactor.xml value
PDP_MESSAGE_FACTORY_CLASSNAMEcom.enactor.coreUI.web.PDP.json.messages.PDPMixedModeMessageFactoryPDPMessageFactory.ClassName
PDP_PAGE_ELEMENT_HANDLER_FACTORY_CLASSNAMEcom.enactor.coreUI.web.PDP.json.pageElementHandlers.PDPJsonPageElementHandlerFactoryPDPPageElementHandlerFactory.ClassName
PDP_PROMPT_FACTORY_CLASSNAMEcom.enactor.coreUI.web.PDP.json.PDPMixedModePromptFactoryPDPPromptFactory.ClassName
REACT_POS_CONTENT_URLReactPos/index.htmlReactPos.contentUrl
PARENT_PROCESS_SETHTMLPosCommon.ParentProcessSet
FULL_SCREENtruefullScreen

Message Service Authentication

Configuration for secure messaging.

Property .ini fileExample ValueEnactor.xml valueDescription
AUTHENTICATION_DEFAULT_PASSWORDp@55w0rdAuthentication.DefaultPassword encrypt="true"Should match the
Authentication password defined on the Estate
Manager.
AUTHENTICATION_DEFAULT_USERIDuseridAuthentication.DefaultUserIdShould match the
Authentication user defined on the Estate Manager.
MESSAGE_SERVICES_DEFAULT_AUTH_TYPEHTTP_BASICMessageServices.DefaultAuthenticationTypeDefines the security setting for service access. Available values are
NONE,
HTTP_BASIC, HTTP_TOKEN.
Default value is HTTP_BASIC.

Using values from the worksheet

The following text should be amended so the values match those in the worksheet above, then saved to an installer.ini file in the same directory as the Enactor PDP Server MSI.

; --- EXAMPLE ENACTOR INSTALLER CONFIGURATION FILE ---

; This file includes the ini file values used for configuring the
Enactor ; installer

; It is provided as a starting point for new installers, and should be
copied, edited to add settings

; appropriate for the customer and device and then managed with other
project configuration

;------General Configuration for the PDP Server

;EM Configuration

SERVER_EMAPP_URL_BASE=\${installer.serverEMAppUrlBase}

SERVER_EMPROC_URL_BASE=\${installer.serverEMProcUrlBase}

SERVER_EMWS_URL_BASE=\${installer.serverEMWSUrlBase}

SERVER_BP_URL_BASE=\${installer.serverBPUrlBase}

;Store Server Configuration

SERVER_BOAPP_URL_BASE=\${installer.serverBOAppUrlBase}

SERVER_BOPROC_URL_BASE=\${installer.serverBOProcUrlBase}

SERVER_BOREPORTS_URL_BASE=\${installer.serverBOReportsUrlBase}

SERVER_BOWS_URL_BASE=\${installer.serverBOWSUrlBase}

;Card Authorisation Configuration

SERVER_CARD_AUTH1_URL_BASE=\${installer.serverCardAuth1UrlBase}

SERVER_CARD_AUTH2_URL_BASE=\${installer.serverCardAuth2UrlBase}

SERVER_CARD_AUTH3_URL_BASE=\${installer.serverCardAuth3UrlBase}
SERVER_CARD_AUTH4_URL_BASE=\${installer.serverCardAuth4UrlBase}

;Database Configuration

DATABASE_DRIVER=com.mysql.jdbc.Driver

DATABASE_IDENTIFIER=MYSQL

DATABASE_PASSWORD=\${installer.databasePassword}

DATABASE_SCHEMA=enactorpdp

DATABASE_URL=jdbc:mysql://localhost:3306/enactorpdp?serverTimezone=UTC&defaultFetchSize=1000&u
seCursorFetch=true&useLegacyDatetimeCode=false&serverTimezone=Europe%2FLondon&useUnicode
=true&characterEncoding=UTF-8

DATABASE_USERNAME=\${installer.databaseUsername}

;Process Connection Configuration

PROCESS_CONNECTION_DEFINITION=StandardPosBackOfficeEstateManager

;Process Set Configuration

PROCESS_SET=HTMLPos

PARENT_PROCESS_SET=NextGen

;Device and Location Configuration

DEVICE_ID=\${installer.deviceId}

DEVICE_TYPE=PDP_SERVER

LOCATION_ID=\${installer.locationId}

;SOLR configuration

SERVER_SOLR_URL_BASE=\${installer.serverSolrUrlBase}

;Report Configuration

SERVER_EMREPORTS_URL_BASE=\${installer.ReportsUrlBase}

;Broadcast Proxy Configuration
BROADCAST_DOWNLOAD_PROXY_URL=http://xxx.xxx.xxx.xxx:39848/WebCore/FileDownloadServlet

;Order Module configuration

MODULE_ORDER=\${installer.modulesOrder}

SERVER_OMBP_URL_BASE=\${installer.serverOMBPUrlBase}

SERVER_OMPROC_URL_BASE=\${installer.serverOMProcUrlBase}

SERVER_OMWS_URL_BASE=\${installer.serverOMWSUrlBase}

;Inventory Module configuration

MODULE_INVENTORY=\${installer.modulesInventory}

SERVER_IMBP_URL_BASE=\${installer.serverIMBPUrlBase}

SERVER_IMPROC_URL_BASE=\${installer.serverIMProcUrlBase}

SERVER_IMWS_URL_BASE=\${installer.serverIMWSUrlBase}

;Customer Collection Module

MODULE_CUSTOMER_COLLECTIONS=false

;CRM Configuration

MODULE_CRM=false

SERVER_CMAPP_URL_BASE=\${installer.serverCMAppUrlBase}

SERVER_CMPROC_URL_BASE=\${installer.serverCMProcUrlBase}

SERVER_CMWS_URL_BASE={installer.serverCMWSUrlBase}

;Repair Module Configuration

MODULE_REPAIR=false

;Time & Attendance Module Configuration

MODULE_TIME_ATTENDANCE=\${installer.modulesTimeAttendance}

;Payment Module Configuration

SERVER_TMS_URL_BASE=\${installer.serverTMSUrlBase}

USE_PAYMENT_SERVICE=false

;Promotion Module Configuration

SERVER_PMAPP_URL_BASE=\${installer.serverPMAppUrlBase}

SERVER_PM_URL_BASE=\${installer.serverPMUrlBase}

SERVER_PMWS_URL_BASE=\${installer.serverPMWSUrlBase}

;Gift Card Configuration

SERVER_GIFT_CARD_AUTH1_URL_BASE=\${installer.serverGiftCardAuth1UrlBase}
SERVER_GIFT_CARD_AUTH2_URL_BASE=\${installer.serverGiftCardAuth2UrlBase}

;React UI Configuration

PDP_MESSAGE_FACTORY_CLASSNAME=com.enactor.coreUI.web.PDP.json.messages.PDPMixedModeMessageFactory
PDP_PAGE_ELEMENT_HANDLER_FACTORY_CLASSNAME=com.enactor.coreUI.web.PDP.json.pageElementHandlers.PD
PJsonPageElementHandlerFactory

PDP_PROMPT_FACTORY_CLASSNAME=com.enactor.coreUI.web.PDP.json.PDPMixedModePromptFactory

REACT_POS_CONTENT_URL=HTMLPos/index.html

PARENT_PROCESS_SET=HTMLPos

FULL_SCREEN=true

;Message Service Authentication Configuration

AUTHENTICATION_DEFAULT_PASSWORD=\${installer.AUTHENTICATIONDEFAULTPASSWORD}

AUTHENTICATION_DEFAULT_USERID=\${installer.AUTHENTICATIONDEFAULTUSERID}

MESSAGE_SERVICES_DEFAULT_AUTH_TYPE=\${installer.MESSAGESERVICESDEFAULTAUTHTYPE}

Installing the PDP Server

Once the installer.ini file has been defined, the installation can proceed.

Manual Installation

Ensure the provided MSI and the installer.ini file are in the same folder. Double click on the MSI file.

Choose Next.

The installation location can be amended here.

Choose Next.

Choose Install.

If User Account Control is enabled, the following prompt will be displayed:

Choose Yes.

Installation will proceed.

Choose Finish.

The PDP Server is installed. Following this, the Enactor services will start and begin creating the necessary database tables.

Scripted Installation

The PDP Server can be installed without using the UI from the command line.

The PDP Server MSI can be installed using the msiexec command - further information about using msiexec can be found at the following link:

https://learn.microsoft.com/en-us/windows/win32/msi/command-line-options

Broadcasting Data

Once the PDP Server installation completes, the application will connect to the Estate Manager, Store Server (if applicable) and subscribe to various message queues.

Once the subscriptions have completed, configuration and other data should be broadcast from the Estate Manager to the PDP Server. (Enactor reference configuration contains two broadcasts that can be used for this purpose - New Build All Static Data and New Build All Product Data). Once these broadcasts have completed, the Enactor PDP Server Windows services should be restarted.

Uninstalling the PDP Server

The simplest way to uninstall the PDP Server is via Windows Control Panel.

Alternatively, it can be uninstalled via the command line using the msiexec application.