Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
and this project adheres to Semantic Versioning.
[Unreleased]
Added
- Device telemetry with configurable intervals
- Device policy with configurable intervals
- Building bundled applet with prebuilt subscriptionType
- Allow parametrize bundled applet with configuration
- FS appendFile
- Absolute firmware upgrade URLs
- Allow parametrize bundled applet with configuration
Fixed
- Applet content paths are shorter because SSSP supports only very limited length
[2.1.1] - 2021-03-02
Fixed
- SSSP2 can now once again properly rotate to portrait without corrupting media playback
[2.1.0] - 2021-03-02
Added
- added support for sos.browser.open() to allow opening websites outside of iframe
[2.0.1] - 2021-01-12
Fixed
- Manual time setting
[2.0.0] - 2021-01-11
Changed
- Device firmware is upgradable through API: https://docs.signageos.io/api/device-management-api/#Set_Device_Firmware_version
- Major internal changes in a communicataion APIs (socket connections uses new API /v2/ which is not backward compatible)
Added
- Device can be tested for supported HTML5 features to perform a HTML5test score (available on a request): https://html5test.com/
- Releases are now Semantic version ready: https://semver.org/
- Applet, Video & video wall synchronization feature: https://docs.signageos.io/api/sos-applet-api/#Sync_playback_across_multiple_devices
- Remote control Key UP binding: https://docs.signageos.io/api/sos-applet-api/#Input
- Scheduled power action: https://docs.signageos.io/api/device-management-api/#Create_Device_Scheduled_Power_Action
- Enable applets to get file/content uids (https://docs.signageos.io/api/sos-applet-api/#List_all_files)
- Enable applets to delete files/contents (https://docs.signageos.io/api/sos-applet-api/#Delete_file)
- SSSP3: Methods for getting and validating MD5 file checksum (https://docs.signageos.io/api/sos-applet-api/#Checksum_file_md5)
- Applets can receive commands from server sent through REST API (applet dispatch command to device) (https://docs.signageos.io/api/sos-applet-api/#Command_Receiving)
- Add support for getting local IP and interface
- Browser support over sos JS API
- Front applet debug isEnabled API support
- Default PIN code is 0000 until device is connected to internet
- PIN code set/get support for JS management API
- Remote management of multi-file applets (applet packages). Applets originally designed for
Open
users can be used byPlatform
users now as well. - Browser open link method optionally accepts theme option
- Wi-Fi Access Point capability
- Emit useful Wi-Fi events to applet
- Changed method of INetwork interface getActiveInfo() into listInterfaces() for more fine grained control of network interfaces
- Video orientation LANDSCAPE_FLIPPED
- Connect and disconnect events for native stream HTML Player
- Reconnecting Stream Player
- Serial ports capability
- Active applet version is sent to iFrame
- Proprietary timers decoupled for better reusability
- Added failover to http if https throws exception when configuration is downloading
- Validating self signed signature when downloading configuration
- Video duration into HTML video tag video player implementation
Fixed
- Suspend videos/streams when a proprietary timer is triggered
- Switch between applet timings fast and gapless
- Fix tap/double tap touch detection 600 ms delay on an every tap
- Stabilize a network connection using better WebSocket low level libraries
- Generating device unique DUID for samsungs which has WiFi adapter unavailable
- Weinre debugging is back compatible working with appletEnabled flag
- HTML over video (some of the recent changes broke it)
- Open app installed to deprovisioned device
- First start of display when the applet is bundled inside app (Open)
- added sandbox to ProprietaryBrowser iframe to prevent hostile JS within iframe affecting parent document
- Socket autoreconnecting improved
- Socket reconnecting in offline state
- Reboot device automatically when App or FW upgrade is performed in open management
- add white background to the proprietary browser to prevent black web
- When proprietary timers are disabled while the display and content are off, the display and content will be turned on
- Use smaller resolution videos in acceptance tests that play multiple videos side by side because some platforms struggle to process more than one full HD video at a time
- (internal) Refactor and simplify screen rotation manager
- Longer deprovisioning timeout before reboot to give the display enought time to delete all cached data and files
- Make longer and configurable check interval on platform configuration (30s -> 60s)
- Native debug will always do the configuration check interval 30s
- Device registration occasionally failing during first boot
- Removed dependency on navigator.onLine for websocket connections management. Navigator.onLine in certain edge cases doesn't provide accurate information if the device can access internet or not.
- Possible memory leak in video player when one gapless video is playing in infinite loop
- Separate tests for Weinre and native debug toggle on/off into separate acceptance tests
- Applet reload sometimes caused the applet to freeze instead of reloading it
- Even longer deprovisioning timeout before reboot to give the display enough time to delete all cached data and files
- Options sent to prepare were lost in same cases
- Setting of device time and timezone returns success (when platform needs reboot/restart, do it after 1s)
[0.1.0] - 2018-05-22
Added
- Automated test of device debug
- Upgrade socket.io version to 2.0
- Fix kept applet in offline storage when RELOAD is performed
- Applet is refreshed even when just config of timing is changed
- When device goes into offline mode for short time, it will store actions in FAST memory storage
- Support for WebSocket applet synchronization