Interface CmcdConfiguration

The configuration for transmitting information to Content Delivery Networks (CDNs) through Common Media Client Data (CMCD) (CTA-5004)

interface CmcdConfiguration {
    contentID?: string;
    customKeys?: {
        [key: string]: string | number | boolean;
    };
    jsonObjectTargetURI?: string;
    sendRequestID?: boolean;
    sessionID?: string;
    transmissionMode: CmcdTransmissionMode;
}

Properties

contentID?: string

The content ID parameter which should be passed as a CMCD value. If left empty, no content ID will be sent.

Remarks

Web only

customKeys?: {
    [key: string]: string | number | boolean;
}

An object containing custom keys which should be added to the generated CMCD parameters. Note custom keys MUST carry a hyphenated prefix to ensure that there will not be a namespace collision with future revisions to the specification. Clients SHOULD use a reverse-DNS syntax when defining their own prefix.

Type declaration

  • [key: string]: string | number | boolean

Remarks

Web only

jsonObjectTargetURI?: string

The target URI where client data is to be delivered in case the transmissionMode is set to CmcdTransmissionMode.JSON_OBJECT.

Remarks

Web only

sendRequestID?: boolean

A flag to indicate if request IDs should be sent or not. When set to a truthy value, a UUIDv4 will be sent as a request id (rid) with every request to allow for request tracing.

Remarks

Web only

sessionID?: string

The session ID parameter which should be passed as a CMCD value. If left empty, a UUIDv4 will be generated when applying the configuration.

Remarks

Web only

transmissionMode: CmcdTransmissionMode

The data transmission mode as defined in section 2 of the specification.