@signageos/front-applet 6.5.1 → 6.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
|
5
5
|
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
+
## [6.5.3] - 2024-04-30
|
|
8
|
+
### Fixed
|
|
9
|
+
- Documentation patch: Browser.open() is supported on BrightSign
|
|
10
|
+
- Documentation patch: improved iFrames snippet intro text to be less scary
|
|
11
|
+
- Documentation patch: Added platform-specific details for using streaming on BrightSign and Samsung
|
|
12
|
+
|
|
13
|
+
## [6.5.2]
|
|
14
|
+
### Added
|
|
15
|
+
- Support for the `rtscts` option for the serial port configuration. This option is used when opening a serial port and determines whether to enable or disable RTS/CTS handshaking.
|
|
16
|
+
|
|
7
17
|
## [6.5.1] - 2024-04-08
|
|
8
18
|
### Fixed
|
|
9
19
|
- Incompatibility with latest changes in MDC implementation
|
|
@@ -33,7 +33,8 @@ Default URL can be opened and even the whitelisting/blacklisting of certain doma
|
|
|
33
33
|
**With some limitation you can use this API also on**
|
|
34
34
|
- Samsung Tizen (SSSP 4 and above); where the website is just in fullscreen without an address bar or theme options (headless mode)
|
|
35
35
|
- LG webOS (webOS 3.0 and above); where the website is just in fullscreen without an address bar or theme options (headless mode)
|
|
36
|
-
- Raspberry Pi
|
|
36
|
+
- Linux (Fedora, Ubuntu), Raspberry Pi, NEC Compute Module; where the website is just in fullscreen without an address bar or theme options (headless mode)
|
|
37
|
+
- BrightSign; where the website is just in fullscreen without an address bar or theme options (headless mode)
|
|
37
38
|
:::
|
|
38
39
|
|
|
39
40
|
### Javascript
|
|
@@ -13,7 +13,7 @@ description: "[Content JS API] We **do not recommend** to use iframes inside you
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
# Iframes
|
|
16
|
-
We **
|
|
16
|
+
We **recommend limiting the use of iframes** inside your Applet to avoid performance hiccups. However, if you you are leveraging iframes, you can also add full support of the sOS JS API within the iframe context. Add the JS snippet script below to every page load in iframe before ending </body>. Everything will be prepared, and you can call the very same methods as described for Applet.
|
|
17
17
|
|
|
18
18
|
:::warning
|
|
19
19
|
The signageOS Snippet and API works **ONLY** if the iframe is served from the display's internal storage - `<iframe src="file://...`. If your iframe is served from a live URL - `<iframe src="https://your-iframe-url"...` the snippet and signageOS API will **NOT** work. This is a security limitation to prevent random site took advantage of the API and alter the display behavior. There is a simple way to [save and load your iframe from the internal storage](https://github.com/signageos/applet-examples/blob/master/examples/content-js-api/iframes). Just make sure you are using full paths in your iframe for linking javascripts and css instead of the relative ones.
|
|
@@ -30,7 +30,7 @@ Such hardware could be, for example, printers, payment terminals or sensors.
|
|
|
30
30
|
|
|
31
31
|
| Method | Description | Supported since |
|
|
32
32
|
| ------------------ | ---------------------- | :-------------: |
|
|
33
|
-
| `openSerialPort()` | Open a new serial port | 4.4.0
|
|
33
|
+
| `openSerialPort()` | Open a new serial port | 4.4.0
|
|
34
34
|
|
|
35
35
|
## openSerialPort()
|
|
36
36
|
|
|
@@ -39,10 +39,20 @@ Creates a new instance of serial port. You can then use that instance to handle
|
|
|
39
39
|
|
|
40
40
|
| Param | Type | Required | Description |
|
|
41
41
|
| --------- | ------ | :------------------------: | -------------------------------------------------- |
|
|
42
|
-
| `options` | Object | <div class="red">Yes</div> | Object containing configuration of the serial port
|
|
42
|
+
| `options` | Object | <div class="red">Yes</div> | Object containing configuration of the serial port
|
|
43
43
|
|
|
44
44
|
### Options
|
|
45
45
|
|
|
46
|
+
| Property | Type | Required | Description |
|
|
47
|
+
| -------- | ------ | -------- | -------- |
|
|
48
|
+
| `device` | String | No | Specifies the device address |
|
|
49
|
+
| `baudRate` | Number | Yes | Specifies the data transmission speed in bits per second |
|
|
50
|
+
| `parity` | **none**, **even**, **mark** or **space** | No | Specifies the form of error checking, whether (or what) extra bits are added to a byte |
|
|
51
|
+
| `databits` | Number | No | Specifies the number of bits in a byte |
|
|
52
|
+
| `stopbits` | Number | No | Specifies the number of bits used to signal the end of a communication packet |
|
|
53
|
+
| `rtscts` | Boolean | No | Enables or disables RTS/CTS handshaking over the serial port. Currently supported by selected models of BrightSign |
|
|
54
|
+
:::
|
|
55
|
+
|
|
46
56
|
Here is the options object defined as Typescript interface:
|
|
47
57
|
|
|
48
58
|
```typescript
|
|
@@ -52,6 +62,7 @@ interface ISerialPortOptions {
|
|
|
52
62
|
parity?: 'none' | 'even' | 'mark' | 'odd' | 'space';
|
|
53
63
|
databits?: number;
|
|
54
64
|
stopbits?: number;
|
|
65
|
+
rtscts?: boolean;
|
|
55
66
|
}
|
|
56
67
|
```
|
|
57
68
|
|
|
@@ -78,7 +89,7 @@ Device address is different per platform (at least for now). Kindly find the res
|
|
|
78
89
|
| Windows | `COM3` | `COM3` (typically, but check your Win machine if this does not work) |
|
|
79
90
|
| Samsung Kiosk | `PORT1` |`PORT1`, `PORT2`, `PORT3` |
|
|
80
91
|
| Android | `/dev/ttyusb0` | `/dev/ttyusb0` |
|
|
81
|
-
| BrightSign | `0` | `0`, `1`, `USB:A/0`
|
|
92
|
+
| BrightSign | `0` | `0`, `1`, `USB:A/0`
|
|
82
93
|
|
|
83
94
|
## Serial port methods
|
|
84
95
|
|
|
@@ -90,7 +101,7 @@ you can call following methods on it.
|
|
|
90
101
|
| ---------- | ----------------------------------------------------------- | :-------------: |
|
|
91
102
|
| `onData()` | Call a listener callback anytime the opened serial port receiving data. | 4.4.0 |
|
|
92
103
|
| `write()` | Write data to the serial port | 4.4.0 |
|
|
93
|
-
| `close()` | Close serial port | 4.4.0
|
|
104
|
+
| `close()` | Close serial port | 4.4.0
|
|
94
105
|
|
|
95
106
|
## onData()
|
|
96
107
|
|
|
@@ -151,4 +162,4 @@ Following errors may occur when working with the serial ports. However they don'
|
|
|
151
162
|
| 50603 | InternalHardwareError | Closing serial port that isn't open |
|
|
152
163
|
| 50603 | InternalHardwareError | Failed to close serial port |
|
|
153
164
|
| 50604 | InternalHardwareError | Writing to a serial port that isn't open |
|
|
154
|
-
| 50604 | InternalHardwareError | Failed to write to serial port
|
|
165
|
+
| 50604 | InternalHardwareError | Failed to write to serial port
|
|
@@ -154,8 +154,6 @@ document.documentElement.clientHeight as setup parameters.
|
|
|
154
154
|
| `autoReconnectInterval` | Number | <div class="yellow">No</div> | Interval in miliseconds between reconnect attempts |
|
|
155
155
|
| ^^ | ^^ | ^^ | Default value: 30000 ms |
|
|
156
156
|
| `volume` | Number | <div class="yellow">No</div> | Volume of the stream |
|
|
157
|
-
| `trackSelection` | Object | <div class="yellow">No</div> | Track selection options |
|
|
158
|
-
| `drm` | Object | <div class="yellow">No</div> | DRM options |
|
|
159
157
|
|
|
160
158
|
### Javascript syntax
|
|
161
159
|
|
|
@@ -580,3 +578,41 @@ Although we are doing our best, following errors may occur when working with the
|
|
|
580
578
|
| 51303 | InternalStreamError | Couldn't get stream tracks. |
|
|
581
579
|
| 51304 | InternalStreamError | Couldn't select stream track. |
|
|
582
580
|
| 51305 | InternalStreamError | Couldn't reset stream track. |
|
|
581
|
+
|
|
582
|
+
## Platform-specific notes
|
|
583
|
+
|
|
584
|
+
### BrightSign
|
|
585
|
+
|
|
586
|
+
BrightSign allows the configuration of [buffering](https://support.brightsign.biz/hc/en-us/articles/218067097-Customizing-the-size-of-the-streaming-buffer), [latency and jitter](https://support.brightsign.biz/hc/en-us/articles/218067127-Modifying-the-latency-and-jitter-of-audio-video-streams) by adding additional query parameters to stream `uri`.
|
|
587
|
+
|
|
588
|
+
#### Buffering
|
|
589
|
+
|
|
590
|
+
You can modify the default buffer size by appending optional parameters to the end of a streaming URL in a BrightAuthor Video Stream or Audio Stream state (this method also applies to custom scripts). The URL parameters must be formatted as follows:
|
|
591
|
+
|
|
592
|
+
```
|
|
593
|
+
<streaming_url>?buffersize=<number>&vcdbsize=<number>&acdbsize=<number>
|
|
594
|
+
```
|
|
595
|
+
|
|
596
|
+
Example: `http://www.example.com/stream1?buffersize=10000000&vcdbsize=10000000&acdbsize=256000`
|
|
597
|
+
|
|
598
|
+
Note that all buffer sizes are specified in bytes.
|
|
599
|
+
|
|
600
|
+
buffersize: The size of the main buffer. Once streaming data comes into the main buffer, it is immediately split into the audio and video buffers. The default size of the main buffer is 1.5MB for HD models, 3MB for XD models, and 6MB for 4K models.
|
|
601
|
+
vcdbsize: The size of the video-coded data buffer. The default size of this buffer is 3MB for HD models, 3MB for XD models, and 6MB for 4K models.
|
|
602
|
+
acdbsize: The size of the audio-coded data buffer. The default size of this buffer is 256KB for all models.
|
|
603
|
+
|
|
604
|
+
#### Latency and Jitter
|
|
605
|
+
|
|
606
|
+
You can modify the amount of time it takes for audio/video streams to begin playback by formatting the stream URL as follows:
|
|
607
|
+
|
|
608
|
+
```
|
|
609
|
+
<streaming_url>?latency=<value_in_ms>&jitter=<value_in_ms>
|
|
610
|
+
```
|
|
611
|
+
|
|
612
|
+
Example: `http://www.example.com/stream1?latency=-450&jitter=50`
|
|
613
|
+
|
|
614
|
+
### Samsung
|
|
615
|
+
|
|
616
|
+
UDP and RTP streams are only available if you use specific version of signageOS Tizen CoreApp.
|
|
617
|
+
|
|
618
|
+
Details are documented in Docs: [[Tizen] Stream playback issues & limitation](https://docs.signageos.io/hc/en-us/articles/4405387373458--Tizen-Stream-playback-issues-limitation)
|