@signageos/front-applet 8.5.3 → 8.7.0
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/dist/bundle.js +7 -7
- package/dist/bundle.js.map +1 -1
- package/docs/fpath/index.md +0 -270
- package/docs/sos/browser.md +0 -14
- package/docs/sos/command.md +0 -18
- package/docs/sos/deviceInfo.md +0 -17
- package/docs/sos/display.md +0 -8
- package/docs/sos/fileSystem.md +0 -488
- package/docs/sos/hardware/index.md +2 -49
- package/docs/sos/input.md +0 -12
- package/docs/sos/native/mdc.md +1 -35
- package/docs/sos/native/nmc.md +127 -0
- package/docs/sos/offline/cache.md +0 -6
- package/docs/sos/offline/index.md +0 -27
- package/docs/sos/proofOfPlay.md +0 -10
- package/docs/sos/stream.md +11 -781
- package/docs/sos/sync.md +5 -21
- package/docs/sos/video.md +0 -86
- package/docs/sos_management/app.md +32 -29
- package/docs/sos_management/index.md +0 -8
- package/docs/sos_management/network.md +0 -19
- package/docs/sos_management/os.md +0 -11
- package/docs/sos_management/power.md +50 -30
- package/docs/sos_management/screen.md +0 -7
- package/docs/sos_management/time.md +0 -3
- package/docs/sos_management/wifi.md +0 -101
- package/es6/FrontApplet/Management/App/App.d.ts +34 -24
- package/es6/FrontApplet/Management/App/App.js.map +1 -1
- package/es6/FrontApplet/Management/Power/IPower.d.ts +32 -10
- package/es6/FrontApplet/Management/Power/IPower.js +3 -0
- package/es6/FrontApplet/Management/Power/IPower.js.map +1 -1
- package/es6/FrontApplet/Management/Power/Power.d.ts +12 -8
- package/es6/FrontApplet/Management/Power/Power.js +23 -32
- package/es6/FrontApplet/Management/Power/Power.js.map +1 -1
- package/es6/FrontApplet/Management/Power/PowerHelper.d.ts +8 -3
- package/es6/FrontApplet/Management/Power/PowerHelper.js +32 -0
- package/es6/FrontApplet/Management/Power/PowerHelper.js.map +1 -1
- package/es6/FrontApplet/Management/helpers/ProprietaryTimerHelper.d.ts +2 -1
- package/es6/FrontApplet/Management/helpers/TimerHelper.d.ts +3 -1
- package/es6/FrontApplet/Management/helpers/TimerHelper.js +2 -0
- package/es6/FrontApplet/Management/helpers/TimerHelper.js.map +1 -1
- package/es6/FrontApplet/NativeCommands/NMC/CommandsNmc.d.ts +4 -0
- package/es6/FrontApplet/NativeCommands/NMC/CommandsNmc.js +66 -0
- package/es6/FrontApplet/NativeCommands/NMC/CommandsNmc.js.map +1 -0
- package/es6/FrontApplet/NativeCommands/NMC/INativeNmcCommands.d.ts +21 -0
- package/es6/FrontApplet/NativeCommands/NMC/INativeNmcCommands.js +3 -0
- package/es6/FrontApplet/NativeCommands/NMC/INativeNmcCommands.js.map +1 -0
- package/es6/FrontApplet/NativeCommands/NMC/Nmc.d.ts +50 -0
- package/es6/FrontApplet/NativeCommands/NMC/Nmc.js +77 -0
- package/es6/FrontApplet/NativeCommands/NMC/Nmc.js.map +1 -0
- package/es6/FrontApplet/NativeCommands/NativeCommands.d.ts +2 -0
- package/es6/FrontApplet/NativeCommands/NativeCommands.js +3 -0
- package/es6/FrontApplet/NativeCommands/NativeCommands.js.map +1 -1
- package/es6/FrontApplet/Sync/Sync.d.ts +6 -0
- package/es6/FrontApplet/Sync/Sync.js +3 -1
- package/es6/FrontApplet/Sync/Sync.js.map +1 -1
- package/es6/FrontApplet/Video/IOptions.d.ts +5 -0
- package/es6/Monitoring/Management/Power/powerCommands.d.ts +3 -3
- package/package.json +1 -1
package/docs/sos/sync.md
CHANGED
|
@@ -139,42 +139,28 @@ other.
|
|
|
139
139
|
```ts expandable
|
|
140
140
|
connect(options?: SynchronizationEngineOptions): Promise<void>;
|
|
141
141
|
// show-more
|
|
142
|
-
/** Options for the `connect()` method based selected synchronization type. */
|
|
143
142
|
type SynchronizationEngineOptions = ConnectSyncServerOptions | ConnectP2PLocalOptions | ConnectUdpOptions;
|
|
144
143
|
|
|
145
|
-
/**
|
|
146
|
-
* Options for sync-server synchronization.
|
|
147
|
-
*/
|
|
148
144
|
interface ConnectSyncServerOptions {
|
|
149
145
|
engine?: SyncEngine.SyncServer;
|
|
150
|
-
/** Address of the sync server engine. If omitted, the default server from device configuration will be used. */
|
|
151
146
|
uri?: string;
|
|
147
|
+
config?: SynchronizerConfig;
|
|
152
148
|
}
|
|
153
149
|
|
|
154
|
-
/**
|
|
155
|
-
* The `SyncEngine` enum defines the available synchronization engines that can be used to synchronize devices.
|
|
156
|
-
* Each engine has its own method of connecting devices and synchronizing data.
|
|
157
|
-
*/
|
|
158
150
|
enum SyncEngine {
|
|
159
|
-
/** Use external sync server. Device will connect to the server via websocket. */
|
|
160
151
|
SyncServer = "sync-server",
|
|
161
|
-
/** Synchronize directly with other devices in the local network via UDP and TCP. */
|
|
162
152
|
P2PLocal = "p2p-local",
|
|
163
|
-
/**
|
|
164
|
-
* Synchronize directly with other devices in the local network via UDP.
|
|
165
|
-
* @deprecated use {@link P2PLocal}
|
|
166
|
-
*/
|
|
167
153
|
Udp = "udp"
|
|
168
154
|
}
|
|
169
155
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
156
|
+
interface SynchronizerConfig {
|
|
157
|
+
allowSlaveBroadcast?: boolean;
|
|
158
|
+
}
|
|
159
|
+
|
|
173
160
|
interface ConnectP2PLocalOptions {
|
|
174
161
|
engine: SyncEngine.P2PLocal;
|
|
175
162
|
}
|
|
176
163
|
|
|
177
|
-
/** @deprecated use SyncEngine.P2PLocal and ConnectP2PLocalOptions */
|
|
178
164
|
interface ConnectUdpOptions {
|
|
179
165
|
engine: SyncEngine.Udp;
|
|
180
166
|
}
|
|
@@ -359,9 +345,7 @@ onStatus(listener: (status: StatusEvent) => void): void;
|
|
|
359
345
|
// show-more
|
|
360
346
|
interface StatusEvent {
|
|
361
347
|
groupName?: string;
|
|
362
|
-
/** Array of device identifications connected to the group. */
|
|
363
348
|
connectedPeers: string[];
|
|
364
|
-
/** True if this device is currently master of the group (this may change over time). */
|
|
365
349
|
isMaster: boolean;
|
|
366
350
|
}
|
|
367
351
|
|
package/docs/sos/video.md
CHANGED
|
@@ -148,24 +148,13 @@ The `onEnded()` method sets up a listener, which is called whenever a video fini
|
|
|
148
148
|
```ts expandable
|
|
149
149
|
onEnded(listener: (event: IVideoEvent) => void): void;
|
|
150
150
|
// show-more
|
|
151
|
-
/**
|
|
152
|
-
* Represents an event related to video playback.
|
|
153
|
-
*/
|
|
154
151
|
interface IVideoEvent {
|
|
155
|
-
/** The type of the video event. */
|
|
156
152
|
type: VideoEventType;
|
|
157
|
-
/** Properties of video that created the event */
|
|
158
153
|
srcArguments: IVideoProperties;
|
|
159
154
|
}
|
|
160
155
|
|
|
161
|
-
/**
|
|
162
|
-
* Represents the types of video events that can occur.
|
|
163
|
-
*/
|
|
164
156
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
165
157
|
|
|
166
|
-
/**
|
|
167
|
-
* Video properties interface for defining the properties of a played video.
|
|
168
|
-
*/
|
|
169
158
|
interface IVideoProperties {
|
|
170
159
|
uri: string;
|
|
171
160
|
x: number;
|
|
@@ -205,24 +194,13 @@ The `onError()` method sets up a listener, which is called whenever a video fail
|
|
|
205
194
|
```ts expandable
|
|
206
195
|
onError(listener: (event: IVideoEvent) => void): void;
|
|
207
196
|
// show-more
|
|
208
|
-
/**
|
|
209
|
-
* Represents an event related to video playback.
|
|
210
|
-
*/
|
|
211
197
|
interface IVideoEvent {
|
|
212
|
-
/** The type of the video event. */
|
|
213
198
|
type: VideoEventType;
|
|
214
|
-
/** Properties of video that created the event */
|
|
215
199
|
srcArguments: IVideoProperties;
|
|
216
200
|
}
|
|
217
201
|
|
|
218
|
-
/**
|
|
219
|
-
* Represents the types of video events that can occur.
|
|
220
|
-
*/
|
|
221
202
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
222
203
|
|
|
223
|
-
/**
|
|
224
|
-
* Video properties interface for defining the properties of a played video.
|
|
225
|
-
*/
|
|
226
204
|
interface IVideoProperties {
|
|
227
205
|
uri: string;
|
|
228
206
|
x: number;
|
|
@@ -262,24 +240,13 @@ The `onPause()` method sets up a listener, which is called whenever a video is p
|
|
|
262
240
|
```ts expandable
|
|
263
241
|
onPause(listener: (event: IVideoEvent) => void): void;
|
|
264
242
|
// show-more
|
|
265
|
-
/**
|
|
266
|
-
* Represents an event related to video playback.
|
|
267
|
-
*/
|
|
268
243
|
interface IVideoEvent {
|
|
269
|
-
/** The type of the video event. */
|
|
270
244
|
type: VideoEventType;
|
|
271
|
-
/** Properties of video that created the event */
|
|
272
245
|
srcArguments: IVideoProperties;
|
|
273
246
|
}
|
|
274
247
|
|
|
275
|
-
/**
|
|
276
|
-
* Represents the types of video events that can occur.
|
|
277
|
-
*/
|
|
278
248
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
279
249
|
|
|
280
|
-
/**
|
|
281
|
-
* Video properties interface for defining the properties of a played video.
|
|
282
|
-
*/
|
|
283
250
|
interface IVideoProperties {
|
|
284
251
|
uri: string;
|
|
285
252
|
x: number;
|
|
@@ -319,24 +286,13 @@ The `onPlay()` method sets up a listener, which is called whenever a video start
|
|
|
319
286
|
```ts expandable
|
|
320
287
|
onPlay(listener: (event: IVideoEvent) => void): void;
|
|
321
288
|
// show-more
|
|
322
|
-
/**
|
|
323
|
-
* Represents an event related to video playback.
|
|
324
|
-
*/
|
|
325
289
|
interface IVideoEvent {
|
|
326
|
-
/** The type of the video event. */
|
|
327
290
|
type: VideoEventType;
|
|
328
|
-
/** Properties of video that created the event */
|
|
329
291
|
srcArguments: IVideoProperties;
|
|
330
292
|
}
|
|
331
293
|
|
|
332
|
-
/**
|
|
333
|
-
* Represents the types of video events that can occur.
|
|
334
|
-
*/
|
|
335
294
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
336
295
|
|
|
337
|
-
/**
|
|
338
|
-
* Video properties interface for defining the properties of a played video.
|
|
339
|
-
*/
|
|
340
296
|
interface IVideoProperties {
|
|
341
297
|
uri: string;
|
|
342
298
|
x: number;
|
|
@@ -377,24 +333,13 @@ The `onPrepare()` method sets up a listener, which is called whenever a video st
|
|
|
377
333
|
```ts expandable
|
|
378
334
|
onPrepare(listener: (event: IVideoEvent) => void): void;
|
|
379
335
|
// show-more
|
|
380
|
-
/**
|
|
381
|
-
* Represents an event related to video playback.
|
|
382
|
-
*/
|
|
383
336
|
interface IVideoEvent {
|
|
384
|
-
/** The type of the video event. */
|
|
385
337
|
type: VideoEventType;
|
|
386
|
-
/** Properties of video that created the event */
|
|
387
338
|
srcArguments: IVideoProperties;
|
|
388
339
|
}
|
|
389
340
|
|
|
390
|
-
/**
|
|
391
|
-
* Represents the types of video events that can occur.
|
|
392
|
-
*/
|
|
393
341
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
394
342
|
|
|
395
|
-
/**
|
|
396
|
-
* Video properties interface for defining the properties of a played video.
|
|
397
|
-
*/
|
|
398
343
|
interface IVideoProperties {
|
|
399
344
|
uri: string;
|
|
400
345
|
x: number;
|
|
@@ -434,24 +379,13 @@ The `onResume()` method sets up a listener, which is called whenever a video is
|
|
|
434
379
|
```ts expandable
|
|
435
380
|
onResume(listener: (event: IVideoEvent) => void): void;
|
|
436
381
|
// show-more
|
|
437
|
-
/**
|
|
438
|
-
* Represents an event related to video playback.
|
|
439
|
-
*/
|
|
440
382
|
interface IVideoEvent {
|
|
441
|
-
/** The type of the video event. */
|
|
442
383
|
type: VideoEventType;
|
|
443
|
-
/** Properties of video that created the event */
|
|
444
384
|
srcArguments: IVideoProperties;
|
|
445
385
|
}
|
|
446
386
|
|
|
447
|
-
/**
|
|
448
|
-
* Represents the types of video events that can occur.
|
|
449
|
-
*/
|
|
450
387
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
451
388
|
|
|
452
|
-
/**
|
|
453
|
-
* Video properties interface for defining the properties of a played video.
|
|
454
|
-
*/
|
|
455
389
|
interface IVideoProperties {
|
|
456
390
|
uri: string;
|
|
457
391
|
x: number;
|
|
@@ -493,24 +427,13 @@ The `onStop()` method sets up a listener, which is called whenever a video has b
|
|
|
493
427
|
```ts expandable
|
|
494
428
|
onStop(listener: (event: IVideoEvent) => void): void;
|
|
495
429
|
// show-more
|
|
496
|
-
/**
|
|
497
|
-
* Represents an event related to video playback.
|
|
498
|
-
*/
|
|
499
430
|
interface IVideoEvent {
|
|
500
|
-
/** The type of the video event. */
|
|
501
431
|
type: VideoEventType;
|
|
502
|
-
/** Properties of video that created the event */
|
|
503
432
|
srcArguments: IVideoProperties;
|
|
504
433
|
}
|
|
505
434
|
|
|
506
|
-
/**
|
|
507
|
-
* Represents the types of video events that can occur.
|
|
508
|
-
*/
|
|
509
435
|
type VideoEventType = 'prepare' | 'play' | 'stop' | 'pause' | 'resume' | 'ended' | 'error';
|
|
510
436
|
|
|
511
|
-
/**
|
|
512
|
-
* Video properties interface for defining the properties of a played video.
|
|
513
|
-
*/
|
|
514
437
|
interface IVideoProperties {
|
|
515
438
|
uri: string;
|
|
516
439
|
x: number;
|
|
@@ -644,17 +567,8 @@ The `prepare()` method loads the video into memory and prepares it for a playbac
|
|
|
644
567
|
prepare(uri: string, x: number, y: number, width: number, height: number, options?: IOptions): Promise<void>;
|
|
645
568
|
// show-more
|
|
646
569
|
interface IOptions {
|
|
647
|
-
/** @deprecated */
|
|
648
570
|
'4k'?: boolean;
|
|
649
|
-
/**
|
|
650
|
-
* Prepare stream or video in background.
|
|
651
|
-
* @default false
|
|
652
|
-
*/
|
|
653
571
|
background?: boolean;
|
|
654
|
-
/**
|
|
655
|
-
* Initial volume value of the stream.
|
|
656
|
-
* @default 100
|
|
657
|
-
*/
|
|
658
572
|
volume?: number;
|
|
659
573
|
}
|
|
660
574
|
|
|
@@ -29,9 +29,6 @@ The `getType()` method returns the type of the platform the application is runni
|
|
|
29
29
|
```ts expandable
|
|
30
30
|
getType(): Promise<AppType>;
|
|
31
31
|
// show-more
|
|
32
|
-
/**
|
|
33
|
-
* All available app types
|
|
34
|
-
*/
|
|
35
32
|
type AppType = 'android' | 'brightsign' | 'default' | 'linux' | 'sssp' | 'tizen' | 'webos' | 'windows' | 'chromeos' | AnyString;
|
|
36
33
|
|
|
37
34
|
type AnyString = string & {};
|
|
@@ -74,32 +71,44 @@ console.log(`Current application version is: ${version}`); // e.g. '4.0.0', '5.2
|
|
|
74
71
|
|
|
75
72
|
### upgrade(appUri)
|
|
76
73
|
|
|
77
|
-
The `upgrade(appUri)` method upgrades the signageOS application with the provided `appUri`. Open users can upgrade the app passing
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
- ChromeOS: Not supported
|
|
89
|
-
|
|
90
|
-
:::tip
|
|
91
|
-
Check our latest versions in our [changelogs](https://docs.signageos.io/hc/en-us/sections/4409161443730-Core-Apps).
|
|
74
|
+
The `upgrade(appUri)` method upgrades the signageOS application with the provided `appUri`. Open users can upgrade the app passing
|
|
75
|
+
a URL where the application files are hosted.
|
|
76
|
+
|
|
77
|
+
:::warning Strict URL and folder structure requirements
|
|
78
|
+
The `appUri` **must** follow the exact folder structure produced by the signageOS Device-app Builder.
|
|
79
|
+
The upgrade will fail silently (device reverts to the previous version) if the URL does not match the expected format.
|
|
80
|
+
|
|
81
|
+
Key rules:
|
|
82
|
+
1. **The folder structure on your server must match the ZIP package from signageOS exactly.** Do not rename files or reorganize folders.
|
|
83
|
+
2. **HTTP redirects (e.g., 302) are not supported.** Files must be directly accessible at the expected URLs.
|
|
84
|
+
3. **The URL must not end with a trailing slash (`/`).** A trailing slash causes the upgrade to fail.
|
|
92
85
|
:::
|
|
93
86
|
|
|
87
|
+
The expected URL format differs per platform:
|
|
88
|
+
|
|
89
|
+
| Platform | URL format |
|
|
90
|
+
|----------|-----------|
|
|
91
|
+
| **Tizen** | Point to the **folder** containing `sssp_config.xml` and `*.wgt` — not to a specific file. E.g. `https://cdn.example.com/app/tizen/2.10.1/landscape` |
|
|
92
|
+
| **SSSP** | Point to the **folder** containing `sssp_config.xml` and `*.wgt`. E.g. `https://cdn.example.com/app/sssp/2.10.1/landscape_full-hd` |
|
|
93
|
+
| **webOS 1, 2** | Point to the **ZIP file** directly. E.g. `https://cdn.example.com/app/webos/2.10.1/ApplicationName.zip` |
|
|
94
|
+
| **webOS 3+** | Point to the **IPK file** directly. E.g. `https://cdn.example.com/app/webos/2.10.1/ApplicationName.ipk` |
|
|
95
|
+
| **BrightSign** | Point to the **zip file** directly. E.g. `https://cdn.example.com/app/brightsign/2.10.1/display-brightsign.zip` |
|
|
96
|
+
| **Android** | Point to the **APK file** directly. E.g. `https://cdn.example.com/app/android/2.10.1/io.signageos.android.apk` |
|
|
97
|
+
| **Windows** | Point to the **zip file** directly. E.g. `https://cdn.example.com/app/windows/2.10.1/windows_2.10.1.zip` |
|
|
98
|
+
| **ChromeOS** | Not supported |
|
|
99
|
+
|
|
100
|
+
For the full folder structure reference and deployment guide, see
|
|
101
|
+
[Build & Deploy Your Applet Via Core App with built-in Applet](https://docs.signageos.io/devspace/general-topics/deployment/build-deploy-your-applet-via-core-app-with-built-in-applet).
|
|
102
|
+
|
|
94
103
|
```ts expandable
|
|
95
104
|
upgrade(appUri: string): Promise<void>;
|
|
96
105
|
```
|
|
97
106
|
|
|
98
107
|
#### Params
|
|
99
108
|
|
|
100
|
-
| Name | Type | Required | Description
|
|
101
|
-
|
|
102
|
-
| `appUri` | `string` | <div>Yes</div> |
|
|
109
|
+
| Name | Type | Required | Description |
|
|
110
|
+
|----------|----------|------------------|-------------------------------------------------------------------------------------------------------|
|
|
111
|
+
| `appUri` | `string` | <div>Yes</div> | URL where the application files are hosted. Must follow the platform-specific format described above. |
|
|
103
112
|
|
|
104
113
|
#### Return value
|
|
105
114
|
|
|
@@ -112,14 +121,8 @@ If the upgrade fails.
|
|
|
112
121
|
#### Example
|
|
113
122
|
|
|
114
123
|
```ts
|
|
115
|
-
// Upgrade
|
|
116
|
-
await sos.management.app.upgrade('
|
|
117
|
-
.then(() => {
|
|
118
|
-
console.log('Application upgrade started successfully.');
|
|
119
|
-
})
|
|
120
|
-
.catch((error) => {
|
|
121
|
-
console.error('Failed to start application upgrade:', error);
|
|
122
|
-
});
|
|
124
|
+
// Upgrade Tizen device — point to the FOLDER, not a specific file. No trailing slash.
|
|
125
|
+
await sos.management.app.upgrade('https://cdn.your-cms.com/app/tizen/2.10.1/landscape');
|
|
123
126
|
```
|
|
124
127
|
|
|
125
128
|
:::note[GitHub Example]
|
|
@@ -416,9 +416,6 @@ This method was deprecated. Use `sos.management.network.listInterfaces()` instea
|
|
|
416
416
|
```ts expandable
|
|
417
417
|
getNetworkInfo(): Promise<INetworkInfo>;
|
|
418
418
|
// show-more
|
|
419
|
-
/**
|
|
420
|
-
* @deprecated use `INetworkInterface` instead
|
|
421
|
-
*/
|
|
422
419
|
interface INetworkInfo {
|
|
423
420
|
localAddress: string;
|
|
424
421
|
ethernetMacAddress: string;
|
|
@@ -428,11 +425,6 @@ interface INetworkInfo {
|
|
|
428
425
|
netmask?: string;
|
|
429
426
|
dns?: string[];
|
|
430
427
|
interfaceName?: string;
|
|
431
|
-
/**
|
|
432
|
-
* Number in range from 0 to 100 (percentage)
|
|
433
|
-
* mapped from -90 dBm unusable signal
|
|
434
|
-
* to -30 dBm excellent signal.
|
|
435
|
-
*/
|
|
436
428
|
wifiStrength?: number;
|
|
437
429
|
wifiSsid?: string;
|
|
438
430
|
}
|
|
@@ -65,17 +65,11 @@ The `importCertificate()` method imports a certificate to the device. The certif
|
|
|
65
65
|
```ts expandable
|
|
66
66
|
importCertificate(details: CertificateEapDetails): Promise<void>;
|
|
67
67
|
// show-more
|
|
68
|
-
/** Details for importing a certificate for EAP authentication. */
|
|
69
68
|
interface CertificateEapDetails {
|
|
70
|
-
/** Type of EAP authentication */
|
|
71
69
|
type: EAPMethod;
|
|
72
|
-
/** CA certificate */
|
|
73
70
|
caCertificate?: string;
|
|
74
|
-
/** Client certificate for EAP-TLS */
|
|
75
71
|
clientCertificate?: string;
|
|
76
|
-
/** Private key for client certificate for EAP-TLS */
|
|
77
72
|
clientKey?: string;
|
|
78
|
-
/** Password for the private key, if it's encrypted */
|
|
79
73
|
clientCertificatePassword?: string;
|
|
80
74
|
}
|
|
81
75
|
|
|
@@ -151,11 +145,6 @@ interface INetworkInterface {
|
|
|
151
145
|
netmask?: string;
|
|
152
146
|
dns?: string[];
|
|
153
147
|
disabled?: boolean;
|
|
154
|
-
/**
|
|
155
|
-
* Number in range from 0 to 100 (percentage)
|
|
156
|
-
* mapped from -90 dBm unusable signal
|
|
157
|
-
* to -30 dBm excellent signal.
|
|
158
|
-
*/
|
|
159
148
|
wifiStrength?: number;
|
|
160
149
|
wifiSsid?: string;
|
|
161
150
|
}
|
|
@@ -269,9 +258,6 @@ This method was deprecated. Use `sos.management.network.listInterfaces()` instea
|
|
|
269
258
|
```ts expandable
|
|
270
259
|
getActiveInfo(): Promise<INetworkInfo>;
|
|
271
260
|
// show-more
|
|
272
|
-
/**
|
|
273
|
-
* @deprecated use `INetworkInterface` instead
|
|
274
|
-
*/
|
|
275
261
|
interface INetworkInfo {
|
|
276
262
|
localAddress: string;
|
|
277
263
|
ethernetMacAddress: string;
|
|
@@ -281,11 +267,6 @@ interface INetworkInfo {
|
|
|
281
267
|
netmask?: string;
|
|
282
268
|
dns?: string[];
|
|
283
269
|
interfaceName?: string;
|
|
284
|
-
/**
|
|
285
|
-
* Number in range from 0 to 100 (percentage)
|
|
286
|
-
* mapped from -90 dBm unusable signal
|
|
287
|
-
* to -30 dBm excellent signal.
|
|
288
|
-
*/
|
|
289
270
|
wifiStrength?: number;
|
|
290
271
|
wifiSsid?: string;
|
|
291
272
|
}
|
|
@@ -53,14 +53,6 @@ version of the current operating system. It's usually 1 or 2 digits, including o
|
|
|
53
53
|
getInfo(): Promise<IOSInfo>;
|
|
54
54
|
// show-more
|
|
55
55
|
interface IOSInfo {
|
|
56
|
-
/**
|
|
57
|
-
* Major version of current operating system.
|
|
58
|
-
* It's usually 1 or 2 digits including or excluding dot notation.
|
|
59
|
-
* E.g.:
|
|
60
|
-
* Windows -> 7, 8, 10, 11
|
|
61
|
-
* WebOS -> 3, 3.2, 4, 4.1
|
|
62
|
-
* Tizen -> 2.4, 3, 4, 5
|
|
63
|
-
*/
|
|
64
56
|
version: string;
|
|
65
57
|
}
|
|
66
58
|
|
|
@@ -86,9 +78,6 @@ The `getMemoryUsage()` method returns the total memory amount in bytes, the curr
|
|
|
86
78
|
```ts expandable
|
|
87
79
|
getMemoryUsage(): Promise<SystemMemoryInfo>;
|
|
88
80
|
// show-more
|
|
89
|
-
/**
|
|
90
|
-
* Returned object from `getMemoryUsage()` method.
|
|
91
|
-
*/
|
|
92
81
|
interface SystemMemoryInfo {
|
|
93
82
|
used: number;
|
|
94
83
|
total: number;
|
|
@@ -74,9 +74,11 @@ interface IProprietaryTimer {
|
|
|
74
74
|
type: ProprietaryTimerType;
|
|
75
75
|
timeOn: string | null;
|
|
76
76
|
timeOff: string | null;
|
|
77
|
-
weekdays:
|
|
77
|
+
weekdays: ShortWeekdayType[];
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
81
|
+
|
|
80
82
|
```
|
|
81
83
|
|
|
82
84
|
#### Return value
|
|
@@ -100,25 +102,30 @@ const timers = await sos.management.power.getProprietaryTimers();
|
|
|
100
102
|
Returns all scheduled reboot rules on the device set by the `setScheduledReboot()` method.
|
|
101
103
|
|
|
102
104
|
```ts expandable
|
|
103
|
-
getScheduledReboots(): Promise<
|
|
105
|
+
getScheduledReboots(): Promise<IScheduledRebootAction<IScheduledRebootRule>[]>;
|
|
104
106
|
// show-more
|
|
105
|
-
|
|
106
|
-
* Interface representing the scheduled reboot action.
|
|
107
|
-
*/
|
|
108
|
-
interface IScheduledRebootActions {
|
|
109
|
-
/** Random generated ID for the scheduled reboot action */
|
|
107
|
+
interface IScheduledRebootAction<TRule extends IScheduledRebootRuleRaw | IScheduledRebootRule> {
|
|
110
108
|
id: string;
|
|
111
|
-
|
|
112
|
-
|
|
109
|
+
rule: TRule;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
interface IScheduledRebootRuleRaw {
|
|
113
|
+
weekdays: WeekdayNumberType[];
|
|
114
|
+
time: string;
|
|
113
115
|
}
|
|
114
116
|
|
|
117
|
+
type WeekdayNumberType = 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
118
|
+
|
|
115
119
|
interface IScheduledRebootRule {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
/** Time in HH:mm:ss format */
|
|
120
|
+
weekdays: WeekdayType[];
|
|
121
|
+
shortWeekdays: ShortWeekdayType[];
|
|
119
122
|
time: string;
|
|
120
123
|
}
|
|
121
124
|
|
|
125
|
+
type WeekdayType = 'SUNDAY' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY';
|
|
126
|
+
|
|
127
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
128
|
+
|
|
122
129
|
```
|
|
123
130
|
|
|
124
131
|
#### Return value
|
|
@@ -144,10 +151,12 @@ interface ITimer {
|
|
|
144
151
|
type: keyof typeof TimerType;
|
|
145
152
|
timeOn: string | null;
|
|
146
153
|
timeOff: string | null;
|
|
147
|
-
weekdays:
|
|
154
|
+
weekdays: ShortWeekdayType[];
|
|
148
155
|
volume: number;
|
|
149
156
|
}
|
|
150
157
|
|
|
158
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
159
|
+
|
|
151
160
|
```
|
|
152
161
|
|
|
153
162
|
#### Return value
|
|
@@ -202,18 +211,23 @@ The `setProprietaryTimer()` method creates or updates a
|
|
|
202
211
|
[proprietary timer](https://docs.signageos.io/hc/en-us/articles/4416384202642-Timers#h_01HCD14GEDP96AZV58NRSN2HNQ).
|
|
203
212
|
|
|
204
213
|
```ts expandable
|
|
205
|
-
setProprietaryTimer(type: ProprietaryTimerType, timeOn: string | null, timeOff: string | null, weekdays:
|
|
214
|
+
setProprietaryTimer(type: ProprietaryTimerType, timeOn: string | null, timeOff: string | null, weekdays: (ShortWeekdayType | AnyString)[], keepAppletRunning?: boolean): Promise<void>;
|
|
215
|
+
// show-more
|
|
216
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
217
|
+
|
|
218
|
+
type AnyString = string & {};
|
|
219
|
+
|
|
206
220
|
```
|
|
207
221
|
|
|
208
222
|
#### Params
|
|
209
223
|
|
|
210
|
-
| Name | Type
|
|
211
|
-
|
|
212
|
-
| `type` | ``TIMER_${number}``
|
|
213
|
-
| `timeOn` | `string \| null`
|
|
214
|
-
| `timeOff` | `string \| null`
|
|
215
|
-
| `weekdays` | `
|
|
216
|
-
| `keepAppletRunning` | `boolean`
|
|
224
|
+
| Name | Type | Required | Description |
|
|
225
|
+
|---------------------|-------------------------------------|------------------|-----------------------------------------------------------------------------------------|
|
|
226
|
+
| `type` | ``TIMER_${number}`` | <div>Yes</div> | The type of the timer (`TIMER_1`, ..., `TIMER_7`). |
|
|
227
|
+
| `timeOn` | `string \| null` | <div>Yes</div> | The time when the device should turn on. |
|
|
228
|
+
| `timeOff` | `string \| null` | <div>Yes</div> | The time when the device should turn off. |
|
|
229
|
+
| `weekdays` | `(AnyString \| ShortWeekdayType)[]` | <div>Yes</div> | The days of the week when the timer should be active (`mon`, ..., `sun`). |
|
|
230
|
+
| `keepAppletRunning` | `boolean` | <div>No</div> | If `true`, the applet will be kept running when the timer is active on certain devices. |
|
|
217
231
|
|
|
218
232
|
#### Return value
|
|
219
233
|
|
|
@@ -250,19 +264,20 @@ It is possible to set multiple rules, which can be later obtained by the `getSch
|
|
|
250
264
|
:::
|
|
251
265
|
|
|
252
266
|
```ts expandable
|
|
253
|
-
setScheduledReboot(weekdays:
|
|
267
|
+
setScheduledReboot(weekdays: (ShortWeekdayType | AnyString)[], time: string): Promise<void>;
|
|
254
268
|
// show-more
|
|
255
|
-
|
|
256
|
-
|
|
269
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
270
|
+
|
|
271
|
+
type AnyString = string & {};
|
|
257
272
|
|
|
258
273
|
```
|
|
259
274
|
|
|
260
275
|
#### Params
|
|
261
276
|
|
|
262
|
-
| Name | Type
|
|
263
|
-
|
|
264
|
-
| `weekdays` | `
|
|
265
|
-
| `time` | `string`
|
|
277
|
+
| Name | Type | Required | Description |
|
|
278
|
+
|------------|-------------------------------------|------------------|-----------------------------------------------------------------------|
|
|
279
|
+
| `weekdays` | `(AnyString \| ShortWeekdayType)[]` | <div>Yes</div> | `WeekdayType[]` Array of weekdays when the reboot should be executed. |
|
|
280
|
+
| `time` | `string` | <div>Yes</div> | Time when the reboot should be executed. Format is `HH:mm:ss`. |
|
|
266
281
|
|
|
267
282
|
#### Return value
|
|
268
283
|
|
|
@@ -294,7 +309,12 @@ await sos.management.power.setScheduledReboot(["MONDAY", "FRIDAY"], "19:30:00");
|
|
|
294
309
|
The `setTimer()` method creates or updates a native timer.
|
|
295
310
|
|
|
296
311
|
```ts expandable
|
|
297
|
-
setTimer(type: keyof typeof TimerType, timeOn: string | null, timeOff: string | null, weekdays:
|
|
312
|
+
setTimer(type: keyof typeof TimerType, timeOn: string | null, timeOff: string | null, weekdays: (ShortWeekdayType | AnyString)[], volume: number): Promise<void>;
|
|
313
|
+
// show-more
|
|
314
|
+
type ShortWeekdayType = 'sun' | 'mon' | 'tue' | 'wed' | 'thu' | 'fri' | 'sat';
|
|
315
|
+
|
|
316
|
+
type AnyString = string & {};
|
|
317
|
+
|
|
298
318
|
```
|
|
299
319
|
|
|
300
320
|
#### Params
|
|
@@ -304,7 +324,7 @@ setTimer(type: keyof typeof TimerType, timeOn: string | null, timeOff: string |
|
|
|
304
324
|
| `type` | `"TIMER_1" \| "TIMER_2" \| "TIMER_3" \| "TIMER_4" \| "TIMER_5" \| "TIMER_6" \| "TIMER_7"` | <div>Yes</div> | The type of the timer (`TIMER_1`, ..., `TIMER_7`). |
|
|
305
325
|
| `timeOn` | `string \| null` | <div>Yes</div> | The time when the device should turn on. |
|
|
306
326
|
| `timeOff` | `string \| null` | <div>Yes</div> | The time when the device should turn off. |
|
|
307
|
-
| `weekdays` | `
|
|
327
|
+
| `weekdays` | `ShortWeekdayType` | <div>Yes</div> | The days of the week when the timer should be active (`mon`, ..., `sun`). |
|
|
308
328
|
| `volume` | `number` | <div>Yes</div> | The volume level set when the device is turned on. |
|
|
309
329
|
|
|
310
330
|
#### Return value
|
|
@@ -295,17 +295,12 @@ signageOS provides a standalone server that implements all of those methods. It
|
|
|
295
295
|
takeAndUploadScreenshot(uploadBaseUrl: string, options?: TakeAndUploadScreenshotOptions): Promise<TakeAndUploadScreenshotResult>;
|
|
296
296
|
// show-more
|
|
297
297
|
interface TakeAndUploadScreenshotResult {
|
|
298
|
-
/** URL of the uploaded screenshot. */
|
|
299
298
|
screenshotUrl: string;
|
|
300
|
-
/** aHash of the screenshot, if computed. */
|
|
301
299
|
aHash?: string;
|
|
302
300
|
}
|
|
303
301
|
|
|
304
|
-
/** Options for taking and uploading a screenshot. */
|
|
305
302
|
interface TakeAndUploadScreenshotOptions {
|
|
306
|
-
/** Whether to compute the hash of the screenshot. Default is false. */
|
|
307
303
|
computeHash?: boolean;
|
|
308
|
-
/** Additional headers to include in the upload request. */
|
|
309
304
|
headers?: Record<string, string>;
|
|
310
305
|
}
|
|
311
306
|
|
|
@@ -374,9 +369,7 @@ This method was deprecated. Use `takeAndUploadScreenshot(uploadBaseUrl: string,
|
|
|
374
369
|
takeAndUploadScreenshot(uploadBaseUrl: string, computeHash?: boolean): Promise<TakeAndUploadScreenshotResult>;
|
|
375
370
|
// show-more
|
|
376
371
|
interface TakeAndUploadScreenshotResult {
|
|
377
|
-
/** URL of the uploaded screenshot. */
|
|
378
372
|
screenshotUrl: string;
|
|
379
|
-
/** aHash of the screenshot, if computed. */
|
|
380
373
|
aHash?: string;
|
|
381
374
|
}
|
|
382
375
|
|
|
@@ -66,9 +66,6 @@ The `setManual()` method sets the system time and the system timezone and disabl
|
|
|
66
66
|
```ts expandable
|
|
67
67
|
setManual(dateTime: DateTime, timezone: string): Promise<void>;
|
|
68
68
|
// show-more
|
|
69
|
-
/**
|
|
70
|
-
* All values are raw, none are zero-indexed.
|
|
71
|
-
*/
|
|
72
69
|
interface DateTime {
|
|
73
70
|
year: number;
|
|
74
71
|
month: number;
|