Difference between revisions of "Live Object"
(36 intermediate revisions by the same user not shown) | |||
Line 13: | Line 13: | ||
"duration": 0, | "duration": 0, | ||
"delay": 0, | "delay": 0, | ||
− | " | + | "source": "url", |
− | |||
"coming": null, | "coming": null, | ||
"running": null, | "running": null, | ||
"over": null, | "over": null, | ||
"execute": null, | "execute": null, | ||
+ | "preload": true, | ||
"color": "msx-glass", | "color": "msx-glass", | ||
"title": "Item Title", | "title": "Item Title", | ||
Line 31: | Line 31: | ||
"badge": "Item Badge", | "badge": "Item Badge", | ||
"badgeColor": "msx-green", | "badgeColor": "msx-green", | ||
+ | "stamp": "Item Stamp", | ||
+ | "stampColor": "msx-yellow", | ||
"progress": -1, | "progress": -1, | ||
− | "progressColor": "msx- | + | "progressColor": "msx-blue", |
− | "wrapperColor": "msx- | + | "progressBackColor": "msx-black", |
+ | "wrapperColor": "msx-gray", | ||
"image": "http://link.to.image", | "image": "http://link.to.image", | ||
"extensionIcon": "blank", | "extensionIcon": "blank", | ||
Line 53: | Line 56: | ||
* <code>"lifetime"</code>: The object is live for a specific lifetime (starting from the creation timestamp), indicated by a duration and delay (i.e. the <code>duration</code> and <code>delay</code> properties). Possible states: <code>"init"</code>, <code>"coming"</code>, <code>"running"</code>, and <code>"over"</code>. | * <code>"lifetime"</code>: The object is live for a specific lifetime (starting from the creation timestamp), indicated by a duration and delay (i.e. the <code>duration</code> and <code>delay</code> properties). Possible states: <code>"init"</code>, <code>"coming"</code>, <code>"running"</code>, and <code>"over"</code>. | ||
* <code>"airtime"</code>: The object is live for a specific airtime (running for the visible time), indicated by a duration (i.e. the <code>duration</code> property). Possible states: <code>"init"</code>, <code>"running"</code>, and <code>"over"</code>. | * <code>"airtime"</code>: The object is live for a specific airtime (running for the visible time), indicated by a duration (i.e. the <code>duration</code> property). Possible states: <code>"init"</code>, <code>"running"</code>, and <code>"over"</code>. | ||
− | * <code>"playback"</code>: The object is live if the corresponding content item is currently being played. Possible states: <code>"init"</code>, <code>"running"</code>, and <code>"over"</code>. | + | * <code>"playback"</code>: The object is live if the corresponding content item is currently being played. Possible states: <code>"init"</code>, <code>"running"</code>, and <code>"over"</code>. Before version '''0.1.146''', this type can only be used if the corresponding content action is <code>video:{URL}</code> or <code>audio:{URL}</code>. Please note that in this case the corresponding content action URL is compared with the current player URL to check the live state. Since version '''0.1.146''', the <code>source</code> property can be used to define which property should be used to check the live state. |
* <code>"setup"</code>: The object is never live and has only the state <code>"init"</code>, but the live action (i.e. the <code>action</code> property) is executed if the corresponding content item becomes visible. | * <code>"setup"</code>: The object is never live and has only the state <code>"init"</code>, but the live action (i.e. the <code>action</code> property) is executed if the corresponding content item becomes visible. | ||
Line 78: | Line 81: | ||
'''Note: To use this property, the <code>type</code> property must be set to <code>"lifetime"</code>, otherwise this property is ignored.''' | '''Note: To use this property, the <code>type</code> property must be set to <code>"lifetime"</code>, otherwise this property is ignored.''' | ||
|- | |- | ||
− | | <code> | + | | <code>source</code> || <code>string</code> || <code>"url"</code> || No || data-sort-value=146|'''0.1.146''' || |
− | The | + | The source that defines which property should be used to check the playback live state. |
− | + | * <code>"id"</code>: The corresponding content item ID is used to check the live state. If the corresponding content item does not contain an ID, the current live object is removed. | |
− | + | * <code>"url"</code>: The corresponding content action URL is used to check the live state. If the corresponding content action is not set to <code>video:{URL}</code> or <code>audio:{URL}</code>, the current live object is removed. | |
− | + | * <code>"key"</code>: The corresponding content item extension property <code>resume:key</code> is used to check the live state. If the corresponding content item does not contain the extension property <code>resume:key</code>, the current live object is removed. | |
− | The URL | + | * <code>"current"</code>: The live object will never be in the state <code>"coming"</code>, but will be in the state <code>"running"</code> as soon as the player is ready. |
+ | * <code>"none"</code>: The live object will never be in the state <code>"running"</code>, but will be in the state <code>"coming"</code> if the corresponding content item contains the extension property <code>resume:key</code> and it is resumable. | ||
+ | |||
+ | Since version '''0.1.153''', you can also indicate a specific <code>"id"</code>, <code>"url"</code>, or <code>"key"</code> source. | ||
+ | |||
+ | * <code>"id:{ID}"</code>: The indicated content item ID is used to check the live state. | ||
+ | * <code>"url:{URL}"</code>: The indicated content action URL (i.e. <code>video:{URL}</code> or <code>audio:{URL}</code>) is used to check the live state. | ||
+ | * <code>"key:{KEY}"</code>: The indicated content <code>resume:key</code> is used to check the live state. | ||
+ | * <code>"resume:id:{ID}"</code>: The live object will never be in the state <code>"running"</code>, but will be in the state <code>"coming"</code> if the indicated content item ID is resumable. | ||
+ | * <code>"resume:url:{URL}"</code>: The live object will never be in the state <code>"running"</code>, but will be in the state <code>"coming"</code> if the indicated content action URL (i.e. <code>video:{URL}</code> or <code>audio:{URL}</code>) is resumable. | ||
+ | * <code>"resume:key:{KEY}"</code>: The live object will never be in the state <code>"running"</code>, but will be in the state <code>"coming"</code> if the indicated content <code>resume:key</code> is resumable. | ||
'''Note: To use this property, the <code>type</code> property must be set to <code>"playback"</code>, otherwise this property is ignored.''' | '''Note: To use this property, the <code>type</code> property must be set to <code>"playback"</code>, otherwise this property is ignored.''' | ||
Line 102: | Line 115: | ||
* <code>quartile3</code>: This sub-state object is used if the progress is in range of 0.5 to 0.75. | * <code>quartile3</code>: This sub-state object is used if the progress is in range of 0.5 to 0.75. | ||
* <code>quartile4</code>: This sub-state object is used if the progress is in range of 0.75 to 1.0. | * <code>quartile4</code>: This sub-state object is used if the progress is in range of 0.75 to 1.0. | ||
+ | |||
+ | Since version '''0.1.153''', this object can also contain following sub-state objects to use separate live content properties for specific states. | ||
+ | |||
+ | * <code>ready</code>: This sub-state object is used if the progress is exactly 0.0. If this object is not set, the <code>quartile1</code> object is used. It is typically used with live objects of type <code>"playback"</code>. | ||
+ | * <code>complete</code>: This sub-state object is used if the progress is exactly 1.0. If this object is not set, the <code>quartile4</code> object is used. It is typically used with live objects of type <code>"playback"</code>. | ||
'''Note: To use this property, the <code>type</code> property must be set to <code>"schedule"</code>, <code>"lifetime"</code>, <code>"airtime"</code>, or <code>"playback"</code>, otherwise this property is ignored. The live action will only be executed once, if the live object enters the state <code>"running"</code>. The sub-state objects do not support live actions. Since version 0.1.74, live objects of type <code>"playback"</code> can also contain the sub-state objects inside the <code>coming</code> property.''' | '''Note: To use this property, the <code>type</code> property must be set to <code>"schedule"</code>, <code>"lifetime"</code>, <code>"airtime"</code>, or <code>"playback"</code>, otherwise this property is ignored. The live action will only be executed once, if the live object enters the state <code>"running"</code>. The sub-state objects do not support live actions. Since version 0.1.74, live objects of type <code>"playback"</code> can also contain the sub-state objects inside the <code>coming</code> property.''' | ||
Line 114: | Line 132: | ||
'''Note: To use this property, the <code>type</code> property must be set to <code>"schedule"</code>, <code>"lifetime"</code>, <code>"airtime"</code>, or <code>"setup"</code>, otherwise this property is ignored. If this property is set inside a state object (i.e. <code>coming</code>, <code>running</code>, or <code>over</code>), it is used (instead of this one) if the live object has the corresponding state.''' | '''Note: To use this property, the <code>type</code> property must be set to <code>"schedule"</code>, <code>"lifetime"</code>, <code>"airtime"</code>, or <code>"setup"</code>, otherwise this property is ignored. If this property is set inside a state object (i.e. <code>coming</code>, <code>running</code>, or <code>over</code>), it is used (instead of this one) if the live object has the corresponding state.''' | ||
+ | |- | ||
+ | | <code>preload</code> || <code>boolean</code> || <code>true</code> || No || data-sort-value=156|'''0.1.156''' || | ||
+ | Indicates if the live object should be preloaded when reloading/replacing the content and the live object is visible. | ||
+ | |||
+ | '''Note: To use this property, the <code>type</code> property must be set to <code>"schedule"</code> or <code>"playback"</code>, otherwise this property is ignored.''' | ||
|- | |- | ||
| <code>color</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | | <code>color</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | ||
Line 175: | Line 198: | ||
|- | |- | ||
| <code>badgeColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | | <code>badgeColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | ||
+ | The live content property of the corresponding content item. | ||
+ | |- | ||
+ | | <code>stamp</code> || <code>string</code> || <code>null</code> || No || data-sort-value=146|'''0.1.146''' || | ||
+ | The live content property of the corresponding content item. | ||
+ | This property supports [[Live Inline Expressions]]. | ||
+ | |||
+ | '''Note: Only if the <code>stamp</code> property has been set (to a non <code>null</code> value) in the origin data of the corresponding content item, it can be updated.''' | ||
+ | |- | ||
+ | | <code>stampColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=146|'''0.1.146''' || | ||
The live content property of the corresponding content item. | The live content property of the corresponding content item. | ||
|- | |- | ||
Line 180: | Line 212: | ||
The live content property of the corresponding content item. | The live content property of the corresponding content item. | ||
− | '''Note: Only if the <code>progress</code> property has been set (to a non <code>null</code> value) in the origin data of the corresponding content item, it can be updated. By default, this property is automatically updated if the live object is in state <code>"running"</code>. If this property is set, it will not be updated automatically. Since version 0.1.74, this property is also automatically updated if the <code>type</code> property is set to <code>"playback"</code> and the corresponding content item contains the extension property <code>resume:key</code>.''' | + | '''Note: Only if the <code>progress</code> property has been set (to a non <code>null</code> value) in the origin data of the corresponding content item, it can be updated. By default, this property is automatically updated if the live object is in state <code>"running"</code>. If this property is set, it will not be updated automatically. Since version 0.1.74, this property is also automatically updated if the <code>type</code> property is set to <code>"playback"</code> and the corresponding content item contains the extension property <code>resume:key</code>. Since version 0.1.156, this property can be set to <code>-2</code> to explicitly enable auto-update (any other value is used as is).''' |
|- | |- | ||
| <code>progressColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | | <code>progressColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=70|'''0.1.70''' || | ||
+ | The live content property of the corresponding content item. | ||
+ | |- | ||
+ | | <code>progressBackColor</code> || <code>string</code> || <code>null</code> || No || data-sort-value=156|'''0.1.156''' || | ||
The live content property of the corresponding content item. | The live content property of the corresponding content item. | ||
|- | |- |
Latest revision as of 08:09, 18 April 2024
The live object can be used to periodically update content items (e.g. with live data, playback progress, etc.). It can have following states.
"init"
: The initial state. Possible next states:"coming"
,"running"
, or"over"
."coming"
: The object is not live yet or it was live before and can become live again. Possible next states:"running"
or"over"
."running"
: The object is live. Possible next states:"coming"
or"over"
."over"
: The object is not live anymore. Possible next states:"coming"
or"running"
.
{
"type": "schedule",
"from": 0,
"to": 0,
"duration": 0,
"delay": 0,
"source": "url",
"coming": null,
"running": null,
"over": null,
"execute": null,
"preload": true,
"color": "msx-glass",
"title": "Item Title",
"titleHeader": "Item Title Header",
"titleFooter": "Item Title Footer",
"label": "Item Label",
"icon": "blank",
"headline": "Item Headline",
"text": "Item Text",
"tag": "Item Tag",
"tagColor": "msx-red",
"badge": "Item Badge",
"badgeColor": "msx-green",
"stamp": "Item Stamp",
"stampColor": "msx-yellow",
"progress": -1,
"progressColor": "msx-blue",
"progressBackColor": "msx-black",
"wrapperColor": "msx-gray",
"image": "http://link.to.image",
"extensionIcon": "blank",
"extensionLabel": "Item Extension Label",
"action": null,
"data": null
}
Property | Type | Default Value | Mandatory | Since Version | Description |
---|---|---|---|---|---|
type |
string |
null |
No | 0.1.70 |
The type of the live object. If this property is not set, the current live object is removed.
Note: The live object is only evaluated if the corresponding content item is visible. If the corresponding content item is visible, the live object is evaluated every second, regardless of the current state. Since version 0.1.74, live objects of type |
from |
number |
0 |
No | 0.1.70 |
The start timestamp of the live object in milliseconds. The value must be greater or equal than Note: To use this property, the |
to |
number |
0 |
No | 0.1.70 |
The end timestamp of the live object in milliseconds. The value must be greater or equal than Note: To use this property, the |
duration |
number |
0 |
No | 0.1.70 |
The duration of the live object in milliseconds. The value must be greater or equal than Note: To use this property, the |
delay |
number |
0 |
No | 0.1.70 |
The delay of the live object in milliseconds. The value must be greater or equal than Note: To use this property, the |
source |
string |
"url" |
No | 0.1.146 |
The source that defines which property should be used to check the playback live state.
Since version 0.1.153, you can also indicate a specific
Note: To use this property, the |
coming |
object |
null |
No | 0.1.70 |
The state object that contains the live content properties (e.g. Note: To use this property, the |
running |
object |
null |
No | 0.1.70 |
The state object that contains the live content properties (e.g. This object can also contain following sub-state objects to use separate live content properties for specific quartiles.
Since version 0.1.153, this object can also contain following sub-state objects to use separate live content properties for specific states.
Note: To use this property, the |
over |
object |
null |
No | 0.1.70 |
The state object that contains the live content properties (e.g. Note: To use this property, the |
execute |
object |
null |
No | 0.1.74 |
The execution object that contains the live action that is executed if the corresponding content action is set to Note: To use this property, the |
preload |
boolean |
true |
No | 0.1.156 |
Indicates if the live object should be preloaded when reloading/replacing the content and the live object is visible. Note: To use this property, the |
color |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. |
title |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
titleHeader |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
titleFooter |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
label |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
icon |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. Note: Only if the |
headline |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
text |
string |array |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
tag |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
tagColor |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. |
badge |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
badgeColor |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. |
stamp |
string |
null |
No | 0.1.146 |
The live content property of the corresponding content item. This property supports Live Inline Expressions. Note: Only if the |
stampColor |
string |
null |
No | 0.1.146 |
The live content property of the corresponding content item. |
progress |
number |
-1 |
No | 0.1.70 |
The live content property of the corresponding content item. Note: Only if the |
progressColor |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. |
progressBackColor |
string |
null |
No | 0.1.156 |
The live content property of the corresponding content item. |
wrapperColor |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. |
image |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. Note: Only if the |
extensionIcon |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. Note: Only if the |
extensionLabel |
string |
null |
No | 0.1.70 |
The live content property of the corresponding content item. Note: Only if the |
action |
string |
null |
No | 0.1.70 |
The live action that is executed if the Note: If this property is set inside a state object (i.e. |
data |
object |
null |
No | 0.1.70 |
The additional data of the live action that is used if the action is executed. |