Skip to main content

How to Configure Enactor Services Status Details

Introduction

In the Enactor application, numerous application types are intricately interconnected, facilitating real-time communication and data transmissions. These applications may deploy across diverse hardware and across different locations. Seamless communication among these applications is the pivotal element ensuring the smooth flow of the overall Enactor system. The major key factor that helps these communications across all applications is the Enactor Web Services. This document will outline the different types of services which are used across the Enactor System and how these services are useful in day-to-day activities.

Most Enactor Retail Web Services are implemented based on Simple Object Access Protocol (SOAP) and Hypertext Transfer Protocol (HTTP), and some use JavaScript Object Notation (JSON) over HTTP.

Not all services within the applications need to be actively running at all times. Some of these services can be toggled off to align with the specific requirements of the end user. This document will provide an in-depth explanation of these services, their purpose, and how end users can manage them to meet their needs by utilizing various available maintenance options in the Estate Manger application.

Overview

The following common configurations should be applied in order to maintain the Services in the Enactor Application.

  • Service Types Maintenance – Service types are generated by pinpointing the fundamental components of the application's functionality that will operate as background services, taking into account the available runtime contexts within the application.

  • Service Definition Maintenance – In the Service Definition Maintenance is used to configure the service types according to the device, the region or optionally the Cluster nodes in which the service types are associated. The service definitions are configured according to the service types which are already configured in the system. Configuring the background service to AutoStart while the device services are started will be done using the Service Definition Maintenance.

  • Service Status Maintenance – This maintenance is used to manage the services that are been configured and each Background Service is listed by name with an indication of Status and Current Activity. The page is dynamic and updates periodically to reflect changes in status

Configuration Steps

Service Type

Service types are established by identifying essential elements of the application function to operate as background services, considering the available application runtime contexts. The Service Type Maintenance page, shown below lists the configured Service Types. These Service Types are defined according to an Implementation, which could be a built-in or custom Class or Process.

Navigate to Service Type Configuration using the search or the path

The "Service Type" property designates an interface that outlines the properties expected by the Implementation within the Service Definition passed to it during execution. In most cases, except for a few of the Builtin Implementations, the expected interface is of type "serviceDefinition."

For Service Type values other than ServiceDefinition this property Identifies further configuration details required (subject to Environmental Context) by the Implementation and passed to the implementation when the Service is started. This configuration must be provided in the Service Definition and these details are usually captured in an additional Service Definition Maintenance Tab. Thus, additional configuration requirements for bespoke implementations can only be accommodated by also customising the Service Definition Maintenance page.

Service Definition

The ServiceDefinition configuration specifies the Device Type, Region and optionally also a Cluster Node in which an associated Service Type should execute. A software implementation identified by a Service Type may be applied in different Device Type contexts (i.e. the same service function identified by the Service Type may be made used by different Service Device Types). The Background Service Implementation of a Service Definition is prescribed by the Service Type that underpins it. The ServiceDefinition configuration also specifies whether the Background Service should autostart when the Device Services are started.

Navigate to Service Definition Configuration using the search or the path

Service Status

The Service Status Maintenance feature offers continuous monitoring capabilities for the list of background Services deployed on physical machines. In this maintenance, there will be a list of services along with their current active status. This information is updated in real-time, allowing to track the ongoing activities associated with these services. Essentially, Service Status Maintenance serves as a comprehensive dashboard providing relevant information about the services.

Navigate to Service Status Maintenance using the search or the path

As a feature of the is maintenance, it allows control of the services using the stop(),start (), pause (![](media/image12.png)) or resume () selected services using the relevant Icon. Options are also present in the page collectively to Stop all services or Start all auto-start services().

Following are the properties which are been focused on this maintenance,

ConfigurationDescription
ApplicationThe Web Server which the background service deployed on
StatusThe Current status of the service
NameBackground Service Name
Current ActivityBackground Service Current Activity

Service List and Functions

The following section will elaborate on the basic services that are needed to the Enactor Application and which can be monitored by the service type maintenance,

Account Balance Update Monitor

This service is Used to update account balances of accounts such as CustomerLoyaltyAccount, CustomerDepositAccount, CustomerCreditAccount, EmployeeAccount, etc. following are the default configuration of this service

