KCM components

This section lists all KCM components and describes their purpose.

A base KCM installation consists of one or more KCM instances, a Contract Manager, and KCM Control Center.

KCM Instance

A KCM instance handles document processing for a particular partner and customer (tenant). In an on-premise deployment, KCM instances are represented by numeric IDs (numbers) from 1 to 99, for example, Instance_21. A single KCM instance comprises the following key components:

  • KCM Core – a component responsible for document composition by executing Document Templates and producing Document Packs. These jobs are executed by Document Processors. In addition, KCM Core supports PDF processing and the creation of custom Core Services that implement Contract Manager interfaces.

  • KCM Repository – a component that stores and manages the Document Template definitions. Each KCM Repository has a Repository server and Repository database that contains data for one particular tenant (that is, partner-customer combination explained in the next paragraph). Every KCM instance requires its own Repository database, as instances do not share these databases.

  • KCM Designer – a web-based user interface that enables users to create and test Document Templates. It supports document lifecycle management, revision management, and changesets control.

  • KCM ComposerUI for HTML5 – a component that supports integration of interactive document composition in a web application.

Each KCM instance registers itself on the Contract Manager, as explained below.

Contract Manager, contracts, and contract types

Contract Manager acts as the main entry point that manages connections to KCM instances and hands out work to these instances. Client applications send requests to the Contract Manager, which relays these requests to the appropriate KCM instances according to a number of contracts that are defined at the Contract Manager. Each contract identifies a partner and a customer operating KCM.

Generally, a partner is a Kofax partner providing content management services by means of KCM, and a customer is consuming these services.

For example, a default contract deployed during the KCM installation sets partner to CCM, meaning that services will be provided by the solution itself. Customer is set to Local, meaning that services will be consumed by a local organization. You can add extra partners if needed, for example, a reseller.

You cannot remove the default partner.

Available operations are defined by contract types and their different versions. Each version of a contract type provides a consistent set of KCM service calls required to handle specific operations. For example:

  • The CCMInteractive contract type handles the definition, management, and composition of documents and Document Packs.

  • The CCMAdministration contract type deals with common administrative tasks, such as adding a new user, assigning a role to the user for a particular project, and starting a KCM Designer session.

If the predefined contract types are not sufficient, customers can add their own contract types and interfaces. These custom interfaces will need a Core Service for their implementation. See the Kofax Communications Manager Core Guide and the Kofax Communications Manager Core Scripting Language Guide for details on Core Services and Core Scripting.

Registration process

When a KCM instance tries to register itself for a particular contract, the Contract Manager checks if this KCM instance implements each interface of each contract type in the contract. If it does, the registration is a success, and the Contract Manager starts relaying the web service requests for that contract to the corresponding Core Service of the KCM instance.

Technologies behind Contract Manager

Contract Manager is a gateway to the KCM functionality and API for business applications. It provides the interface to the Kofax Communications Manager for all communications: runtime, design time, and system management. Its key functions are exposing services (SOAP) and being a proxy for HTTP(S) traffic.

All interface definitions and Contract Manager configuration settings are stored in the Contract Manager internal database.

Contract Manager communicates with KCM Core directly over TCP/IP.

KCM Control Center

KCM Control Center is a central web application that monitors the entire KCM installation.

Client applications can embed or redirect to KCM Control Center, and KCM Control Center has internal connections to all KCM servers and KCM components.

KCM Batch & Output Management

KCM Batch & Output Management is an optional component that facilitates advanced multi-channel handling of produced output. It relies on an installed KCM instance to provide Document Pack composition.