Player events
From A-SMIL.org
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> </subscription> </subscriptionList> </x-server> </metadata> </head>
Here "http://server/webdav_path" is the path to the WebDAV-enabled direction on your log server.
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>
Event Listed by Event Source
Player events listed by different event sources as below :
Source : Content Manager
- 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 removed
- 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:
- 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
MEDIA_NOT_AVAILABLE Event
- eventType:
- error
- meta "resourceURI":
- URI for the file that is not available
MEDIA_OPEN_ERROR Event
- eventType:
- error
- meta "resourceURI":
- URI for the file that fails to open
MEDIA_PLAYBACK_ERROR Event
- eventType:
- error
- meta "resourceURI":
- URI for the file that fails to play