Extended Properties
These properties can be used for special use cases and are only valid for version 0.1.130+. Please ensure that you are using the correct version, because the syntax in previous versions can be different. Each property is a key-value pair of type string and can be set in the properties property of a Content Item Object. The dynamic properties can also be set via an action at runtime. For more information, please see Internal Actions.
Syntax[edit]
| Property | Value | Example | Dynamic | Description | 
|---|---|---|---|---|
button:{BUTTON_ID}:action | 
{ACTION} | 
 
  | 
Yes | 
 Sets up a custom player button action (all buttons except the eject button are supported). By default, the following actions are executed. 
 Note: To use this property, the corresponding   | 
button:{BUTTON_ID}:display | 
{BOOLEAN_VALUE} | 
 
  | 
No | 
 Shows/Hides a player button (all buttons except the eject button are supported).  | 
button:{BUTTON_ID}:enable | 
{BOOLEAN_VALUE} | 
 
  | 
Yes | 
 Enables/Disables a player button (all buttons except the eject button are supported).  | 
button:{BUTTON_ID}:focus | 
{BOOLEAN_VALUE} | 
 
  | 
Yes | 
 Focuses a player button (if player is loaded).  | 
button:{BUTTON_ID}:icon | 
{ICON} | 
 
  | 
Yes | 
 Sets up a custom player button icon (all buttons except the eject button are supported). By default, the following icons are used. 
 Note: To use this property, the corresponding   | 
control:load | 
{LOAD_MODE} | 
 
  | 
No | 
 Sets up the player control load mode. If the mode is set to   | 
control:type | 
{CONTROL_TYPE} | 
 
  | 
No | 
 Sets up the player control type. If the type is set to   | 
image:action | 
{ACTION} | 
 
  | 
No | 
 Sets up a custom slideshow image action (replacement for the default slideshow image action). By default, the action  Note: For property actions, it is not possible to provide an action-related   | 
image:extension | 
{LABEL} | 
 
  | 
No | 
 Sets up an additional slideshow image extension label (displayed in the slideshow labels).  | 
image:trigger | 
{ACTION} | 
 
  | 
No | 
 Sets up a slideshow image trigger. Note: For property actions, it is not possible to provide an action-related   | 
info:image | 
{URL} | 
 
  | 
Yes | 
 Sets up a player info image. Note: To use this property, the   | 
info:text | 
{TEXT} | 
 
  | 
Yes | 
 Sets up a player info text. Note: To use this property, the   | 
label:duration | 
{LABEL} | 
 
  | 
Yes | 
 Sets up the player duration label (overrides the default duration value of the video/audio player with a custom value).  | 
label:extension | 
{LABEL} | 
 
  | 
Yes | 
 Sets up an additional player extension label.  | 
label:position | 
{LABEL} | 
 
  | 
Yes | 
 Sets up the player position label (overrides the default position value of the video/audio player with a custom value).  | 
progress:color | 
{COLOR} | 
 
  | 
Yes | 
 Sets up the player progress color.  | 
progress:marker:enable | 
{BOOLEAN_VALUE} | 
 
  | 
Yes | 
 Enables/Disables the player progress marker.  | 
progress:type | 
{PROGRESS_TYPE} | 
 
  | 