Alert Dispatcher

Controls the sending/dispatching of Alerts from the Estate Manager. following are the default configuration of this service

Alert Monitor

Controls the receiving of Alerts to the Estate Manager by monitoring the Estate Manager logs for Alert configured messages.

BP Activity Deadline Controller

Used to monitor expired BP tasks and move the BP on when it encounters such expired tasks.

Broadcast Status Monitor

Updates the Broadcast Status of the Estate Manager.

Business Process Event Handler

Monitors events and then triggers a BP to respond to that event.

Business Process In Processor

Monitor a queue and they will create or move on the BP depending on the message on the queue.

Business Process Results Processor

When a BP task is run as scheduled job and the result is put on a queue and this service is used to read that particular queue and move on the BP appropriately.

Campaign Runner

Campaign Runner service picks the campaigns that are in the "Pending Activation" or "Pending Re-Activation" state and initiate the configured business process for each campaign item.

Card Authorisation Server

When doing card authorisation, card authorisation server (or the Payment Gateway) looks up for an acquirer connection for the obtained acquirer. It will also check if that acquirer connection is available under AuthorisationServerConfig. If found, it will lookup for the corresponding ip addresses in the PaymentModule/PaymentModuleAuthorisationConfig.xml.
Uses Enactor Web Card Authorisation Runtime Context.

Card Authorisation Server WRP

When doing card authorisation, card authorisation server (or the Payment Gateway) looks up for an acquirer connection for the obtained acquirer. It will also check if that acquirer connection is available under AuthorisationServerConfig. If found, it will lookup for the corresponding ip addresses in the PaymentModule/PaymentModuleAuthorisationConfig.xml.
Uses Web Retail Processing Runtime Context.

CardAuthorisation - Card Identity Token Service

Submits the tokens written to the OutboundCardIdentityTokens queue to a process named ProcessOutboundCardIdentityToken. The ProcessOutboundCardIdentityToken process will call the corresponding endpoint in the payment portal using the InvokeRestServiceAction. The process will then wait for the response (with a timeout) and return the response with a SUCCESS outcome in successful scenarios. Otherwise, FAIL or RETRY will be returned as outcome.

Cash Management Transaction Processing

Multi threaded Cash Management Transaction Processing where the processing of Cash Management session totals in the EM is done here.

Cash Management Transaction Processing (Single Threaded)

Not required if "Cash Management Transaction Processing" is already running. This process runs as a single thread. May run this is there are problems with Multi threaded service.

Customer Manager Document Processor

Takes incoming CRM transactions to the EM and processes them.

Configured Process Service

A Configured Process Service allows to turn one or more Application Process into a background service.

CRM Document Processor

Takes incoming CRM transactions to the EM and processes them.

CRM Email Message Event Processor

Processes email based events and as a result records these email contact history against a customer.

Diary Entry Runner

Creates scheduled jobs which are processes run by the scheduled job background service.

Diary Entry Runner – Orders

Creates scheduled jobs for Order Management processes which are then run by the scheduled job background service.

Document Processor

Takes incoming retail transactions to the EM and processes them.

EM CM Transactions To Secondary CM Queue Consumer

This service listens to the CM transactions and then copies them to the Secondary CM Transaction tables.

EM Business Process Deadline Controller

Used to monitor expired BP tasks and move the BP on when it encounters such expired tasks.

EM Inventory Process Invoke Request Consumer

Queue Consumer to process Inventory BP requests.

EM Process Invoke Results Consumer

Queue Consumer to process messages from BP results.

EM Report Definition Queue Consumer

Queue Consumer to deploy report definitions.

EM Retail Process Invoke Request Consumer

Queue Consumer to process retail BP requests.

EM System Events To Secondary SE Queue Consumer

This service listens to the System Events and then copies them down to the Secondary System Events tables.

EM System Resource Monitor

This is a service used to monitor the disk capacity and memory of the devices within the Enactor estate. For example it is possible to monitor the disk and memory available on the Estate Manager server.

EM Task Activation Service

This loads batches of tasks to be activated and submits them to the Task Activation Controller.

