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 () 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,
Configuration | Description |
---|---|
Application | The Web Server which the background service deployed on |
Status | The Current status of the service |
Name | Background Service Name |
Current Activity | Background 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.