Automatic Chat Translation

The xAssist chat functionality has a feature that automatically converts all incoming messages sent in another language, into a user's preferred language choice.

To set up the Auto-Translation of messages, the following configurations are required:

xserver.translation.service.url=https://api.cognitive.microsofttranslator.com/
xserver.translation.service.key
xserver.translation.service.region=westeurope
xserver.translation.connecttimeout=10s
xserver.translation.readtimeout=10s


Necessary permission should already be present in the default xAssist role:

xa_icall_chat_translate-chat-messages

Email Configuration

Set-Up Email Functions

This section describes how to enable email features in on-premise installations.

Setup Email

By default, Frontline offers multiple features that are based on email. As a result, an email server needs to be configured. Enable email functions with these settings:

spring.mail.host=smtp.example.com
spring.mail.port=587
spring.mail.username=<username>
spring.mail.password=<password>
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.connectiontimeout=5000
spring.mail.properties.mail.smtp.timeout=5000
spring.mail.properties.mail.smtp.writetimeout=5000

xserver.email.notifications.enabled=true

xserver.sendgrid.enabled=false


E-mail needs to be entered here (Instead of <>):

spring.mail.username=<username>
spring.mail.password=<password>

Make sure that the configured email is allowed to be used in other applications.

Using SendGrid

Instead of connecting to an email server, it is also possible to use the third-party service SendGrid. For this please use the properties below:

xserver.email.notifications.enabled=false
xserver.sendgrid.enabled=true
xserver.sendgrid.apikey=<apikey>
xserver.mail.from=<frommail>
xserver.sendgridservice.mail.from.name=<companyname>

Azure Speech To Text

Note: The following instructions are meant for on-premise installations only. For TeamViewer cloud installations, please contact your Customer Success Representative.

Note: In order to enable the speech-to-text functionality, an Azure account with speech services is required. To learn more about Azure Services and to purchase your Service Key, please follow this link.

Configure the subscription key and region in the xserver.properties:

xserver.speech.azure.enabled=true
xserver.speech.azure.version=2
xserver.speech.azure.subscription-key=[your key]
xserver.speech.azure.service-region=[your region]

For newer installations use:

fcc.speech.azure.subscription-key=[your key]
fcc.speech.azure.subscription-region=[your region]

Restart Frontline Command Center. The logs file is updated with the following:

[main] INFO  d.u.x.s.s.s.AzureSpeechToTextHandlerV2 - Starting Azure Speech Version 2. Service enabled?: true

OCR

The Optical Character Recognition (OCR) component converts text from an image into text. The OCR component can be set up with the following configuration:

xserver.ocr.service.url=https://westeurope.api.cognitive.microsoft.com/
xserver.ocr.service.key
xserver.ocr.detect.orientation=true
xserver.ocr.service.connect.timeout=5s
xserver.ocr.service.read.timeout=10s

Note: In order to enable the OCR functionality, an Azure account with cognitive services is required. To learn more about Azure Cognitive Services and to purchase your Service Key, please follow this link.

JMX configuration

JMX Configuration Set Up

This section describes how to set up JMX for On-Premise installations.

Default JMX Setup

When setting up JMX, visualization tools such as VisualVM and JConsole can be used to monitor the system performance of Frontline Command Center.

To set up JMX, navigate to FRONTLINE_HOME directory and editfrontline.xml.

Modify the arguments to the following:

<arguments>-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="%BASE%" -Xms1024m -Xmx1024m -Dfile.encoding=UTF-8 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=XXXX -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar "%BASE%\frontline.jar"</arguments>

Restart the service to connect via JConsole.

Configuration

Default to enable JMX

-Dcom.sun.management.jmxremote

Set the port to access JMX

-Dcom.sun.management.jmxremote.port=XXXX

Enable or disable SSL configuration

-Dcom.sun.management.jmxremote.ssl=false

Enable or disable authentication of accessing JMX

-Dcom.sun.management.jmxremote.authenticate=false

Authentication

This section describes how to configure the authentication of users. Create a jmxremote.password file with the content:

monitorRole  QED
controlRole   R&D

Create another file jmxremote.accesswith:

monitorRole   readonly
controlRole   readwrite

Change the access tojmxremote.password and jmxremote.access file with these commands:

cacls jmxremote.password /P “your_username”:R
cacls jmxremote.access /P “your_username”:R

Change your_username to a preferred user the service will start with. Then add the paths inside frontline.xml:

-Dcom.sun.management.jmxremote.access.file=path_to\jmxremote.access 
-Dcom.sun.management.jmxremote.password.file= path_to\jmxremote.password 

Set a User for the Frontline Service by opening the properties file. Set the User to one that has access to the jmxremote.password file.

SSL

SSL is required to use xAssist. Without SSL all modern browsers will not be able to access the microphone and the webcam.

To enable SSL, four properties need to be configured:

server.ssl.enabled=true
server.ssl.key-store=/Path/to/my/certificates/server.ks
server.ssl.key-store-password=key-store-password
server.ssl.key-password=key-password
  1. Set server.ssl.enabled to true
  2. Set the path to Keystore in the property server.ssl.key-store
  3. Fill in the passwords into the properties server.ssl.key-store-passwordand server.ssl.key-password
  4. After configuring the SSL, change the server port from 80 to 443, which is the standard SSL port. This can be done by configuration.
server.port=443

Since the port and the protocol changed, update the external URLs:

xserver.url.external.http=https://an.example.com:443/
xserver.url.external.mqtt=wss://an.example.com:443/mqtt/

Easy to Overlook

Make sure to use HTTPS and WSS instead of HTTP and WS.

Restart the service to apply the new configurations.

MariaDB

In order to use MariaDB, the following configurations are required:

xserver.db.url=jdbc:mysql://${db.url}/${db.database}
xserver.db.user= ${db.username}
xserver.db.password= ${db.password}
spring.jpa.properties.hibernate.dialect=de.ubimax.xserver.util.ImprovedMariaDBDialect

Replace the placeholders marked with a "$" with their real values.

Microsoft SQL Server

Frontline Command Center supports Microsoft SQL Server databases. To set up an SQL database, the following configurations are required:

xserver.db.url=jdbc:sqlserver://${db.url};databaseName=${db.database}
xserver.db.user= ${db.username}
xserver.db.password= ${db.password}
xserver.db.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.properties.hibernate.dialect=de.ubimax.xserver.util.ImprovedSQLServer2012Dialect
spring.jpa.properties.hibernate.physical_naming_strategy=de.ubimax.xserver.util.UbimaxMSSqlNamingSchema
spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.hibernate.naming-strategy=de.ubimax.xserver.util.UbimaxMSSqlNamingSchema
spring.flyway.locations=classpath:db/migration/SQLServer

To use MS SQL with Active Directory, replace the placeholders with their corresponding values, as shown in the example below.

Replace this command:

xserver.db.url=jdbc:sqlserver://${db.url};databaseName=${db.database}
xserver.db.user= ${db.username}
xserver.db.password= ${db.password}


With this command:

xserver.db.url=jdbc:sqlserver://${db.url};databaseName=${db.database};integratedSecurity=true;trustServerCertificate=true;
xserver.db.user= 1234
xserver.db.password= 1234