Difference between revisions of "Resolve Action"

From MSX - Wiki
Jump to navigation Jump to search
Line 1: Line 1:
 
Each platform supports different video/audio formats and codecs. This means that some videos/audios can be played with the standard player, others require a plugin, others do not work at all. To deal with this, the <code>resolve</code> action can be used, which has been developed to return a suitable format/codec depending on the current platform/player. This feature is available since version '''0.1.107'''.
 
Each platform supports different video/audio formats and codecs. This means that some videos/audios can be played with the standard player, others require a plugin, others do not work at all. To deal with this, the <code>resolve</code> action can be used, which has been developed to return a suitable format/codec depending on the current platform/player. This feature is available since version '''0.1.107'''.
  
The response data from a resolve action must contain a <code>url</code> property (of type <code>string</code>). On error, it should contain an <code>error</code> property  (of type <code>string</code>). Since version '''0.1.145''', the response data can also contain a <code>label</code> (of type <code>string</code>), <code>background</code> (of type <code>string</code>), and <code>properties</code> (of type <code>object</code>) property to extend/override the current video/audio info.
+
The response data from a resolve action must contain a <code>url</code> property (of type <code>string</code>). On error, it should contain an <code>error</code> property  (of type <code>string</code>). Since version '''0.1.145''', the response data can also contain a <code>label</code> property (of type <code>string</code>), a <code>background</code> property (of type <code>string</code>), and a <code>properties</code> property (of type <code>object</code>) to extend/override the current video/audio info.
  
 
'''Note: The <code>resolve</code> action can also be used for images (that are loaded on the fly). Additionally, it can be used to generate temporary links or links with access tokens at runtime.'''
 
'''Note: The <code>resolve</code> action can also be used for images (that are loaded on the fly). Additionally, it can be used to generate temporary links or links with access tokens at runtime.'''

Revision as of 13:54, 10 February 2022

Each platform supports different video/audio formats and codecs. This means that some videos/audios can be played with the standard player, others require a plugin, others do not work at all. To deal with this, the resolve action can be used, which has been developed to return a suitable format/codec depending on the current platform/player. This feature is available since version 0.1.107.

The response data from a resolve action must contain a url property (of type string). On error, it should contain an error property (of type string). Since version 0.1.145, the response data can also contain a label property (of type string), a background property (of type string), and a properties property (of type object) to extend/override the current video/audio info.

Note: The resolve action can also be used for images (that are loaded on the fly). Additionally, it can be used to generate temporary links or links with access tokens at runtime.

Please see following example.

Example[edit]

This example uses a web service and an interaction plugin to resolve the assets. For the interaction plugin, please have a look at this implementation script: https://msx.benzac.de/interaction/js/resolve.js.

Screenshot[edit]

Example Screenshot (Resolve Action)

Code[edit]

{
    "type": "list",
    "headline": "Resolve Action",
    "template": {       
        "type": "separate",
        "layout": "0,0,2,4",
        "color": "msx-glass"
    },
    "items": [{
            "badge": "Service",
            "icon": "msx-white-soft:movie",
            "title": "Video 1",
            "titleFooter": "Standard",
            "playerLabel": "Video 1",
            "action": "video:resolve:http://msx.benzac.de/services/resolve.php?type=video&platform={PLATFORM}&player={PLAYER}"
        }, {
            "badge": "Service",
            "icon": "msx-white-soft:movie",
            "title": "Video 2 ",
            "titleFooter": "Plugin",
            "playerLabel": "Video 2",
            "action": "video:resolve:http://msx.benzac.de/services/resolve.php?type=plugin:video&platform={PLATFORM}&player={PLAYER}"
        }, {
            "badge": "Service",
            "icon": "msx-white-soft:movie",
            "title": "Video 3",
            "titleFooter": "Unsupported",
            "playerLabel": "Video 3",
            "action": "video:resolve:http://msx.benzac.de/services/resolve.php?type=unsupported"
        }, {
            "badge": "Service",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:http://msx.benzac.de/services/resolve.php?type=image",
            "title": "Audio 1",
            "titleFooter": "Standard",
            "playerLabel": "Audio 1",
            "action": "audio:resolve:http://msx.benzac.de/services/resolve.php?type=audio&platform={PLATFORM}&player={PLAYER}"
        }, {
            "badge": "Service",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:http://msx.benzac.de/services/resolve.php?type=image",
            "title": "Audio 2",
            "titleFooter": "Plugin",
            "playerLabel": "Audio 2",
            "action": "audio:resolve:http://msx.benzac.de/services/resolve.php?type=plugin:audio&platform={PLATFORM}&player={PLAYER}"
        }, {
            "badge": "Service",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:http://msx.benzac.de/services/resolve.php?type=unsupported",
            "title": "Audio 3",
            "titleFooter": "Unsupported",
            "playerLabel": "Audio 3",
            "action": "audio:resolve:http://msx.benzac.de/services/resolve.php?type=unsupported"
        }, {
            "badge": "Interaction",
            "icon": "msx-white-soft:movie",
            "title": "Video 4",
            "titleFooter": "Standard",
            "playerLabel": "Video 4",
            "action": "video:resolve:request:interaction:video@http://msx.benzac.de/interaction/resolve.html"
        }, {
            "badge": "Interaction",
            "icon": "msx-white-soft:movie",
            "title": "Video 5",
            "titleFooter": "Plugin",
            "playerLabel": "Video 5",
            "action": "video:resolve:request:interaction:plugin:video@http://msx.benzac.de/interaction/resolve.html"
        }, {
            "badge": "Interaction",
            "icon": "msx-white-soft:movie",
            "title": "Video 6",
            "titleFooter": "Unsupported",
            "playerLabel": "Video 6",
            "action": "video:resolve:request:interaction:unsupported@http://msx.benzac.de/interaction/resolve.html"
        }, {
            "badge": "Interaction",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:request:interaction:image@http://msx.benzac.de/interaction/resolve.html",
            "title": "Audio 4",
            "titleFooter": "Standard",
            "playerLabel": "Audio 4",
            "action": "audio:resolve:request:interaction:audio@http://msx.benzac.de/interaction/resolve.html"
        }, {
            "badge": "Interaction",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:request:interaction:image@http://msx.benzac.de/interaction/resolve.html",
            "title": "Audio 5",
            "titleFooter": "Plugin",
            "playerLabel": "Audio 5",
            "action": "audio:resolve:request:interaction:plugin:audio@http://msx.benzac.de/interaction/resolve.html"
        }, {
            "badge": "Interaction",
            "offset": "0,0,0,-1",
            "icon": "msx-white-soft:music-note",
            "background": "resolve:request:interaction:unsupported@http://msx.benzac.de/interaction/resolve.html",
            "title": "Audio 6",
            "titleFooter": "Unsupported",
            "playerLabel": "Audio 6",
            "action": "audio:resolve:request:interaction:unsupported@http://msx.benzac.de/interaction/resolve.html"
        }]
}

Demo[edit]