EM Transaction To RJ Queue Consumer

Required for getting the EM transactions to the RJ exporting process.

EM Transaction To SecondaryRTA Queue Consumer

It's a service which keeps a table populated called SecondaryRetailTxArchives with copies of retail transactions as they are populated into the main RetailTransactionArchive table.

Email Internal Router

Routes the email internally via the application.

Email Receiver

Receiving of emails to the EM.

Email Sender

Sending emails from the EM.

Estate Manager Document Extractor

The service fires a job that connects to the RJ EM database to extract retail baskets from the RJ database. The job extracts the data from the RJ "DocsIn" database table in RJ format xml.The data is then transformed into enactor format basket xml and written into the enactor "InboundDocuments" table where it is processed via transaction processing.

Estate Manager Document Processor

Takes incoming retail transactions to the EM and processes them.

Estate Manager Message Extractor

Reads messages from RJ and then sends them in to Enactor Inbound Documents.

EstateMonitor

Runs the processes of the Estate Monitor maintenance of the EM.

File Business Process Launcher

This is used to initiate BP based on importing files in the File System.

File Document Importer

This is used to feed enactor basket/transaction xml into inbound documents.

Human Task Activation Controller

Monitors human tasks that contain an activation delay and starts the human task when that delay has been reached.

HTTP File Download Service

This is a managed service and does not have a service definition. After a restart you may not see this service running until there has been download request.

Index Update Scheduler

Create a new scheduled job to create a new Index.

Product Search Solr Base Index Incremental Update is for incrementally updating the indexes Product data only.

Product Search Solr All Indexes Incremental Update is for incrementally updating the indexes of both Product and all supporting data.

Product Search Solr Indexes Rebuild will start building the indexes again from scratch, replacing all existing indexes

Inventory Document Processor

Takes incoming inventory transactions to the EM and processes them.

Inventory Business Process Jobs Processor

Queue Consumer to process Inventory BP requests.

Key Date Processor

Part of CRM. Monitors Key Dates and triggers processes based on those configured Key Dates of Customers.

Message Service HTTP Listener

Writes documents to inbound documents queue or messages to other queues.

Offline Transaction Resolver

Used to remove p2pe encrypted data from transactional basket and replace with token from payment gateway. Only applies to transactions that do not have a token for p2pe data i.e. Offline transactions.

Order Manager Document Processor

Takes incoming order management transactions to the EM and processes them.

Order Manager Jobs Processor

Queue Consumer to process Order Manager BP requests.

Payment Service Notifications Resolver

Listens for notifications from Adyen and updates Enactor transactions as appropriate.

Queue Consumer Service - Core

Processes responses from other machines in the Estate and is part of the BP engine.

Queue Consumer Service - CMTransactionsToSecondaryCMTransactions

This service listens to the CM transactions and then copies them to the Secondary CM Transaction tables.

Queue Consumer Service - Inventory Server

Receives instructions from the BP engine to execute server processes on the Inventory System.

Queue Consumer Service - Reconciliation Data

This service is used to receive sales figures from the POS up to the EM and it is then recorded in the EM.

Queue Consumer Service - Retail Server

Receives instructions from the BP engine to execute server processes on the Retail System.

Queue Consumer Service - Save Card Identity Token Service

Store the provided CardIdentityToken asynchronously through a local DB queue. A queue consumer will read from that queue and invoke payment portal services to store the token in the background.

Queue Consumer Service – SystemEventsToSecondarySystemEvents

This service listens to the System Events and then copies them down to the Secondary System Events tables.

Queue Consumer Service – TransactionToRJ

This service is used to send transactions to RJ from the EM.

Queue Consumer Service-TransformedRT

Used to transform transactions flowing out of the EM to the File System based on the TransformRetailTransactionToFile transform. Once this has been transformed it is then written to ${Common.ApplicationDataHome}/Exports/TransformedRetailTransactions.

QueueConsumerService-ReportDefinitionDeployment

This is used to send the definitions of the reports around the Estate.

QueueConsumerService-TransactionToSecondaryRTA

This service listens to the Transactions and then writes them down to the Secondary Retail Transaction Archive table.

