Migrating SSSP to Tizen Enterprise Platform
This topic describes how to convert SSSP Web applications to Tizen Web applications.
Related Info
Starting with Tizen 6.5, Samsung is not releasing any further enhancements to the Samsung Smart Signage Platform (SSSP), and the SSSP is going to be deprecated starting with Tizen 7.5. To fulfill the needs of Samsung signage partners and to replace the SSSP, Samsung has launched new Tizen Samsung Product APIs in Tizen 6.5. These new Tizen APIs are extensions of the Tizen Web Device API.
This guide describes the differences between the SSSP APIs and the Tizen Samsung Product APIs in the followig sections.
New Samsung Product APIs
Tizen 6.5 includes the following new APIs:
These APIs provide similar features as the SSSP except for functionalities not supported in Samsung devices based on Tizen 6.5. Some features, especially getting network information, are performed via the already existing Tizen Samsung Product APIs. For more details, see SSSP API vs. Tizen Samsung Product API and the API references.
Privileges
To use security-sensitive APIs, you must declare the required privileges and sign your application with a certificate for the appropriate privilege level. The new Tizen Samsung Product APIs are all partner-privileged APIs and you need to add their privileges to the "config.xml" file when developing applications. For the detailed privilege information and information on how to add privileges, see Configuring Web Applications.
Samsung Product API JavaScript File
The SSSP Web APIs are packaged as a JavaScript file separated from the Samsung Product APIs. The package file is called "b2bapis.js". The new APIs, on the other hand, are provided as a single JavaScript package file, called "webapis.js", with other Samsung Product APIs.
-
To use the SSSP APIs, "b2bapis.js" must be loaded in the "index.html" file:
<script type="text/javascript" src="$B2BAPIS/b2bapis/b2bapis.js"></script>
-
To use the Samsung Product API, "webapis.js" needs to be loaded in "index.html" file:
<script type="text/javascript" src="$WEBAPIS/webapis/webapis.js"></script>
API Differences
The following table shows the interface mapping between the SSSP API interfaces and the Tizen Web API interfaces.
SSSP API | Tizen API | Since |
---|---|---|
B2BDoc API | Document API | |
B2BControl API | AvInfo API | |
Network API | ||
ProductInfo API | ||
SystemControl API | ||
Timer API | ||
B2BSyncplay API | Syncplay API |
B2BDoc API and Document API
The following table shows the methods mapping between the SSSP B2BDoc API and the Tizen Samsung Product Document API .
SSSP API | Tizen API |
---|---|
b2bapis.b2bdoc.openDoc()
|
webapis.document.open()
|
b2bapis.b2bdoc.closeDoc()
|
webapis.document.close()
|
b2bapis.b2bdoc.playDoc()
|
webapis.document.play()
|
b2bapis.b2bdoc.stopDoc()
|
webapis.document.stop()
|
b2bapis.b2bdoc.prevPageDoc()
|
webapis.document.prevPage()
|
b2bapis.b2bdoc.nextPageDoc()
|
webapis.document.nextPage()
|
b2bapis.b2bdoc.gotoPageDoc()
|
webapis.document.gotoPage()
|
b2bapis.b2bdoc.pauseDoc()
|
webapis.document.pause()
|
b2bapis.b2bdoc.resumeDoc()
|
webapis.document.resume()
|
b2bapis.b2bdoc.setVerticalDoc()
|
webapis.document.setDocumentOrientation()
|
b2bapis.b2bdoc.gotoPageDoc()
|
webapis.document.gotoPage()
|
Table 2. B2BDoc API methods and corresponding Document API methods
B2BControl API and Tizen APIs
The following tabled shows the methods mapping between the SSSP B2BControl API and the Samsung Product AvInfo API, the Network API, the SystemControl API, and the Timer API.
The new Tizen APIs corresponding to the SSSP B2BControl API provide following features:
- Network control
- Remote management
- Power control
- Firmware management
- Time management
- Network setting features
- The features excluded from the Samsung devices since Tizen 6.5.
Network Control
SSSP API | Tizen API |
---|---|
b2bapis.b2bcontrol.getMACAddress()
|
webapis.network.getMac()
|
b2bapis.b2bcontrol.getIPConfigType()
|
webapis.nework.getIpMode()
|
b2bapis.b2bcontrol.setIPConfigType()
|
Not supported |
b2bapis.b2bcontrol.getIPAddress()
|
webapis.network.getIp()
|
b2bapis.b2bcontrol.setIPAddress()
|
Not supported |
b2bapis.b2bcontrol.getSubNetMask()
|
webapis.network.getSubnet()
|
b2bapis.b2bcontrol.setSubnetMask()
|
Not supported |
b2bapis.b2bcontrol.getGatewayAddress()
|
webapis.network.getGateway()
|
b2bapis.b2bcontrol.setGatewayAddress()
|
Not supported |
b2bapis.b2bcontrol.getDNSServer()
|
webapis.network.getDns()
|
b2bapis.b2bcontrol.setDNSServer()
|
Not supported |
b2bapis.b2bcontrol.getProxyserverInfo()
|
|
b2bapis.b2bcontrol.setProxyserverInfo()
|
Table 3. SSSP B2BControl API and Tizen API - Network control
Remote Management
SSSP API | Tizen API |
---|---|
b2bapis.b2bcontrol.getSerialNumber()
|
webapis.systemcontrol.getSerialNumber()
|
b2bapis.b2bcontrol.getProductType()
|
Not supported |
b2bapis.b2bcontrol.getLampSchedule()
|
webapis.systemcontrol.getScreenLampSchedule()
|
b2bapis.b2bcontrol.setLampSchedule()
|
webapis.systemcontrol.setScreenLampSchedule()
|
b2bapis.b2bcontrol.getIRLockStatus()
|
Not supported |
b2bapis.b2bcontrol.setIRLockOnOff()
|
|
b2bapis.b2bcontrol.getButtonLockStatus()
|
|
b2bapis.b2bcontrol.setButtonLock()
|
|
b2bapis.b2bcontrol.getPanelMuteStatus()
|
webapis.systemcontrol.getPanelMute()
|
b2bapis.b2bcontrol.setPanelMute()
|
webapis.systemcontrol.setPanelMute()
|
b2bapis.b2bcontrol.getSafetyLock()
|
webapis.systemcontrol.getSafetyLock()
|
b2bapis.b2bcontrol.setSafetyLock()
|
webapis.systemcontrol.setSafetyLock()
|
b2bapis.b2bcontrol.getMenuOrientation()
|
webapis.systemcontrol.getOnScreenMenuOrientation()
|
b2bapis.b2bcontrol.setMenuOrientation()
|
Not supported |
b2bapis.b2bcontrol.getSourceOrientation()
|
webapis.systemcontrol.getSourceOrientation()
|
b2bapis.b2bcontrol.setSourceOrientation()
|
Not supported |
b2bapis.b2bcontrol.getSafetyScreen()
|
|
b2bapis.b2bcontrol.setSafetyScreen()
|
|
b2bapis.b2bcontrol.getOsdMute()
|
webapis.systemcontrol.getMessageDisplay()
|
b2bapis.b2bcontrol.setOsdMute()
|
webapis.systemcontrol.setMessageDisplay()
|
b2bapis.b2bcontrol.getPCConnection()
|
webapis.systemcontrol.getPCConnection()
|
b2bapis.b2bcontrol.setPCConnection()
|
webapis.systemcontrol.setPCConnection()
|
b2bapis.b2bcontrol.getEcoSensor()
|
Not supported |
b2bapis.b2bcontrol.setEcoSensor()
|
|
b2bapis.b2bcontrol.getAlarmTemperature()
|
|
b2bapis.b2bcontrol.setAlarmTemperature()
|
|
b2bapis.b2bcontrol.getSpeakerType()
|
webapis.avinfo.getSpeakerSelection()
|
b2bapis.b2bcontrol.setSpeakerType()
|
webapis.avinfo.setSpeakerSelection()
|
b2bapis.b2bcontrol.getCurrentTemperature()
|
Not supported |
b2bapis.b2bcontrol.startNodeServer()
|
|
b2bapis.b2bcontrol.stopNodeServer()
|
|
b2bapis.b2bcontrol.collectLogs()
|
|
b2bapis.b2bcontrol.getSystemUpTime()
|
|
b2bapis.b2bcontrol.getNetPIP()
|
|
b2bapis.b2bcontrol.setNetPIP()
|
|
b2bapis.b2bcontrol.getURLLauncherAddress()
|
|
b2bapis.b2bcontrol.setURLLauncherAddress()
|
|
b2bapis.b2bcontrol.getURLLauncherTimeOut()
|
|
b2bapis.b2bcontrol.setURLLauncherTimeOut()
|
|
b2bapis.b2bcontrol.getMagicInfoServerUrl()
|
|
b2bapis.b2bcontrol.setMagicInfoServerUrl()
|
Table 4. SSSP B2BControl API and Tizen API - Remote management
Power Control
SSSP API | Tizen API |
---|---|
b2bapis.b2bcontrol.rebootDevice()
|
webapis.systemcontrol.rebootDevice()
|
b2bapis.b2bcontrol.setPowerOff()
|
Not supported |
b2bapis.b2bcontrol.getAutoPowerOn()
|
|
b2bapis.b2bcontrol.setAutoPowerOn()
|
|
b2bapis.b2bcontrol.getMaxPowerSaving()
|
|
b2bapis.b2bcontrol.setMaxPowerSaving()
|
|
b2bapis.b2bcontrol.getEnergySavingMode()
|
|
b2bapis.b2bcontrol.setEnergySavingMode()
|
|
b2bapis.b2bcontrol.getNoSignalPowerOff()
|
|
b2bapis.b2bcontrol.setNoSignalPowerOff()
|
|
b2bapis.b2bcontrol.getStandby()
|
|
b2bapis.b2bcontrol.setStandby()
|
|
b2bapis.b2bcontrol.getNetworkStandby()
|
|
b2bapis.b2bcontrol.setNetworkStandby()
|
Table 5. SSSP B2BControl API and Tizen API - Power control
Firmware Management
SSSP API | Tizen API |
---|---|
b2bapis.b2bcontrol.getFirmwareVersion()
|
webapis.systemcontrol.getFirmwareVersion()
|
b2bapis.b2bcontrol.updateFirmware()
|
webapis.systemcontrol.updateFirmware()
|
b2bapis.b2bcontrol.setUpdateFirmwareProgressChangeListener()
|
webapis.systemcontrol.setUpdateFirmwareListener()
|
b2bapis.b2bcontrol.unsetUpdateFirmwareProgressChangeListener()
|
webapis.systemcontrol.unsetUpdateFirmwareListener()
|
Table 6. SSSP B2BControl API and Tizen API - Firmware management
Time Management
SSSP API | Tizen API |
---|---|
b2bapis.b2bcontrol.getCurrentTime()
|
webapis.timer.getCurrentTime()
|
b2bapis.b2bcontrol.setCurrentTime()
|
webapis.timer.setCurrentTime()
|
b2bcontrol.getOnTimer()
|
webapis.timer.getOnTimer()
|
b2bapis.b2bcontrol.getOnTimerVolume()
|
|
b2bapis.b2bcontrol.getOnTimerRepeat()
|
|
b2bapis.b2bcontrol.setOnTimer()
|
webapis.timer.setOnTimer()
|
b2bapis.b2bcontrol.setOnTimerVolume()
|
|
b2bapis.b2bcontrol.setOnTimerRepeat()
|
|
b2bcontrol.getOffTimer()
|
webapis.timer.getOffTimer()
|
b2bapis.b2bcontrol.getOffTimerRepeat()
|
|
b2bapis.b2bcontrol.setOffTimer()
|
webapis.timer.setOffTimer()
|
b2bapis.b2bcontrol.setOffTimerRepeat()
|
|
b2bapis.b2bcontrol.getHolidayList()
|
webapis.timer.getTimerHoliday()
|
b2bapis.b2bcontrol.getHolidayToTimer()
|
|
b2bapis.b2bcontrol.setHolidayList()
|
webapis.timer.addHoliday() webapis.timer.deleteHoliday() webapis.imer.applyTimerHoliday()
|
b2bapis.b2bcontrol.setHolidayToTimer()
|
|
b2bapis.b2bcontrol.getDSTMode()
|
webapis.timer.getDST()
|
b2bapis.b2bcontrol.getDSTTimeOffset()
|
|
b2bapis.b2bcontrol.setDSTMode()
|
webapis.timer.setDST()
|
b2bapis.b2bcontrol.setDSTTimeOffset()
|
|
b2bapis.b2bcontrol.getNTPUse()
|
webapis.timer.getNTP()
|
b2bapis.b2bcontrol.getNTPServerAddress()
|
|
b2bapis.b2bcontrol.getCurrentTimeZone()
|
|
b2bapis.b2bcontrol.setNTPUse()
|
webapis.timer.setNTP()
|
b2bapis.b2bcontrol.setNTPServerAddress()
|
|
b2bapis.b2bcontrol.setCurrentTimeZone()
|
|
b2bapis.b2bcontrol.getSystemTimeSyncTimeout()
|
webapis.timer.getSystemTimeSyncTimeout()
|
b2bapis.b2bcontrol.setSystemTimeSyncTimeout()
|
webapis.timer.setSystemTimeSyncTimeout()
|
Table 7. SSSP B2BControl API and Tizen API - Time management
B2BSyncplay API and Syncplay API
The following table shows the methods mapping between the SSSP B2BSync API and the Samsung Product Syncplay API .
SSSP API | Tizen API |
---|---|
b2bapis.b2bsyncplay.startSyncPlay()
|
webapis.syncplay.start()
|
b2bapis.b2bsyncplay.stopSyncPlay()
|
webapis.syncplay.stop()
|
b2bapis.b2bsyncplay.makeSyncPlayList()
|
webapis.syncplay.createPlaylist()
|
b2bapis.b2bsyncplay.clearSyncPlayList()
|
webapis.syncplay.removePlaylist()
|
Table 8. B2BSync API methods and corresponding Syncplay API methods
Prerequisites for Migration
- To use the new Samune Product APIs, partner level certificate is required.
- In "config.xml", set
required_version
to "6.5". - The "tv-samsung 6.5" profile is supported since Tizen Studio 4.5.1.
- Add
<script type='text/javascript' language='javascript' src='$WEBAPIS/webapis/webapis.js'></script>
to "index.html" file. - Remove
<script type="text/javascript" src="$B2BAPIS/b2bapis/b2bapis.js"> </script>
from "index.html" file. - Replace the SSSP privileges with corresponding to new Samsung Product APIs in "config.xml".