Difference between revisions of "Actions"
Line 3: | Line 3: | ||
'''Note: The actions described here are the main actions that are perfectly adequate for the most media pages. However, if you want to create more complex and interactive media pages, please have a look at the internal actions.''' | '''Note: The actions described here are the main actions that are perfectly adequate for the most media pages. However, if you want to create more complex and interactive media pages, please have a look at the internal actions.''' | ||
− | For more information about the internal actions, please see | + | For more information about the internal actions, please see [[Internal Actions]]. |
== Basic Actions == | == Basic Actions == | ||
Line 52: | Line 52: | ||
|| | || | ||
Loads a playlist without a corresponding content page. The <code>{URL}</code> part must be replaced with the playlist URL. | Loads a playlist without a corresponding content page. The <code>{URL}</code> part must be replaced with the playlist URL. | ||
− | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see | + | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see [[Content Root Object]] for more information. |
|- | |- | ||
| <code>playlist:data</code> | | <code>playlist:data</code> | ||
Line 59: | Line 59: | ||
|| | || | ||
Starts a playlist without a corresponding content page. The playlist data must be provided as <code>data</code> property by the corresponding content item. | Starts a playlist without a corresponding content page. The playlist data must be provided as <code>data</code> property by the corresponding content item. | ||
− | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see | + | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see [[Content Root Object]] for more information. |
|- | |- | ||
| <code>slideshow:{URL}</code> | | <code>slideshow:{URL}</code> | ||
Line 66: | Line 66: | ||
|| | || | ||
Loads a slideshow without a corresponding content page. The <code>{URL}</code> part must be replaced with the slideshow URL. | Loads a slideshow without a corresponding content page. The <code>{URL}</code> part must be replaced with the slideshow URL. | ||
− | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see | + | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see [[Content Root Object]] for more information. |
|- | |- | ||
| <code>slideshow:data</code> | | <code>slideshow:data</code> | ||
Line 73: | Line 73: | ||
|| | || | ||
Starts a slideshow without a corresponding content page. The playlist data must be provided as <code>data</code> property by the corresponding content item. | Starts a slideshow without a corresponding content page. The playlist data must be provided as <code>data</code> property by the corresponding content item. | ||
− | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see | + | The data structure is the same like the '''Templated Items''' from the '''Content API'''. Please see [[Content Root Object]] for more information. |
|- | |- | ||
| <code>menu:{URL}</code> | | <code>menu:{URL}</code> | ||
Line 80: | Line 80: | ||
|| | || | ||
Loads a menu. The <code>{URL}</code> part must be replaced with the menu URL. | Loads a menu. The <code>{URL}</code> part must be replaced with the menu URL. | ||
− | Please see | + | Please see [[Menu Root Object]] for the data structure. |
|- | |- | ||
| <code>menu:data</code> | | <code>menu:data</code> | ||
Line 87: | Line 87: | ||
|| | || | ||
Shows a menu. The menu data must be provided as <code>data</code> property by the corresponding content item. | Shows a menu. The menu data must be provided as <code>data</code> property by the corresponding content item. | ||
− | Please see | + | Please see [[Menu Root Object]] for the data structure. |
|- | |- | ||
| <code>content:{URL}</code> | | <code>content:{URL}</code> | ||
Line 94: | Line 94: | ||
|| | || | ||
Loads a content page. The <code>{URL}</code> part must be replaced with the content URL. | Loads a content page. The <code>{URL}</code> part must be replaced with the content URL. | ||
− | Please see | + | Please see [[Content Root Object]] for the data structure. |
|- | |- | ||
| <code>content:data</code> | | <code>content:data</code> | ||
Line 101: | Line 101: | ||
|| | || | ||
Shows a content page. The content data must be provided as <code>data</code> property by the corresponding content item. | Shows a content page. The content data must be provided as <code>data</code> property by the corresponding content item. | ||
− | Please see | + | Please see [[Content Root Object]] for the data structure. |
|- | |- | ||
| <code>panel:{URL}</code> | | <code>panel:{URL}</code> | ||
Line 108: | Line 108: | ||
|| | || | ||
Loads a content page in a panel. The <code>{URL}</code> part must be replaced with the content URL. | Loads a content page in a panel. The <code>{URL}</code> part must be replaced with the content URL. | ||
− | Please see | + | Please see [[Content Root Object]] for the data structure. |
|- | |- | ||
| <code>panel:data</code> | | <code>panel:data</code> | ||
Line 115: | Line 115: | ||
|| | || | ||
Shows a content page in a panel. The content data must be provided as <code>data</code> property by the corresponding content item. | Shows a content page in a panel. The content data must be provided as <code>data</code> property by the corresponding content item. | ||
− | Please see | + | Please see [[Content Root Object]] for the data structure. |
|- | |- | ||
| <code>success:{TEXT}</code> | | <code>success:{TEXT}</code> | ||
Line 122: | Line 122: | ||
|| | || | ||
Shows a success message. The <code>{TEXT}</code> part must be replaced with any text. | Shows a success message. The <code>{TEXT}</code> part must be replaced with any text. | ||
− | The text supports inline expressions. Please see | + | The text supports inline expressions. Please see [[Inline Expressions]] for more information. |
|- | |- | ||
| <code>info:{TEXT}</code> | | <code>info:{TEXT}</code> | ||
Line 129: | Line 129: | ||
|| | || | ||
Shows an info message. The <code>{TEXT}</code> part must be replaced with any text. | Shows an info message. The <code>{TEXT}</code> part must be replaced with any text. | ||
− | The text supports inline expressions. Please see | + | The text supports inline expressions. Please see [[Inline Expressions]] for more information. |
|- | |- | ||
| <code>warn:{TEXT}</code> | | <code>warn:{TEXT}</code> | ||
Line 136: | Line 136: | ||
|| | || | ||
Shows a warning message. The <code>{TEXT}</code> part must be replaced with any text. | Shows a warning message. The <code>{TEXT}</code> part must be replaced with any text. | ||
− | The text supports inline expressions. Please see | + | The text supports inline expressions. Please see [[Inline Expressions]] for more information. |
|- | |- | ||
| <code>error:{TEXT}</code> | | <code>error:{TEXT}</code> | ||
Line 143: | Line 143: | ||
|| | || | ||
Shows an error message. The <code>{TEXT}</code> part must be replaced with any text. | Shows an error message. The <code>{TEXT}</code> part must be replaced with any text. | ||
− | The text supports inline expressions. Please see | + | The text supports inline expressions. Please see [[Inline Expressions]] for more information. |
|- | |- | ||
| <code>focus:{ID}</code> | | <code>focus:{ID}</code> | ||
Line 162: | Line 162: | ||
|| | || | ||
Sets up a new start parameter. The start parameter data must be provided as data property by the corresponding content item. | Sets up a new start parameter. The start parameter data must be provided as data property by the corresponding content item. | ||
− | Please see | + | Please see [[Start Object]] for the data structure. |
|- | |- | ||
| <code>video:plugin:{URL}</code> | | <code>video:plugin:{URL}</code> | ||
Line 169: | Line 169: | ||
|| | || | ||
Plays a plugin video. The <code>{URL}</code> part must be replaced with the plugin URL. | Plays a plugin video. The <code>{URL}</code> part must be replaced with the plugin URL. | ||
− | Please see the | + | Please see the [[YouTube, Vimeo & Co.]] for plugin examples. |
|- | |- | ||
| <code>audio:plugin:{URL}</code> | | <code>audio:plugin:{URL}</code> | ||
Line 176: | Line 176: | ||
|| | || | ||
Plays a plugin audio file. The <code>{URL}</code> part must be replaced with the plugin URL. This action works in the same way as <code>video:plugin:{URL}</code>, except that the video screen is not displayed. Instead, the background screen is displayed. If the corresponding content item provides a <code>background</code> property, it is used, otherwise the next available <code>background</code> property (at higher level) is used. | Plays a plugin audio file. The <code>{URL}</code> part must be replaced with the plugin URL. This action works in the same way as <code>video:plugin:{URL}</code>, except that the video screen is not displayed. Instead, the background screen is displayed. If the corresponding content item provides a <code>background</code> property, it is used, otherwise the next available <code>background</code> property (at higher level) is used. | ||
− | Please see the | + | Please see the [[YouTube, Vimeo & Co.]] for plugin examples. |
|} | |} | ||
Line 222: | Line 222: | ||
'''Note: If you return actions like <code>video:{URL}</code> or <code>audio:{URL}</code>, the corresponding content item properties (i.e. <code>playerLabel</code>, <code>background</code>, and <code>properties</code>) must be indicated in the action-related <code>data</code> property (i.e. <code>response.data.data</code> property) in order to be used.''' | '''Note: If you return actions like <code>video:{URL}</code> or <code>audio:{URL}</code>, the corresponding content item properties (i.e. <code>playerLabel</code>, <code>background</code>, and <code>properties</code>) must be indicated in the action-related <code>data</code> property (i.e. <code>response.data.data</code> property) in order to be used.''' | ||
− | Please see | + | Please see [[Responses]] for more information. |
|- | |- | ||
| <code>execute:code:{URL}</code> | | <code>execute:code:{URL}</code> | ||
Line 242: | Line 242: | ||
'''Note: If you return actions like <code>video:{URL}</code> or <code>audio:{URL}</code>, the corresponding content item properties (i.e. <code>playerLabel</code>, <code>background</code>, and <code>properties</code>) must be indicated in the action-related <code>data</code> property (i.e. <code>response.data.data</code> property) in order to be used.''' | '''Note: If you return actions like <code>video:{URL}</code> or <code>audio:{URL}</code>, the corresponding content item properties (i.e. <code>playerLabel</code>, <code>background</code>, and <code>properties</code>) must be indicated in the action-related <code>data</code> property (i.e. <code>response.data.data</code> property) in order to be used.''' | ||
− | Please see | + | Please see [[Responses]] for more information. |
|- | |- | ||
| <code>execute:user:{URL}</code> | | <code>execute:user:{URL}</code> | ||
Line 313: | Line 313: | ||
'''Note: Only if the properties have been set (to a non <code>null</code> value) in the origin data, they can be updated.''' | '''Note: Only if the properties have been set (to a non <code>null</code> value) in the origin data, they can be updated.''' | ||
− | Please see | + | Please see [[Menu Item Object]] for the data structure. |
|- | |- | ||
| <code>update:content:{ID}</code> | | <code>update:content:{ID}</code> | ||
Line 345: | Line 345: | ||
'''Note: Only if the properties have been set (to a non <code>null</code> value) in the origin data, they can be updated. However, the <code>live</code>, <code>selection</code>, and <code>options</code> property can always be updated.''' | '''Note: Only if the properties have been set (to a non <code>null</code> value) in the origin data, they can be updated. However, the <code>live</code>, <code>selection</code>, and <code>options</code> property can always be updated.''' | ||
− | Please see | + | Please see [[Content Item Object]] for the data structure. |
|- | |- | ||
| <code>update:content:overlay:{ID}</code> | | <code>update:content:overlay:{ID}</code> |
Revision as of 14:43, 13 January 2021
All actions are indicated as strings and are used by content items to perform specific tasks (e.g. play a video, start a slideshow, etc.). Some actions use additional data, provided by the corresponding content item.
Note: The actions described here are the main actions that are perfectly adequate for the most media pages. However, if you want to create more complex and interactive media pages, please have a look at the internal actions.
For more information about the internal actions, please see Internal Actions.
Basic Actions[edit]
Syntax | Example | Since Version | Description |
---|---|---|---|
video:{URL}
|
video:http://msx.benzac.de/media/video1.mp4
|
0.1.0 |
Plays a video. The |
audio:{URL}
|
audio:http://msx.benzac.de/media/audio1.mp3
|
0.1.0 |
Plays an audio file. The |
image:{URL}
|
image:http://msx.benzac.de/img/bg1.jpg
|
0.1.0 |
Shows an image. The |
image:context
|
image:context
|
0.1.0 |
Shows an image by using the current context. The image URL must be provided as |
link:{URL}
|
link:http://msx.benzac.de/info/
|
0.1.0 |
Opens a link. The |
link:window:{URL}
|
link:window:http://msx.benzac.de/info/
|
0.1.0 |
Opens a link in a separate window or in an external browser. The {URL} part must be replaced with the link URL. |
playlist:{URL}
|
playlist:http://msx.benzac.de/info/data/guide/videos.json
|
0.1.0 |
Loads a playlist without a corresponding content page. The |
playlist:data
|
playlist:data
|
0.1.0 |
Starts a playlist without a corresponding content page. The playlist data must be provided as |
slideshow:{URL}
|
slideshow:http://msx.benzac.de/info/data/guide/images.json
|
0.1.0 |
Loads a slideshow without a corresponding content page. The |
slideshow:data
|
slideshow:data
|
0.1.0 |
Starts a slideshow without a corresponding content page. The playlist data must be provided as |
menu:{URL}
|
menu:http://msx.benzac.de/info/data/guide/actions.json
|
0.1.0 |
Loads a menu. The |
menu:data
|
menu:data
|
0.1.0 |
Shows a menu. The menu data must be provided as |
content:{URL}
|
content:http://msx.benzac.de/info/data/guide/videos.json
|
0.1.0 |
Loads a content page. The |
content:data
|
content:data
|
0.1.0 |
Shows a content page. The content data must be provided as |
panel:{URL}
|
panel:http://msx.benzac.de/info/data/guide/panel.json
|
0.1.0 |
Loads a content page in a panel. The |
panel:data
|
panel:data
|
0.1.0 |
Shows a content page in a panel. The content data must be provided as |
success:{TEXT}
|
success:This is a success message.
|
0.1.0 |
Shows a success message. The |
info:{TEXT}
|
info:This is an info message.
|
0.1.0 |
Shows an info message. The |
warn:{TEXT}
|
warn:This is a warning message.
|
0.1.0 |
Shows a warning message. The |
error:{TEXT}
|
error:This is an error message.
|
0.1.0 |
Shows an error message. The |
focus:{ID}
|
focus:content_item_id
|
0.1.0 |
Sets the focus to a specific item in the current context. The |
focus:index:{INDEX}
|
focus:index:0
|
0.1.0 |
Sets the focus to a specific item in the current context. The |
start
|
start
|
0.1.30 |
Sets up a new start parameter. The start parameter data must be provided as data property by the corresponding content item. Please see Start Object for the data structure. |
video:plugin:{URL}
|
video:plugin:http://msx.benzac.de/plugins/template.html
|
0.1.40 |
Plays a plugin video. The |
audio:plugin:{URL}
|
audio:plugin:http://msx.benzac.de/plugins/template.html
|
0.1.40 |
Plays a plugin audio file. The |
HbbTV Actions[edit]
If you use the HbbTV version of Media Station X, you have additional actions available.
Syntax | Example | Since Version | Description |
---|---|---|---|
video:broadcast:current
|
video:broadcast:current
|
0.1.30 |
Plays the current broadcast channel. |
system:hbbtv:launch:{URL}
|
system:hbbtv:launch:http://msx.benzac.de/hbbtv.html
|
0.1.30 |
Launches a new HbbTV application. The |
For more information about the HbbTV specification, please visit https://www.hbbtv.org.
Server Actions[edit]
It is possible to execute actions on server side. For this feature, you need programming skills, because you need to implement a service for your server. Server actions allow you to provide logins, member areas, parental controls, search queries, and more. All server actions are sent as HTTP POST requests. Parallel server actions are not allowed (only one server action can be running on application side).
Note: The Content-Type
header for all HTTP POST requests is set to application/x-www-form-urlencoded
(instead of application/json
) to ensure CORS support for simple services (by avoiding CORS preflight requests). Please ignore the Content-Type
header on your server and handle all incoming data from the Media Station X application as JSON objects. Since version 0.1.90, you can set an accurate:
prefix before {URL}
to use the accurate headers (e.g. execute:accurate:{URL}
, execute:code:accurate:{URL}
, execute:user:accurate:{URL}
, etc.).
Syntax | Example | Since Version | Description |
---|---|---|---|
execute:{URL}
|
execute:http://msx.benzac.de/services/echo.php
|
0.1.30 |
Executes an action on server side and returns an action to be executed (e.g. to show a success/error message). The The returned action must be indicated as Note: If you return actions like Please see Responses for more information. |
execute:code:{URL}
|
execute:code:http://msx.benzac.de/services/echo.php
|
0.1.30 |
Executes an action on server side with an entered code and returns an action to be executed (e.g. to show a success/error message). The If the corresponding content item provides a
The returned action must be indicated as Note: If you return actions like Please see Responses for more information. |
execute:user:{URL}
|
execute:user:http://msx.benzac.de/services/echo.php
|
0.1.30 |
Executes an action on server side and returns an action to be executed (e.g. to show a success/error message). This action works in the same way as The
If you use HTTP sessions and your server manages them via cookies, you should always add the Note: For this action, the platform must support third-party cookies (a.k.a. cross-site tracking). Typically, this support can be enabled/disabled in the platform settings. Therefore, users should check whether this support is enabled on their platform before using this action. Additionally, please make sure you set the correct CORS HTTP header on server side (namely |
Extended Actions[edit]
These actions are useful when working with server actions (e.g. to perform a reload after login or to update content parts after successfully executing an action).
Syntax | Example | Since Version | Description |
---|---|---|---|
reload
|
reload
|
0.1.58 |
Reloads the application. |
reload:menu
|
reload:menu
|
0.1.58 | Reloads the current menu data.
Note: The menu data can only be reloaded if it has not been loaded via the start parameter or set via a data action. |
reload:content
|
reload:content
|
0.1.58 |
Reloads the current content data. Note: The content data can only be reloaded if it has not been loaded via the start parameter or set via a data action. |
reload:panel
|
reload:panel
|
0.1.58 |
Reloads the current panel content data. Note: The panel content data can only be reloaded if it has not been set via a data action. |
update:menu:{ID}
|
update:menu:menu_item_id
|
0.1.58 |
Updates the data of a menu item. The
Note: Only if the properties have been set (to a non Please see Menu Item Object for the data structure. |
update:content:{ID}
|
update:content:content_item_id
|
0.1.58 |
Updates the data of a content item. The
Note: Only if the properties have been set (to a non Please see Content Item Object for the data structure. |
update:content:overlay:{ID}
|
update:content:overlay:content_item_id
|
0.1.110 |
Updates the data of a content overlay item. The |
update:content:underlay:{ID}
|
update:content:underlay:content_item_id
|
0.1.112 |
Updates the data of a content underlay item. The |
update:panel:{ID}
|
update:panel:content_item_id
|
0.1.58 |
Updates the data of a panel content item. The |
update:panel:overlay:{ID}
|
update:panel:overlay:content_item_id
|
0.1.110 |
Updates the data of a panel content overlay item. The |
update:panel:underlay:{ID}
|
update:panel:underlay:content_item_id
|
0.1.112 |
Updates the data of a panel content underlay item. The |
data
|
data
|
0.1.58 |
This action can be used to execute multiple actions in a row. The actions must be provided as Note: If you use actions like |
[{ACTION}|{ACTION}|...]
|
[reload:content|info:Action executed.]
|
0.1.58 |
If an action starts with the character Note: If you use actions like |