Share Media Configuration

OVERVIEW

This guide will help with the setups, options and examples for successfully sharing your content.

PREREQUISITES

1. Nomad Media Installation

Your Nomad Media installation needs to be on Summer Release 2024 or later.

2. Default Sharing Experience

Default external, internal and social/embed sharing is on by default for Nomad Media installations on Summer Release 2024 or later. To fine tune that experience we have the following Nomad Media configuration that you may adjust.

3. Content Portal Configuration


   // This turns off sharing options from Asset Detail View Modal
   "actions": {  
    "share": true
   },

   // This configuration will disable all external sharing options in Content Portal
   "allowExternalSharing": true

4. Nomad Media API Configuration

"application/shareSettings": {
    // <summary>
    // Gets or sets a value indicating whether enables or disables system wide sharing.
    // </summary>
    // <value>Defaults to true.</value>
    "isEnabled": true,

    // <summary>
    // Gets or sets a value indicating whether we send out share email notifications.
    // </summary>
    // <value>Defaults to true.</value>
    "isNotificationEnabled": true,

    // <summary>
    // Gets or sets a value indicating whether to allow for non expiring shares.
    // </summary>
    // <value>Defaults to true.</value>
    "allowNoExpirationSharing": true,

    // <summary>
    // Gets or sets the share url for public assets.
    // </summary>
    "publicShareUrl": "{publicServicesUrl}api/embedded/share-media?id={assetId}",

    // <summary>
    // Gets or sets the share url for non-public assets.
    // </summary>
    "shareUrl": "{publicServicesUrl}api/embedded/share-media?id={shareId}",

    // <summary>
    // Gets or sets the embed url for public assets.
    // </summary>
    "embeddedUrl": "<iframe width=\"560\" height=\"315\" src=\"{shareUrl}\" frameborder=\"0\" allowfullscreen></iframe>",

    // <summary>
    // Gets or sets a value indicating the Nomad internal file url for viewing via the content portal.
    // </summary>
    "nomadFileUrl": "{publicSiteUrl}portal/asset/{assetId}",

    // <summary>
    // Gets or sets a value indicating the Nomad internal folder url for viewing via the content portal.
    // </summary>
    "nomadFolderUrl": "{publicSiteUrl}folders/{assetId}?mediaType=1&mediaType=2&mediaType=5&sortBy=createdDate&sortOrder=Descending&folderSearchKey=This%20Folder%20Only",

    // <summary>
    // Gets or sets a value indicating the main Angular index.html file.
    // This is the file we use to load/parse and inject social sharing metadata.
    //
    // Note: Once loaded the first time this file is cached. If you change any social sharing settings
    // you will have to bounce the portal entrypoint lambda.
    // </summary>
    "sourceHtmlUrl": "{publicSiteUrl}embed/index.html",

    // <summary>
    // Gets or sets a value indicating the twitter author.
    // </summary>
    // <value>Defaults to Nomad Media.</value>
    "author": "Nomad Media",

    // <summary>
    // Gets or sets a value indicating the twitter site.
    // </summary>
    // <value>Defaults to @Nomadcms.</value>
    "twitterSite": "@Nomadcms",

    // <summary>
    // Gets or sets a value indicating the max sharing duration in hours.
    //
    // Note: This value gets ignored if AllowNoExpirationSharing is set true.
    // </summary>
    // <value>Defaults to 8760 hours, 1 year.</value>
    "maxSharingDurationInHours": 8760,

    // <summary>
    // Gets or sets a value indicating the maximum number of contents a user can share.
    // </summary>
    "maxShareResults": 10000,

    // <summary>
    // Gets or sets a value indicating the allowed share types.
    // <value>Defaults to Media Asset, Folder, Collection</value>
    // </summary>
    "allowedShareTypes": [
        1,
        2,
        3
    ],

    // <summary>
    // Gets or sets a value indicating the allowed share media types.
    // <value>Defaults to Audio, Image, Video, Document, Text</value>
    // </summary>
    "allowedShareMediaTypes": [
        1,
        2,
        3,
        4,
        5
    ],

    // <summary>
    // Gets or sets a value indicating the allowed asset statuses to include in shares.
    // </summary>
    // <value>Defaults to Available, Copying, Restoring, Archiving, Archived, PendingArchive, PendingRestore, Restored, Error.</value>
    "allowedAssetStatuses": [
        1,
        3,
        4,
        7,
        8,
        9,
        11,
        12,
        17
    ],

    //
    // These are additional settings for the controlling the VepConfig for the Embed Player Application.
    //

    // <summary>
    // Gets or sets a value indicating for branding the name for the embed player application.
    // </summary>
    "embeddedApplicationName": "Embedded",

    // <summary>
    // Gets or sets a value indicating whether to hide the sidebar or not in the embed player application.
    // </summary>
    "hideSidebar": true,

    // <summary>
    // Gets or sets a value indicating whether the share icon is at the bottom (true), or top (false) embed player application.
    // </summary>
    "bottomShareIcon": false,

    // <summary>
    // Gets or sets a value indicating whether if live channels are supported in the embed player application.
    // </summary>
    "liveMode": false,

    // <summary>
    // Gets or sets the custom name used for the embed player application.
    // </summary>
    "customer": "Customer Name",

    // <summary>
    // Gets or sets the sitename used for the embed player application.
    // </summary>
    "siteName": "AWS Account Name",

    // <summary>
    // Gets or sets a value indicating whether embed player will support sharing.
    // This is used on top of the permissions, allows to override share permissions.
    // For instance a customer does not allow users re-sharing because of copyright issues.
    // </summary>
    "supportSharing": true,

    // <summary>
    // Gets or sets a value indicating whether embed player will support downloading.
    // This is used on top of the permissions, allows to override share permissions.
    // For instance if we have a security incident setting this to false, will override existing share permissions
    // and prevent users from downloading on existing active shares.
    //
    // Note: this will also remove allow downloads option from the UI for creating new shares.
    // Also if you change this config in the API settings, you need to bounce the portal entrypoint lambda,
    // we cache the index.html and vep config there.
    // </summary>
    "supportDownloading": true
}

5. FAQ