Skip to main content

xSuite Interface Windows Prism 5.x – Online Help

Status Web Service

The Status Web Service implements the back-end services that are primarily intended for use by the Status Monitor.

The back-end services can also be called by any external application that requires status information for xSuite Interface processing.

Notice

A more detailed description of the status endpoints is not included in this documentation.

The integration of an external application must be coordinated and implemented on a project-specific basis.

Use of the Status Monitor requires activation of the Status Web Service and the delivery of static web files (property WebService.Web­Root­Folder). When the necessary access rights are set (property StatusService.AllowUser), the application can be called via the following URL:

{base address}/{base path}/Status

The StatusService.LiveInfo sub-object contains configuration properties that are used to view runtime information of the active worker instances in real time in the status monitor. This includes the current log outputs of the workers and information on the current status of the workers. If there are multiple active program instances, the outputs of all instances are collected centrally in the instance that is running the Status Web Service. Data is transferred directly via the network in the form of UDP packets.

The live information transmitted via UDP can be used to display additional running program instances on the homepage. This allows information from program instances running on another server to be displayed that cannot be identified based on the locally running processes. Such a configuration exists, for example, when xSuite Interface runs in the xSuite Cloud across multiple Docker containers that behave like separate servers.

Property

Description

StatusService.Activate

Boolean value enabling or disabling the Status Web Service

Default value: TRUE

StatusService.Tenant[]

Specification of the names of the tenants that are displayed in an instance of the Status Monitor (optional)

By default, all tenants will be implicitly used that are active as per the Worker[].Tenant configuration.

This configuration property must be set if no workers are assigned to the relevant program instance (e.g., because this instance is exclusively responsible for operating the Status Web Service). It must also be set if you are working with tenants other than just the default tenant "Default" at the same time.

StatusService.AllowUser[]

Definition of user rights to call the Status Web Service

Each entry is composed of the following individual parameters:

  1. Name*: name of the relevant user (syntax: see WebService.AuthMode)

  2. Rights: user permissions

  3. Tenant: tenant for which the entry is valid

Permissions (Rights) consist of a composite string with the following possible values:

  • R (Read): for displaying data

  • E (Edit): for editing data

  • D (Delete): for deleting data

  • J (JSON): for displaying internal JSON data

If no restrictive rights are defined in an entry, the user will implicitly receive all rights. If no user rights are defined at all, every user will receive full access, but as soon as rights are defined, only users explicitly listed there will have access.

If the Tenant parameter is specified in an entry, set permissions will apply only to this tenant. Thus, several entries can be made for a single user, each with a different tenant.

StatusService.AllowGroup[]

Definition of the rights of user groups to call the Status Web Service

This property is only relevant if Windows authentication is activated, as only groups from a Windows Active Directory are supported. Specify the group name as the first parameter in the syntax domain\group name.

StatusService.LiveInfo.UdpAddress(*)

Address of the UDP service for receiving live information

Syntax: {Host}:{Port}

This configuration property is relevant for the program instances that send and receive. From the recipient's point of view, the host is the IP address on which UDP packets are to be received. An asterisk (*) can be specified to represent all addresses that are bound to the server. From the sender's point of view, a specific IP address or the server name of the recipient must be specified. The UDP service runs in parallel to the normal web services. Therefore, when choosing a port, take a different one than that which is configured for the recipient under Webservice.Url[].

A program instance serves as a receiver if a UDP address is configured and the Status Web Service is activated at the same time (propertyStatusService.Activate). If only a UDP address is specified and the Status Web Service is not activated, the UDP address is used as the receiver address and the instance works as a sender. The receiver itself does not send its own live information via UDP, but transfers it internally within the program.

StatusService.LiveInfo.StatusServiceUrl

URL of the Status Web Service for the encryption of UDP data

Syntax: {base address}/{base path}

As a protocol, UDP does not support direct encryption of data. Encryption takes place at the application level. Each sender generates a new key for symmetric AES encryption once a minute. The sender transmits the key in advance to the receiver for decryption. The key is transferred to the recipient's Status Web Service, which should be secured using TLS. The URL of this Status Web Service must be specified on the sender side in the StatusServiceUrl property.

This property is not relevant in receiver-side configuration. If this property is not set for the sender, there will not be any key transmission. As a result, unencrypted UDP data will be sent.

StatusService.LiveInfo.ProcessName

Display name for the current program instance in the live information view of the Status Monitor (optional)

A generically generated name is used by default. A descriptive name can also be defined for the worker instances of a process, for which the Worker[].Name property in the global configuration is intended.

StatusService.LiveInfo.ViewWorkers

Boolean value determining whether information about the current state of the individual worker instances will be displayed in the Status Monitor

If the program is separated into multiple program instances for configuration purposes, this property must have the value true in all instances. This property serves as an indicator for the instance that executes the Status Web Service. If the property has the value "true," the data will be displayed. For the other instances, the property serves as an indicator that the data is to be transmitted.

Default value: TRUE