Yes | 
 Sets up the player progress type (  | 
resume:key | 
{RESUME_KEY} | 
 
  | 
No | 
 Sets up a resume key to store/restore the content position. If the key is set to  Note: The key is stored as hash code on the local device. Stored keys can be cleared with the   | 
resume:position | 
{RESUME_POSITION} | 
 
  | 
Yes | 
 Sets up a fix resume position in seconds or percentage to start the content from there.  | 
trigger:{TRIGGER_KEY} | 
{ACTION} | 
 
  | 
Yes | 
 Sets up a video/audio trigger. Note: For trigger key   | 
video:duration | 
{VIDEO_DURATION} | 
 
  | 
Yes | 
 Sets up a custom video duration in seconds. If a custom duration is set, only that duration is displayed during playback. It can be used for live data or ads to disable the progress feature.  | 
video:position | 
{VIDEO_POSITION} | 
 
  | 
Yes | 
 Sets up a custom video position in seconds. If a custom position is set, only that position is displayed during playback and it is not possible to seek to another position (instead a   | 
video:speed | 
{VIDEO_SPEED} | 
 
  | 
Yes | 
 Sets up a custom video speed. If a custom speed is set, only that speed is displayed during playback and it is not possible to change it (instead a  Note: The actual video speed is not changed. For example, if the custom video speed is set to x0.5, the actual video may still be playing at normal speed.  | 
video:state | 
{VIDEO_STATE} | 
 
  | 
Yes | 
 Sets up a custom video state. If a custom state is set, only that state is displayed during playback and it is not possible to change it (instead a  
 Note: The actual video state is not changed. For example, if the custom video state is paused, the actual video may still be in the playing state.  | 
Example[edit]
Screenshot[edit]
Code[edit]
{
    "type": "pages",
    "headline": "Extended Properties Test",
    "template": {
        "type": "separate",
        "layout": "0,0,2,4",
        "icon": "msx-white-soft:movie",
        "color": "msx-glass"
    },
    "items": [{
            "title": "Video 1",
            "playerLabel": "Video 1",
            "action": "video:http://msx.benzac.de/media/video1.mp4",
            "properties": {
                "button:content:icon": "info",
                "button:content:action": "info:Live info executed.",
                "label:duration": "Live",
                "label:extension": "{ico:msx-red:live-tv}",
                "progress:color": "msx-red",
                "progress:type": "reverse:time:[H:]M:ss"
            }
        }, {
            "title": "Video 2",
            "playerLabel": "Video 2",
            "action": "video:http://msx.benzac.de/media/video2.mp4",
            "properties": {
                "button:content:icon": "info",
                "button:content:action": "info:Ad info executed.",
                "button:forward:enable": "false",
                "button:rewind:enable": "false",
                "button:restart:enable": "false",
                "button:speed:enable": "false",
                "label:extension": "{txt:msx-yellow:Ad}",
                "progress:color": "msx-yellow",
                "progress:type": "text:s",
                "progress:marker:enable": "false"
            }
        }, {
            "title": "Video 3",
            "playerLabel": "Video 3",
            "action": "video:http://msx.benzac.de/media/video4.mp4",
            "properties": {
                "button:content:icon": "info",
                "button:content:action": "info:Video info executed.",
                "label:extension": "{ico:msx-blue:local-play}",
                "progress:color": "msx-blue",
                "progress:type": "percentage",
                "trigger:midpoint": "info:Midpoint of video reached.",
                "trigger:third_quartile": "dialog:none"
            }
        }, {
            "badge": "Extended",
            "title": "Video 4",
            "titleFooter": "0.1.130+",
            "playerLabel": "Video 4",
            "action": "video:http://msx.benzac.de/media/video5.mp4",
            "properties": {
                "button:content:icon": "info",
                "button:content:action": "info:Video info executed.",  
                "button:rewind:icon": "thumb-down",
                "button:rewind:action": "info:Thumb down executed.",  
                "button:forward:icon": "thumb-up",
                "button:forward:action": "info:Thumb up executed.",  
                "button:restart:display": "false",
                "button:speed:display": "false",      
                "label:extension": "{ico:msx-white:ondemand-video} Extended",
                "progress:type": "time:[H:]M:ss",
                "control:type": "extended",
                "info:image": "http://msx.benzac.de/img/icon.png",
                "info:text": "Placeholder for additional video information."
            }
        }, {
            "badge": "Extended",
            "title": "Video 5",
            "titleFooter": "0.1.130+",
            "playerLabel": "Video 5",
            "action": "video:http://msx.benzac.de/media/video3.mp4",
            "properties": {
                "button:content:icon": "info",
                "button:content:action": "panel:request:interaction:program@http://msx.benzac.de/interaction/live.html",  
                "button:restart:display": "false",  
                "button:rewind:display": "false",               
                "button:play_pause:display": "false",
                "button:forward:display": "false",
                "button:speed:display": "false",                  
                "label:extension": "{ico:msx-white:ondemand-video} Extended",
                "label:position": "...",
                "label:duration": "...",               
                "control:type": "extended",
                "trigger:load": "interaction:load:http://msx.benzac.de/interaction/live.html",   
                "trigger:complete": "player:auto:restart",
                "info:text": "This video is controlled by an interaction plugin to simulate a live stream.",
                "live:channel": "0",
                "live:program": "-1"
            }
        }]
}