MediaMelon iOS Kaltura Player Plugin Integration Document
This guide provides detailed instructions on integrating the MediaMelon Plugin into a Kaltura player based iOS Media Player Application
Step 2: Register MediaMelon Plugin
Step 3: Configure and Initialise MediaMelon SDK
Step 1: Import Frameworks
import KalturaPlayer
import MediaMelonKPPlugin
Step 2: Register MediaMelon Plugin
Register the MediaMelon Plugin in the App Delegate after the player setup.
KalturaBasicPlayer.setup()
PlayKitManager.shared.registerPlugin(MediaMelonKPPlugin.self)
Step 3: Configure and Initialise MediaMelon SDK
Swift:
func createPluginConfig() -> MediaMelonKPPluginConfig {
let mediaMelonPluginParams: [String: Any] = [
"customerId": "CUSTOMER_ID",
"domainName": "DOMAIN_NAME",
"subscriberTag": "SUBSCRIBER_TAG",
"subscriberId": "SUBSCRIBER_ID",
"subscriberType": "SUBSCRIBER_TYPE",
"doHash": true,
"playerName": "PLAYER_NAME",
"playerVersion": "PLAYER_VERSION",
"playerBrand": "PLAYER_BRAND",
"playerModel": "PLAYER_MODEL",
"assetId": "ASSET_ID",
"assetName": "ASSET_NAME",
"videoId": "VIDEO_ID",
"seriesTitle": "SERIES_TITLE",
"episodeNumber": "EPISODE_NUMBER",
"season": "SEASON",
"contentType": "CONTENT_TYPE",
"genre": "GENRE",
"appName": "APP_NAME",
"appVersion": "APP_VERSION",
"deviceMarketingName": "DEVICE_MARKETING_NAME",
"videoQuality": "VIDEO_QUALITY",
"deviceId": "DEVICE_ID",
"disableManifestFetch": false,
"customTags": [
"KEY1": "VALUE1",
"KEY2": "VALUE2"
]
]
var mmPluginConfig = MediaMelonKPPluginConfig(params: mediaMelonPluginParams)
return mmPluginConfig
}
func playerOptions(_ videoData: VideoData?) -> PlayerOptions {
let playerOptions = PlayerOptions()
.....
playerOptions.pluginConfig.config[MediaMelonKPPlugin.pluginName] = createPluginConfig()
return playerOptions
}
Variable
Description
PLAYER_NAME
String containing the Player Name.
CUSTOMER_ID
String containing your MediaMelon-assigned Customer ID.
SUBSCRIBER_ID
String containing your Subscriber’s ID. If you do not use subscriber IDs, enter null
DOMAIN_NAME
String containing your section of your subscriber or assets.
SUBSCRIBER_TYPE
String containing the Subscriber Type (e.g. “Free”, “Paid”). If you do not use subscriber types, enter null
SUBSCRIBER_TAG
String containing an additional subscriber-specific information. This is sent in clear (not hashed) to SmartSight and it is advised to not send sensitive information in this field.
ASSET_ID
String containing Asset Id.
ASSET_NAME
String containing Asset Name.
VIDEO_ID
String containing your video’s ID. If you do not use videos IDs, enter null.
CONTENT_TYPE
String containing type of the Content. For example - "Movie", "Special", "Clip", "Scene Epis Lifts".
GENRE
String containing Genre of the content. For example - "Comedy", "Horror".
DRM_PROTECTION
Widevine, Fairplay, Playready etc. Unknown means content is protected, but protection type is unknown. For clear contents, do not set this field
EPISODE_NUMBER
String containing sequence number of the Episode.
SEASON
String containing the Season. For example - "Season1".
SERIES_TITLE
String containing Title of the Series.
CUSTOM_TAGS
Extra custom metadata can be added here if required.
PLAYER_BRAND
String containing Player Brand.
PLAYER_MODEL
String containing Player Model. For example - This could be a variant of player. Say name of third party player used by organisation. Or any human readable name of the player.
PLAYER_VERSION
String containing Player Version.
Last updated
Was this helpful?