Tal Versions Save

TV Application Layer

10.0.0

5 years ago

Previous releases offered a method on the Historian object, hasBroadcastOrigin(), returning true or false. This relied on an entry in the URL hash fragment that looked like &*history=broadcast, which you would have needed to add to your application's URL yourself for the method ever to return true. The result of hasBroadcastOrigin() was also used internally to affect the result of calling isBroadcastSourceSupported() on the HbbTV broadcast source implementation, and to offer different exit implementations for certain devices.

This release removes the hasBroadcastOrigin() method from Historian, moving it up to the Application level instead and changing all callers within TAL. Behind the scenes it now relies on a URL query parameter, broadcast=true, which is less likely to be dropped (e.g. during HTTP 302 redirects) by troublesome devices.

This is a breaking change if you ever called hasBroadcastOrigin() explicitly on the Historian object, or you were appending &*history=broadcast to the URL hash fragment. You will now need to call hasBroadcastOrigin() on Application, and pass a query parameter broadcast=true instead.

Example: http://myawesometvapp.com/?broadcast=true

9.2.0

5 years ago

add GetChannelName logic so some elements can be accessed by a partner.

9.1.3

5 years ago

9.1.2

5 years ago

Adding astrasource.js

9.0.0

5 years ago

The MediaPlayer setSource method has been renamed initialiseMedia (more representative of what it does).

This method now has a new parameter sourceContainer. This is a required parameter, and is DOM element which you require the media to be rendered into.

In order to simply retain functionality from previous versions, you can pass RuntimeContext.getCurrentApplication().getRootWidget().outputElement in as the sourceContainer.

Note: only HTML5 devices will utilise the container to render the video. Samsung and CEHTML will continue to render the video fullscreen in the background.

Usage:

Before (<9.0.0):

mediaPlayer.setSource('video', 'http://sourceURL', 'video/mp4', {disableSentinels: true});

After (9.0.0):

var mediaContainer = RuntimeContext.getCurrentApplication().getRootWidget().outputElement;
mediaPlayer.initialiseMedia('video', 'http://sourceURL', 'video/mp4', mediaContainer, {disableSentinels: true});

Samsung broadcast changes - detail to follow.

8.2.1

5 years ago

Includes bug fixes from 8.2.0.

8.2.0

5 years ago

8.1.2

6 years ago

8.1.1

6 years ago

tal-page-strategies used to be sourced from GitHub, now they're from NPM

8.1.0

6 years ago

See #459 for more info.

JSON should be available on all devices correctly running ES5 (has been a requirement of TAL since 5.0.0) and is easily polyfill-able on devices where it is not present.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON