CMCDSourceConfiguration
public struct CMCDSourceConfiguration : Codable, Equatable
Configuration for Common Media Client Data (CMCD) at the source level.
This extends the player-level configuration by additionally allowing a session ID to be specified
per source. Source-level values take precedence over player-level values for overlapping fields,
except for eventEndpoints which are merged (both player and source endpoints receive events).
Remark
This configuration is set per source viaTypedSource.
-
A GUID identifying the current playback session.
A playback session typically consists of the playback of a single media asset along with accompanying content such as advertisements. This session may comprise the playback of primary content combined with interstitial content. This session is being played on a single device.
Remark
The maximum length is 64 characters. It is RECOMMENDED to conform to the UUID specification (RFC 4122).Declaration
Swift
public let sessionId: String? -
An external session ID that can be used to identify the current playback session.
This is useful for correlating CMCD data with external analytics systems.
Declaration
Swift
public let externalSessionId: String? -
A user ID that can be used to identify the user.
Declaration
Swift
public let userId: String? -
The endpoints where CMCD events should be sent.
When configured, CMCD events (such as playback state changes, errors, etc.) will be POSTed to these endpoints. These are merged with any player-level endpoints (not overridden).
Declaration
Swift
public let eventEndpoints: [CMCDEndpointConfiguration]? -
Creates a new CMCD source configuration.
Declaration
Swift
public init( sessionId: String? = nil, externalSessionId: String? = nil, userId: String? = nil, eventEndpoints: [CMCDEndpointConfiguration]? = nil )Parameters
sessionIdA GUID identifying the playback session. Defaults to nil (auto-generated).
externalSessionIdAn external session ID for correlation with external systems. Defaults to nil.
userIdA user ID to identify the user. Defaults to nil (auto-generated).
eventEndpointsEndpoints where CMCD events should be sent. Merged with player-level endpoints. Defaults to nil.