Teletext | Version 3

Teletext Generator

The Teletext Generator is a separate application which is connected to the Sophora Server. It is able to render the teletext content of Sophora documents according to the teletext specification. The application will generate and transfer teletext content to third party services upon changes to the managed sophora documents. It will also provide a teletext preview that can be integrated into the Sophora DeskClient.

Archived documentation for Sophora 3. End-of-support date for this version: 7/25/21

Documentation for Sophora 4

The Teletext Generator is a Spring Boot application to generate and preview teletext pages.

Preconditions: Sophora Server and Repository Configuration

The Teletext Generator requires a Sophora Server with a repository where special teletext nodetypes are configured.

See node types and configuration.

Customizing

The Teletext Generator can be customized using a Plugin API.

If a custom plugin is implemented, it has to be packaged as a Java Archive file (.jar) which will then be installed alongside the main application.

See Plugin API.

Installation and Configuration

The application is distributed as an executable Spring Boot jar file.

Installation

  1. Unpack the teletext-generator-X.X.XX-bin.tar.gz.
  2. Create /var/run/teletext-generator and /var/log/teletext-generator directories.
  3. Adjust application.yml if needed.
  4. Create a lib directory within the directory that contains the executable teletext-generator jar, and put the teletext plugin jar there.

Application Properties

To configure the application, an application.yml file has to be placed in the same directory as the jar file. An example file is included in the packaging.

.conf File

A .conf file is recommended to manage the location of the applications PID-file and logs. The file must be named just like the jar but with the .conf postfix instead of .jar. For a complete reference of configuration options in the .conf file, see the Spring Boot documentation.

Please make sure to create the configured folders for PID and logs as configured in the .conf file. It is recommended to create a folder in /var/run/ (for PID) and /var/log/ (for logs), both named like the jar file (without postfix).

There is an example .conf file included in the package.

Setting JVM Arguments

JVM arguments may be specified in the above mentioned .conf file.

Logging

Logging can be configured via application.yml or by placing a logback.xml in the config directory. Please refer to the Spring Boot documentation for further reference.

Adding a Teletext-Generator Plugin

By default, a customer-specific teletext plugin must be placed into the lib directory within the directory that contains the executable Teletext Generator jar. The directory can be customized in the loader.properties.

The base Java package of the plugin needs to be specified in the pluginPackages property in application.yml.

If the plugin is depending on libraries which are not shipped with the core Teletext Generator application, the jar files of these libraries may be put into the lib directory as well. As these jar files end up in the core classpath of the Teletext Generator, refrain from adding differing versions of libraries already provided by the Teletext Generator.

You can verify that a plugin was loaded in the log output during the startup of the Teletext Generator ("Picked up plugin-provider bean of type 'PluginClassName'.").

Launching the Application

Since the jar is executable (contains an embedded launch script), it may simply be launched like this:

$ ./teletext-generator.jar start

Also, the application may be registered as an init.d or systemd service. See the Spring Boot documentation for further details on this.

The running Teletext Exporter provides different HTTP endpoints at the port configured in the application.yml file. For instance, the preview for teletext documents could be at http://localhost:8082/preview?sophoraId=test100.

Last modified on 9/7/22

The content of this page is licensed under the CC BY 4.0 License. Code samples are licensed under the MIT License.

Icon