Difference between revisions of "Player events"
From A-SMIL.org
(→Source : MediaControl) |
|||
(9 intermediate revisions by the same user not shown) | |||
Line 27: | Line 27: | ||
<type>EventlogCollection</type> | <type>EventlogCollection</type> | ||
<action>http://server/webdav_path</action> | <action>http://server/webdav_path</action> | ||
− | <method>put</method> | + | <method>put</method> |
+ | <refreshInterval>3600</refreshInterval> | ||
+ | <retryInterval>3600</retryInterval> | ||
</subscription> | </subscription> | ||
</subscriptionList> | </subscriptionList> | ||
Line 36: | Line 38: | ||
Here "http://server/webdav_path" is the path to the WebDAV-enabled direction on your log server. | Here "http://server/webdav_path" is the path to the WebDAV-enabled direction on your log server. | ||
− | + | The refresh interval can be adjusted by adding an extra <refreshInterval> tag, this can control the report update frequency. | |
A log file named in the format <TT>event-{time-based-uuid}.xml</TT> will be placed in the server path by the player. | A log file named in the format <TT>event-{time-based-uuid}.xml</TT> will be placed in the server path by the player. | ||
Line 99: | Line 101: | ||
<dd><tt>informational</tt> | <dd><tt>informational</tt> | ||
<dt>meta "resourceURI": | <dt>meta "resourceURI": | ||
− | <dd>URI for the object that | + | <dd>URI for the object that updated |
<dt>meta "contentLength": | <dt>meta "contentLength": | ||
<dd>content length in bytes | <dd>content length in bytes | ||
− | <dt>meta | + | <dt>meta "lastModifiedTime": |
<dd>object last modified time | <dd>object last modified time | ||
</dl> | </dl> | ||
Line 124: | Line 126: | ||
</div> | </div> | ||
<br> | <br> | ||
+ | <div style="background-color:#ffffc0;text-align:left;border-style:dashed;border-color:#808080;border-width:1px;font-size:normal"> | ||
+ | <dl> | ||
+ | <dt>event: | ||
+ | <dd>FETCH_FAILED : E_CHECKSUM_NOT_MATCHED | ||
+ | <dt>eventType: | ||
+ | <dd><tt>error</tt> | ||
+ | <dt>meta "xmp:errorMessage": | ||
+ | <dd>E_CHECKSUM_NOT_MATCHED | ||
+ | <dt>meta "md5": | ||
+ | <dd>MD5 calculated from downloaded media | ||
+ | </dl> | ||
+ | </div> | ||
+ | <br> | ||
+ | |||
<div style="background-color:#ffffc0;text-align:left;border-style:dashed;border-color:#808080;border-width:1px;font-size:normal"> | <div style="background-color:#ffffc0;text-align:left;border-style:dashed;border-color:#808080;border-width:1px;font-size:normal"> | ||
<dl> | <dl> | ||
Line 132: | Line 148: | ||
<dt>meta "resourceURI": | <dt>meta "resourceURI": | ||
<dd>URI for the object that removed | <dd>URI for the object that removed | ||
− | <dt>meta | + | <dt>meta "lastModifiedTime": |
<dd>object last modified time | <dd>object last modified time | ||
<dt>meta "contentLength": | <dt>meta "contentLength": | ||
Line 141: | Line 157: | ||
</div> | </div> | ||
<br> | <br> | ||
+ | |||
+ | |||
---- | ---- | ||
+ | |||
=== Source : MediaPlayer === | === Source : MediaPlayer === | ||
<div style="background-color:#ffffc0;text-align:left;border-style:dashed;border-color:#808080;border-width:1px;font-size:normal"> | <div style="background-color:#ffffc0;text-align:left;border-style:dashed;border-color:#808080;border-width:1px;font-size:normal"> | ||
Line 186: | Line 205: | ||
<dd><tt>informational</tt> | <dd><tt>informational</tt> | ||
<dt>meta "instanceId": | <dt>meta "instanceId": | ||
− | <dd> | + | <dd>fixed value:"display:0" |
<dt>meta "resourceURI": | <dt>meta "resourceURI": | ||
<dd>URI for the object that loaded | <dd>URI for the object that loaded | ||
Line 203: | Line 222: | ||
<dd><tt>informational</tt> | <dd><tt>informational</tt> | ||
<dt>meta "instanceId": | <dt>meta "instanceId": | ||
− | <dd> | + | <dd>fixed value:"display:0" |
<dt>meta "resourceURI": | <dt>meta "resourceURI": | ||
<dd>URI for the object that not available | <dd>URI for the object that not available | ||
Line 216: | Line 235: | ||
<dd><tt>error</tt> document error (too large, syntax error, other errors), other internal errors | <dd><tt>error</tt> document error (too large, syntax error, other errors), other internal errors | ||
<dt>meta "instanceId": | <dt>meta "instanceId": | ||
− | <dd> | + | <dd>fixed value:"display:0" |
<dt>meta "resourceURI": | <dt>meta "resourceURI": | ||
<dd>URI for the object that loaded | <dd>URI for the object that loaded | ||
<dt>meta "contentLength": | <dt>meta "contentLength": | ||
<dd>object length in bytes | <dd>object length in bytes | ||
− | <dt>meta | + | <dt>meta "lastModifiedTime": |
<dd>object last modified time | <dd>object last modified time | ||
</dl> | </dl> | ||
Line 267: | Line 286: | ||
<dl> | <dl> | ||
<dt>event: | <dt>event: | ||
− | <dd> | + | <dd>TIME_SYNCHRONIZATION_ERROR |
<dt>eventType: | <dt>eventType: | ||
<dd><tt>warning</tt> | <dd><tt>warning</tt> | ||
Line 277: | Line 296: | ||
</div> | </div> | ||
<br> | <br> | ||
+ | |||
== Related == | == Related == | ||
* [[Inventory reporting]] | * [[Inventory reporting]] | ||
* [[Play logs]] | * [[Play logs]] |
Latest revision as of 06:44, 12 June 2014
A-SMIL players can report on various events happening to a player, such as :
- Download failure (event FETCH_FAILED):
- occurs when a file cannot be downloaded due to network failure or URL not found.
- File not found error (event MEDIA_NOT_AVAILABLE):
- occurs when file does not exist in player's storage. This can happen due to insufficient space which causes the player's storage "garbage collector" erasing files least-recently-used (LRU).
- Media format error (event MEDIA_OPEN_ERROR):
- occurs when the header information of the media file describes a format not supported by the player.
- Media contents error (event MEDIA_PLAYBACK_ERROR):
- occurs during playback of a media file, most likely due to a corrupt media stream.
Contents
Designating a URL for Reporting
In your SMIL script, you need to add a section to your head section to define where the media player should upload its logs. For event reporting it should looks like this.
<head> <metadata> <x-server xmlns="http://schemas.adfotain.org/adapi-1.0"> <subscriptionList> <subscription> <type>EventlogCollection</type> <action>http://server/webdav_path</action> <method>put</method> <refreshInterval>3600</refreshInterval> <retryInterval>3600</retryInterval> </subscription> </subscriptionList> </x-server> </metadata> </head>
Here "http://server/webdav_path" is the path to the WebDAV-enabled direction on your log server. The refresh interval can be adjusted by adding an extra <refreshInterval> tag, this can control the report update frequency. A log file named in the format event-{time-based-uuid}.xml will be placed in the server path by the player.
Event Report Format
The A-SMIL event report uploaded to the server looks like this.
<report xmlns="http://schemas.adfotain.org/adapi-1.0"> <date>{createDate}</date> <version>1.0</version> <player id="{playerId}"> <playerEventLog> <event> <eventType>informational|warning|error|critical</eventType> <eventTime>{eventTime}</eventTime> <eventSource>{moduleName}</eventSource> <eventName>{eventEnumName}</eventName> <metadata> <meta name="{meta1-name}" content="{meta1-content}"/> <meta .../> </metadata> </event> </playerEventLog> </player> </report>
Player Event Listed by Event Source
Player events listed by different event sources as below :
Source : ContentManager
- event:
- LRU_OBJECT_REMOVED
- eventType:
- informational if lastAccessTime is before 30 days
- meta "resourceURI":
- URI for the object that removed
- meta "lastAccessTime":
- object last access time
- event:
- OBJECT_REMOVED
- eventType:
- informational
- meta "resourceURI":
- URI for the object that removed
- event:
- OBJECT_UPDATED
- eventType:
- informational
- meta "resourceURI":
- URI for the object that updated
- meta "contentLength":
- content length in bytes
- meta "lastModifiedTime":
- object last modified time
- event:
- FETCH_FAILED
- eventType:
- error if no other versions available in cache; warning if an earlier version exists
- meta "resourceURI":
- URI for the file that failed to transfer
- meta "transferLength":
- Number of bytes transferred so far
- meta "lastCachedLength":
- If a previous version exists, its length in bytes
- meta "lastCachedModifiedTime":
- If a previous version exists, its modified time
- event:
- FETCH_FAILED : E_CHECKSUM_NOT_MATCHED
- eventType:
- error
- meta "xmp:errorMessage":
- E_CHECKSUM_NOT_MATCHED
- meta "md5":
- MD5 calculated from downloaded media
- event:
- BROKEN_OBJECT_REMOVED
- eventType:
- warning
- meta "resourceURI":
- URI for the object that removed
- meta "lastModifiedTime":
- object last modified time
- meta "contentLength":
- content length in bytes
- meta "transferLength":
- actual file size; -1 means file not found
Source : MediaPlayer
- event:
- MEDIA_NOT_AVAILABLE
- eventType:
- error
- meta "resourceURI":
- URI for the object that not available
- event:
- MEDIA_OPEN_ERROR
- eventType:
- error
- meta "resourceURI":
- URI for the object that fails to open
- event:
- MEDIA_PLAYBACK_ERROR
- eventType:
- error
- meta "resourceURI":
- URI for the object that fails to play
Source : MediaControl
- event:
- SMIL_LOADED
- eventType:
- informational
- meta "instanceId":
- fixed value:"display:0"
- meta "resourceURI":
- URI for the object that loaded
- meta "contentLength":
- object length in bytes
- meta "lastModifiedTime":
- object last modified time
- event:
- SMIL_NOT_AVAILABLE
- eventType:
- informational
- meta "instanceId":
- fixed value:"display:0"
- meta "resourceURI":
- URI for the object that not available
- event:
- SMIL_OPEN_ERROR
- eventType:
- error document error (too large, syntax error, other errors), other internal errors
- meta "instanceId":
- fixed value:"display:0"
- meta "resourceURI":
- URI for the object that loaded
- meta "contentLength":
- object length in bytes
- meta "lastModifiedTime":
- object last modified time
Source : System
- event:
- STORAGE_FORMATTED
- eventType:
- warning
- event:
- STORAGE_TRUNCATED
- eventType:
- warning
Source : TimeService
- event:
- TIME_SYNCHRONIZED
- eventType:
- informational
- meta "protocol":
- Time synchornization protocol ( http | rdate )
- meta "server":
- URI for the time server
- meta "adjustment":
- the time being adjusted after syhchronization
- event:
- TIME_SYNCHRONIZATION_ERROR
- eventType:
- warning
- meta "protocol":
- Time synchornization protocol ( http | rdate )
- meta "server":
- URI for the time server