Table of Contents

DMM Component

Shows the current status of the DMM (Distributed Media Manager) job for a piece of media — typically used on edit pages for ingestable content types (movies, episodes, …) so operators can see whether their content has been transcoded, packaged, and published.

The React shell renders it as a panel with two tabsDiagram (a graph view of the workflow stages and their links) and Summary (a tabular view of each operation, its current status, last execution timestamp, output filename, and backend messages). The data comes from the configured DMM backend (queried via MibDmmApiClientConfig); the component itself is a thin read-only view.

The two tabs

Diagram tab

The Diagram tab is the default landing tab and renders a node-edge graph of the workflow stages for the current media. Each node is an operation (ingest, transcode, package, publish, …); edges show the dependency between operations. When a workflow is running, nodes display their current status (queued / running / succeeded / failed) with colour-coded badges.

DMM Component — Diagram tab on a media record with no active workflow (empty state)

The screenshot above shows the empty state the component renders when the underlying media has no active or historical workflow — the "No data" placeholder. On a record with an active workflow, the graph fills with named nodes connected by directional arrows, each node carrying a status pill.

Summary tab

The Summary tab is a flat table view of the same workflow data. Each row is one operation (one node from the Diagram), with columns:

Column Meaning
Operation The DMM operation name (e.g. Ingest, Transcode, Package, Publish).
Server/Instance Which DMM worker / instance ran the operation.
Status Current status of this specific operation (queued / running / completed / failed).
Last Execution Timestamp of the last execution attempt.
Filename Output filename (or input filename, depending on operation).
Messages Any informational / warning / error messages emitted by the operation.

DMM Component — Summary tab with column headers visible and the "No data" empty state

On a record with an active or historical workflow the table renders one row per operation. Filtering, sorting, and pagination work the same as on the standard List Component.

When the component is empty

DMM data is only populated for media records that have actually been through the DMM pipeline — typically content imported from an upstream ingestion system. Records created manually by an operator (or test records created during development) have no associated workflow and show the empty state above.

If a record that you expect to have workflow data renders the empty state, check:

  1. The MibDmmApiClientConfig.url configured on the BFF — without a reachable DMM API the component silently shows empty.
  2. Whether the parent record's Content Id (linking it to the DMM asset) is set. Without that link the DMM API has no key to query.
  3. Whether IS_DMM_API_VERSION_6_OR_HIGHER is correct for the DMM backend version actually deployed (see Configuration Keys).

Related docs.
Content Ingestion / DMM — overview of the DMM pipeline.

Required MibConfigs

These are required configuration to be added to enable the usage of the DMM Component in MiB 3.

MibServer3BaseConfig.mibconfig

<?xml version="1.0" encoding="utf-8" ?>
<mibConfig>
  <default>
    <rootUrl>http://mib/server3/url/</rootUrl>
    <defaultLanguage>en-us</defaultLanguage>
    <startPage>customStartPage</startPage>
    ...
    <DmmWsUrl>http://mib/dmm/url/DmmWs.asmx</DmmWsUrl>    
    <DmmWsUsername>username</DmmWsUsername>
    <DmmWsPassword>password</DmmWsPassword>
  </default>
</mibConfig>

MibDmmApiClientConfig.mibconfig (if using DmmApi)

<?xml version="1.0" encoding="utf-8" ?>
<mibConfig>
  <default>
    <url>http://dmmapi/</url>
    <timeout>30</timeout>
    <maxErrors>3</maxErrors>
  </default>
</mibConfig>

Configuration Keys

These are all available Configuration Keys for the Dmm Component.

The configuration must be inserted into the database table:

MIB3UX_PAGE_COMPONENT_CONFIGURATIONS

CONTENT_MEDIA_TYPE

The value is a name of a mediatype.

This configuration defines which mediatype is being used as content.

IS_DMM_API_VERSION_6_OR_HIGHER

Boolean value. Default is False. Set to True to make the DMM component compatible with DMM release version 6.0 or higher.

MEDIATYPE

The value is a name of a mediatype.

This configuration defines which mediatype is loaded in the component.

PARENT_MEDIATYPE

Value is a Mediatype name;

It is used to link the main mediatype from the page with the mediatype of related component;

Ex:

Having a Movie page with a MMedias DMM component.

Into the MMedias related form configuration, may be used the following:

CONFIGURATION_KEY:   PARENT_MEDIA_TYPE
CONFIGURATION_VALUE: MVP_MOVIES

Now, the mmedias items are linked with the main mediatype (movies) item.

TITLE

The value is the name of the component rendered in the page.

Configurations Exclusive to MibReact

Below are some configurations that apply only to MibReact components.

Value type: String

Allows inserting a footer message in the component. This information can be in html format. Example:

CONFIGURATION_KEY: FOOTER_INFORMATION
CONFIGURATION_VALUE: <b>Footer Information</b>

Source reference

React type-key dmm
BFF assembly MibServer3.Web
BFF class MibServer3.Web.Component.DmmComponent
MIB3UX_COMPONENTS.COMPONENT_KEY mib_default_dmmcomponent
React widget source packages/core-components/src/components/dmm/Dmm.tsx
Schema / data contract DMM-specific shape (tasks[], currentEpgFile, ...). The widget is a thin read-only view over the DMM API response.

Custom backend, core React. Rare for DMM — the backend reads from a fixed external system (DMM API) and there's little to customise. If you do need a custom backend (e.g. proxy DMM through a different upstream), emit the same task list shape and set COMPONENT_VIEW_TYPE = 'dmm'. The widget's two tabs (Diagram / Summary) and the per-row column rendering all live in Dmm.tsx.