Skip to main content

Retailer Integration

Introduction

The Eluvio Content Fabric provides a next gen decentralized, high performance and tamper proof content delivery network for publisher-to-fan content entitlement and distribution. The Media Wallet app provides a secure personal vault through which end users can access and enjoy their entitled content on browser and connected TV. Exclusively owned Media Bundles can be minted, owned, and distributed on the Content Fabric for authorized Media Wallet holders.

Authorization is enabled through ownership of a bundle Access Pass minted to the user’s wallet address on the Fabric’s blockchain. Together the Fabric and the Media Wallet allow publishers to distribute and authorize end users to any video, audio, interactive or static content experience and update these over time.

More Info

Link Description
Content Fabric Technology For more details on the Content Fabric Technology
Audio/Video/Image Media Serving For Audio/Video/Image and other media serving features
Eluvio Media Wallet For more information on the Eluvio Media Wallet

Overview

This document covers how Retailers selling Media Bundles can use the APIs of the Media Wallet and Content Fabric to integrate the Bundle experience directly into any Retail entertainment site (web or Connected TV) via "deep linking". APIs cover signing the user on to their Media Wallet using a 3rd party sign on, activating the bundle via minting the corresponding owned entitlement on the Content Fabric to their wallet address, and opening the bundle through a direct link (deep link). Example code is provided for Apple TV (TVOS). Additional samples can be provided for any Connected TV platform the Media Wallet runs on.

Source code is available here:

https://github.com/eluv-io/tvos-deeplink-samples

Key points for the sample are as follows:

Configuration

The sample is set up for the test tenant, marketplace and bundle SKU. To change these values, see https://github.com/eluv-io/tvos-deeplink-samples/blob/main/EluvioDeepLinkSample/EluvioDeepLinkSample/ContentView.swift

let TENANT_ID = "iten34Y7Tzso2mRqhzZ6yJDZs2Sqf8L"
let MARKETPLACE = "iq__D3N77Nw1ATwZvasBNnjAQWeVLWV"
let SKU = "5MmuT4t6RoJtrT9h1yTnos"

3rd Party Sign on Provider

To use your own 3rd party login provider, you will change the provider URL in this function.

func CreateLoginUrl(marketplaceId: String) -> String {
return "https://wallet.contentfabric.io/login?mid=\(marketplaceId)&useOry=true&action=login&mode=login&response=code&source=code"
}

The Eluvio Media Wallet has defined a deep link scheme elvwallet:// when installed

  • To link to a specific SKU:

    elvwallet://items?contract={contract_address}&marketplace={marketplace_id}&sku={sku}&back_link=(backlink)

  • To link to play a video from the content fabric:

    elvwallet://play?contract={contract_address}

  • To link to mint a bundle with entitlements:

    elvwallet://mint?marketplace={marketplace_id}&sku={sku}&entitlement={entitlement}&back_link=(backlink)

see Linker.swift