top

AllShare API Reference (ASF 0.4)

Published 2014-05-22 | API Reference. (Compatible with SDK 3.5 and 2012 models)

This chapter defines a set of application interface used for developing convergence services such as contents sharing, device control, etc.

Note

This document contains information about AllShare API compatible with Samsung SDK 3.5 only. Please visit AllShare API Reference (ASF1.5) in order to see information written for Samsung SDK 4.0 version and higher.

This chapter defines a set of application interface used for developing convergence services such as contents sharing, device control, etc. An AllShare API can be defines as an application interface with which a widget application can use a set of features provided by other devices. This chapter provides the functionalities which are applicable to all types of devices including:

  • Share media between different devices
  • Discovery devices distributed in a home network
  • Provide access control to different pre-defined devices

AllShare APIs applicable to DTV devices consist of 6 modules including device, devicefinder, item, mediasharing, provider, and servicepias modules. The device module represents all types of the devices located on local and remote network. This device module can be a DLNA device such as a digital media server (DMS) device, a digital media renderer (DMS) device, and a local device in the DLNA domain. Developers can get a set of information including its name, identification, etc through interfaces in this module. The provider module is a specific type of device that shares its media contents to other devices. Developers can browse or search media contents shared by the provider device thought interfaces in this module. Additionally, developers can get a set of device information for the provider device. These devices can be discovered by using interfaces defined in the devicefinder module. The devicefinder module provides features with which developers can discover any types of devices providing services such as media sharing, device controlling, etc. The item module represents any types of shared media provided by a provider device. The item can be a folder, image, audio, and video. Through interfaces in this module, developers can get meta-data for the items and information on how to access the media contents. The serviceapis module provides a general mechanism such as error handling specific for the AllShare APIs. The interfaces defined by this AllShare APIs are the below:

ModuleInerfaceDescription
devicefinderprovides access to device discovery features
providerprovides access to contents browsing and searching
deviceprovides generic features common for all types of devices
itemprovides access to contents’ meta data retrieval features
serviceapisprovides generic features common for all the AllShare APIs
mediasharinginternally used for aggregating devicefinder interfaces into serviceapis module

Developers can use the APIS defined in the devicefinder modules through the window object provided by web browsers based on the following interface hierarchy. The Window interface whose instance is provided by web browser implements the ServiceapisObject interface. The Serviceapis interface that is defined as an attribute of the ServiceapisObject interface implements the ServiceapisMediaSharing interface which has an attribute object whose type is the Mediasharing interface.

For example, a widget code discovering provider devices might be like the below:

var devFinder = serviceapis.mediasharing.mediaproviderfinder;
var providerList = devFinder.getMediaProviders();

The above service modules refer to the deviceapis module for asynchronous invocation mechanisms. The deviceapis module provides generic success and error callback interfaces that are used for several AllShare APIs. In addition the deviceapis module provides a function with which a widget application can cancel its asynchronous call during its execution by providing the PendingOperation interface.

InterfaceDescription
SuccessCallbackused in functions not requiring any return value in the success callback
ErrorCallbackused in functions requiring only an error as an input parameter in the error callback
PendingOperationAn object representing the pending operation of an asynchronous call. Interface that is returned by asynchronous operations in order to provide a cancellation operation.
FeatureProvides all the information about a feature
ParamRepresents a parameter linked to a feature

Additionally, the AllShare APIs uses basic type definitions defined by the deviceapis module. The type definition includes the below:

Type definitionDescription
StringArrayArray of DOMStrings.
UnsignedShortArrayArray of unsigned short values.
ShortArrayArray of short values.
FeatureArrayArray of Feature IRIs.
ParamArray of Feature parameters.

The interfaces provided by this AllShare APIs are based on the JAVA APIs defined by ASF 0.4. This AllShare APIs will be updated as the ASF APIs’ update.