Received Transactions Monitor

This application allows the monitoring of transaction numbers received at the Estate Manager from each device in the estate. It enables missing transactions to be identified and can be filtered by date and source. Received Transaction Number Status Viewer application on the Estate Manager is used to view this.

Reconciliation Data Receiver

Receives the tender figures from the POS.

ReconciliationDataProcessor

Processes the POS tender figures to produce the values for the EM.

RestaurantTxProxyMessageProcessor

This service relates to the Hospitality Consumer Application that currently runs on iOS. Processes the messages sent from the Consumer Application SaaS server to the EM.

RestaurantTxUpdatesProcessor

This service relates to the Hospitality Consumer Application that currently runs on iOS. Processes the messages sent from the EM to the Consumer Application SaaS server.

Retail Business Process Jobs Processor

Queue Consumer to process Retail BP requests.

RMI Process Service Manager

Allows the running of remote application processes.

RMI Remote Web Service Manager

Allows the remote running of Web Services.

Scheduled Job Process

Manages all the scheduled jobs that are run for the runtime context of Enactor Web Retail Processing such as DataBroadcastProcessor, ProcessBroadcastNotifications, Export Entity, Collate Location, Set Item Prices, UpdateIndexJob, etc.

Scheduled Job Process – Core

Manages all of the scheduled jobs that are run for the runtime context of Enactor Web Core such as AwaitItemsAvailable, AwaitItemsAvailable, AwaitItemsSubmitted, etc.

Scheduled Job Process - Orders

Manages all the scheduled jobs that are run for the runtime context of Enactor Web Order Processing such as Initiate Fulfilment, Fulfil Items, Send Order Confirmation, Set Order In Progress, Order Submitted, etc.

Scheduled Report Job Process

Manages all of the scheduled jobs that are run for the runtime context of Enactor Web Reports such as the GenerateReportJob.

Sequence Number Status Monitor

Used by the EM to work out the missing sequence numbers.

Sequence Number Status Monitor V2

Used by the EM to work out the missing sequence numbers. This has a different implementation than V1 and it is not being used currently.

Server Queue Connector

Used for general messaging. As part of the messaging system that allows to copy messages to and from local and remote queues.

Server Queue Connector - Core

Queues that are related to Core and are required for Business Processes.

Server Scheduled Report Job Process

Manages all of the scheduled jobs that are run for the runtime context of Enactor Web Reports such as the GenerateReportJob.

Stock Levels File Importer

Enables the importing of CSV files to adjust inventory levels in the EM.

System Resource Monitor

This is a service used to monitor the disk capacity and memory of the devices within the Enactor estate. For example it is possible to monitor the disk and memory available on the Estate Manager server.

Task Activation Service

This loads batches of tasks to be activated and submits them to the Task Activation Controller.

Update Service

Used to update the status of the existing services.
Voucher Document Processor

Takes incoming voucher transactions to the EM and processes them.

XML File Importer

Monitors the directories on the File system and imports any new files that are added to that directory.

Following are more details of this service:

  • Service type = XMLFileImporter

  • Source = /imports/XMLImports

  • No operational role defined

XML File Importer Employee

Monitors the Employee folder in the File system and imports any new employee files that are added to that directory.
Name needs to match the service type in the service definition.

XML File Importer Organisation

Monitors the Organisation folder in the File system and imports any new organisation files that are added to that directory.

Name needs to match the service type in the service definition.

XML File Importer Price

Monitors the Price folder in the File system and imports any new price files that are added to that directory.

Name needs to match the service type in the service definition.

XML File Importer Product

Monitors the Product folder in the File system and imports any new product files that are added to that directory.
Name needs to match the service type in the service definition.

XML File Importer Product Other

Monitors the Product Other folder in the File system and imports any new product other files that are added to that directory.

Name needs to match the service type in the service definition.

XML File Importer Selling Code

Monitors the Selling Code folder in the File system and imports any new selling code files that are added to that directory.
Name needs to match the service type in the service definition.

XML File Importer Users

Monitors the Users folder in the File system and imports any new user files that are added to that directory.
Name needs to match the service type in the service definition.