@iobroker/youtube-lounge 0.1.0 → 0.2.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/README.md CHANGED
@@ -49,14 +49,21 @@ lounge.close();
49
49
 
50
50
  An expired lounge token is renewed with the screen ID, an ended session is opened again, both on their own.
51
51
 
52
+ Google accepts commands also while the YouTube app of the TV is not open, and they get lost. Right after the TV or
53
+ the app was started, wait for it: `await lounge.waitForScreen(30000)` (`true` once the app is there);
54
+ `lounge.screenOnline` and the event `screen` tell it later on.
55
+
52
56
  <!--
53
57
  Placeholder for the next version (at the beginning of the line):
54
58
  ### **WORK IN PROGRESS**
55
59
  -->
56
60
 
57
61
  ## Changelog
62
+ ### 0.2.0 (2026-10-24)
63
+
64
+ - (@GermanBluefox) Added `waitForScreen()`, `screenOnline` and the event `screen`: commands sent before the YouTube app joined got lost
58
65
 
59
- ### **WORK IN PROGRESS**
66
+ ### 0.1.0 (2026-10-24)
60
67
 
61
68
  - (@GermanBluefox) Initial release, taken from the adapter `samsungtv`
62
69
 
@@ -43,8 +43,8 @@ type Params = Record<string, string | number | undefined>;
43
43
  * requests go to Google's servers; the protocol follows pyytlounge (FabioGNR/pyytlounge). Google does not document
44
44
  * it, so it may change.
45
45
  *
46
- * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `disconnected` (the TV left the
47
- * lounge), `error` (Error of the long poll).
46
+ * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `screen` (boolean: the YouTube app of
47
+ * the TV joined or left the lounge), `disconnected` (the TV left the lounge), `error` (Error of the long poll).
48
48
  */
49
49
  export declare class YouTubeLounge extends EventEmitter {
50
50
  private screenInfo;
@@ -59,10 +59,13 @@ export declare class YouTubeLounge extends EventEmitter {
59
59
  private readonly fetchFn;
60
60
  private readonly api;
61
61
  private current;
62
+ private screenUp;
62
63
  constructor(options?: LoungeOptions);
63
64
  /** The paired screen; `null` before pairing */
64
65
  get screen(): LoungeScreen | null;
65
66
  get connected(): boolean;
67
+ /** Whether the YouTube app of the TV is in the lounge; Google accepts commands without it, but they get lost */
68
+ get screenOnline(): boolean;
66
69
  /** What the TV plays, as last reported */
67
70
  get nowPlaying(): NowPlaying | null;
68
71
  /** Use a screen stored from an earlier pairing */
@@ -75,6 +78,14 @@ export declare class YouTubeLounge extends EventEmitter {
75
78
  connect(): Promise<void>;
76
79
  /** Send a lounge command, e.g. setPlaylist, play, pause, next, previous */
77
80
  command(name: string, params?: Params): Promise<void>;
81
+ /**
82
+ * Wait until the YouTube app of the TV is in the lounge, e.g. after the TV or the app was started. Starts the
83
+ * long poll if it does not run (`close()` ends it).
84
+ *
85
+ * @param timeout in ms
86
+ * @returns whether the app is there
87
+ */
88
+ waitForScreen(timeout?: number): Promise<boolean>;
78
89
  /** Play a target of `parseYouTubeTarget`; the TV starts the YouTube app if it can */
79
90
  play(target: YouTubeTarget): Promise<void>;
80
91
  /** Jump to a position in seconds */
@@ -92,6 +103,7 @@ export declare class YouTubeLounge extends EventEmitter {
92
103
  private sendCommand;
93
104
  private sessionParams;
94
105
  private consume;
106
+ private setScreen;
95
107
  /** `nowPlaying` names the video, `onStateChange` only updates state and position */
96
108
  private update;
97
109
  private post;
@@ -23,8 +23,8 @@ export var PlayerState;
23
23
  * requests go to Google's servers; the protocol follows pyytlounge (FabioGNR/pyytlounge). Google does not document
24
24
  * it, so it may change.
25
25
  *
26
- * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `disconnected` (the TV left the
27
- * lounge), `error` (Error of the long poll).
26
+ * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `screen` (boolean: the YouTube app of
27
+ * the TV joined or left the lounge), `disconnected` (the TV left the lounge), `error` (Error of the long poll).
28
28
  */
29
29
  export class YouTubeLounge extends EventEmitter {
30
30
  screenInfo = null;
@@ -39,6 +39,7 @@ export class YouTubeLounge extends EventEmitter {
39
39
  fetchFn;
40
40
  api;
41
41
  current = null;
42
+ screenUp = false;
42
43
  constructor(options = {}) {
43
44
  super();
44
45
  this.name = options.name ?? 'ioBroker';
@@ -53,6 +54,10 @@ export class YouTubeLounge extends EventEmitter {
53
54
  get connected() {
54
55
  return !!(this.sid && this.gsessionid);
55
56
  }
57
+ /** Whether the YouTube app of the TV is in the lounge; Google accepts commands without it, but they get lost */
58
+ get screenOnline() {
59
+ return this.screenUp;
60
+ }
56
61
  /** What the TV plays, as last reported */
57
62
  get nowPlaying() {
58
63
  return this.current;
@@ -127,6 +132,38 @@ export class YouTubeLounge extends EventEmitter {
127
132
  throw new Error(`YouTube: command ${name} failed (HTTP ${result.status})`);
128
133
  }
129
134
  }
135
+ /**
136
+ * Wait until the YouTube app of the TV is in the lounge, e.g. after the TV or the app was started. Starts the
137
+ * long poll if it does not run (`close()` ends it).
138
+ *
139
+ * @param timeout in ms
140
+ * @returns whether the app is there
141
+ */
142
+ async waitForScreen(timeout = 30_000) {
143
+ if (!this.connected) {
144
+ // the answer names the devices in the lounge
145
+ await this.connect();
146
+ }
147
+ if (this.screenUp) {
148
+ return true;
149
+ }
150
+ this.subscribe();
151
+ return new Promise(resolve => {
152
+ const wait = {};
153
+ const onScreen = (online) => {
154
+ if (online) {
155
+ clearTimeout(wait.timer);
156
+ this.off('screen', onScreen);
157
+ resolve(true);
158
+ }
159
+ };
160
+ wait.timer = setTimeout(() => {
161
+ this.off('screen', onScreen);
162
+ resolve(false);
163
+ }, timeout);
164
+ this.on('screen', onScreen);
165
+ });
166
+ }
130
167
  /** Play a target of `parseYouTubeTarget`; the TV starts the YouTube app if it can */
131
168
  play(target) {
132
169
  switch (target.kind) {
@@ -270,16 +307,23 @@ export class YouTubeLounge extends EventEmitter {
270
307
  this.gsessionid = String(args[0]);
271
308
  break;
272
309
  case 'nowPlaying':
310
+ // only the screen reports what plays
311
+ this.setScreen(true);
273
312
  this.update(data, true);
274
313
  break;
275
314
  case 'onStateChange':
315
+ this.setScreen(true);
276
316
  this.update(data, false);
277
317
  break;
318
+ case 'loungeStatus':
319
+ this.setScreen(hasScreen(data.devices));
320
+ break;
278
321
  case 'onVolumeChanged':
279
322
  this.emit('volume', { volume: Number(data.volume), muted: data.muted === 'true' });
280
323
  break;
281
324
  case 'loungeScreenDisconnected':
282
325
  this.sid = this.gsessionid = '';
326
+ this.setScreen(false);
283
327
  this.emit('disconnected');
284
328
  break;
285
329
  default:
@@ -287,6 +331,12 @@ export class YouTubeLounge extends EventEmitter {
287
331
  }
288
332
  }
289
333
  }
334
+ setScreen(online) {
335
+ if (online !== this.screenUp) {
336
+ this.screenUp = online;
337
+ this.emit('screen', online);
338
+ }
339
+ }
290
340
  /** `nowPlaying` names the video, `onStateChange` only updates state and position */
291
341
  update(data, newVideo) {
292
342
  if (newVideo && !data.videoId) {
@@ -327,4 +377,14 @@ export class YouTubeLounge extends EventEmitter {
327
377
  return { status: res.status, text: await res.text() };
328
378
  }
329
379
  }
380
+ /** `devices` of `loungeStatus` is a JSON string; the YouTube app of the TV is the `LOUNGE_SCREEN` */
381
+ function hasScreen(devices) {
382
+ try {
383
+ const list = JSON.parse(String(devices));
384
+ return Array.isArray(list) && list.some(device => device.type === 'LOUNGE_SCREEN');
385
+ }
386
+ catch {
387
+ return false;
388
+ }
389
+ }
330
390
  //# sourceMappingURL=lounge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lounge.js","sourceRoot":"","sources":["../../src/lounge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lounge.js","sourceRoot":"","sources":["../../src/lounge.ts"],"names":[],"mappings":"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"}
package/build/lounge.d.ts CHANGED
@@ -43,8 +43,8 @@ type Params = Record<string, string | number | undefined>;
43
43
  * requests go to Google's servers; the protocol follows pyytlounge (FabioGNR/pyytlounge). Google does not document
44
44
  * it, so it may change.
45
45
  *
46
- * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `disconnected` (the TV left the
47
- * lounge), `error` (Error of the long poll).
46
+ * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `screen` (boolean: the YouTube app of
47
+ * the TV joined or left the lounge), `disconnected` (the TV left the lounge), `error` (Error of the long poll).
48
48
  */
49
49
  export declare class YouTubeLounge extends EventEmitter {
50
50
  private screenInfo;
@@ -59,10 +59,13 @@ export declare class YouTubeLounge extends EventEmitter {
59
59
  private readonly fetchFn;
60
60
  private readonly api;
61
61
  private current;
62
+ private screenUp;
62
63
  constructor(options?: LoungeOptions);
63
64
  /** The paired screen; `null` before pairing */
64
65
  get screen(): LoungeScreen | null;
65
66
  get connected(): boolean;
67
+ /** Whether the YouTube app of the TV is in the lounge; Google accepts commands without it, but they get lost */
68
+ get screenOnline(): boolean;
66
69
  /** What the TV plays, as last reported */
67
70
  get nowPlaying(): NowPlaying | null;
68
71
  /** Use a screen stored from an earlier pairing */
@@ -75,6 +78,14 @@ export declare class YouTubeLounge extends EventEmitter {
75
78
  connect(): Promise<void>;
76
79
  /** Send a lounge command, e.g. setPlaylist, play, pause, next, previous */
77
80
  command(name: string, params?: Params): Promise<void>;
81
+ /**
82
+ * Wait until the YouTube app of the TV is in the lounge, e.g. after the TV or the app was started. Starts the
83
+ * long poll if it does not run (`close()` ends it).
84
+ *
85
+ * @param timeout in ms
86
+ * @returns whether the app is there
87
+ */
88
+ waitForScreen(timeout?: number): Promise<boolean>;
78
89
  /** Play a target of `parseYouTubeTarget`; the TV starts the YouTube app if it can */
79
90
  play(target: YouTubeTarget): Promise<void>;
80
91
  /** Jump to a position in seconds */
@@ -92,6 +103,7 @@ export declare class YouTubeLounge extends EventEmitter {
92
103
  private sendCommand;
93
104
  private sessionParams;
94
105
  private consume;
106
+ private setScreen;
95
107
  /** `nowPlaying` names the video, `onStateChange` only updates state and position */
96
108
  private update;
97
109
  private post;
package/build/lounge.js CHANGED
@@ -26,8 +26,8 @@ var PlayerState;
26
26
  * requests go to Google's servers; the protocol follows pyytlounge (FabioGNR/pyytlounge). Google does not document
27
27
  * it, so it may change.
28
28
  *
29
- * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `disconnected` (the TV left the
30
- * lounge), `error` (Error of the long poll).
29
+ * Events: `nowPlaying` (NowPlaying | null), `volume` ({ volume, muted }), `screen` (boolean: the YouTube app of
30
+ * the TV joined or left the lounge), `disconnected` (the TV left the lounge), `error` (Error of the long poll).
31
31
  */
32
32
  class YouTubeLounge extends node_events_1.EventEmitter {
33
33
  screenInfo = null;
@@ -42,6 +42,7 @@ class YouTubeLounge extends node_events_1.EventEmitter {
42
42
  fetchFn;
43
43
  api;
44
44
  current = null;
45
+ screenUp = false;
45
46
  constructor(options = {}) {
46
47
  super();
47
48
  this.name = options.name ?? 'ioBroker';
@@ -56,6 +57,10 @@ class YouTubeLounge extends node_events_1.EventEmitter {
56
57
  get connected() {
57
58
  return !!(this.sid && this.gsessionid);
58
59
  }
60
+ /** Whether the YouTube app of the TV is in the lounge; Google accepts commands without it, but they get lost */
61
+ get screenOnline() {
62
+ return this.screenUp;
63
+ }
59
64
  /** What the TV plays, as last reported */
60
65
  get nowPlaying() {
61
66
  return this.current;
@@ -130,6 +135,38 @@ class YouTubeLounge extends node_events_1.EventEmitter {
130
135
  throw new Error(`YouTube: command ${name} failed (HTTP ${result.status})`);
131
136
  }
132
137
  }
138
+ /**
139
+ * Wait until the YouTube app of the TV is in the lounge, e.g. after the TV or the app was started. Starts the
140
+ * long poll if it does not run (`close()` ends it).
141
+ *
142
+ * @param timeout in ms
143
+ * @returns whether the app is there
144
+ */
145
+ async waitForScreen(timeout = 30_000) {
146
+ if (!this.connected) {
147
+ // the answer names the devices in the lounge
148
+ await this.connect();
149
+ }
150
+ if (this.screenUp) {
151
+ return true;
152
+ }
153
+ this.subscribe();
154
+ return new Promise(resolve => {
155
+ const wait = {};
156
+ const onScreen = (online) => {
157
+ if (online) {
158
+ clearTimeout(wait.timer);
159
+ this.off('screen', onScreen);
160
+ resolve(true);
161
+ }
162
+ };
163
+ wait.timer = setTimeout(() => {
164
+ this.off('screen', onScreen);
165
+ resolve(false);
166
+ }, timeout);
167
+ this.on('screen', onScreen);
168
+ });
169
+ }
133
170
  /** Play a target of `parseYouTubeTarget`; the TV starts the YouTube app if it can */
134
171
  play(target) {
135
172
  switch (target.kind) {
@@ -273,16 +310,23 @@ class YouTubeLounge extends node_events_1.EventEmitter {
273
310
  this.gsessionid = String(args[0]);
274
311
  break;
275
312
  case 'nowPlaying':
313
+ // only the screen reports what plays
314
+ this.setScreen(true);
276
315
  this.update(data, true);
277
316
  break;
278
317
  case 'onStateChange':
318
+ this.setScreen(true);
279
319
  this.update(data, false);
280
320
  break;
321
+ case 'loungeStatus':
322
+ this.setScreen(hasScreen(data.devices));
323
+ break;
281
324
  case 'onVolumeChanged':
282
325
  this.emit('volume', { volume: Number(data.volume), muted: data.muted === 'true' });
283
326
  break;
284
327
  case 'loungeScreenDisconnected':
285
328
  this.sid = this.gsessionid = '';
329
+ this.setScreen(false);
286
330
  this.emit('disconnected');
287
331
  break;
288
332
  default:
@@ -290,6 +334,12 @@ class YouTubeLounge extends node_events_1.EventEmitter {
290
334
  }
291
335
  }
292
336
  }
337
+ setScreen(online) {
338
+ if (online !== this.screenUp) {
339
+ this.screenUp = online;
340
+ this.emit('screen', online);
341
+ }
342
+ }
293
343
  /** `nowPlaying` names the video, `onStateChange` only updates state and position */
294
344
  update(data, newVideo) {
295
345
  if (newVideo && !data.videoId) {
@@ -331,4 +381,14 @@ class YouTubeLounge extends node_events_1.EventEmitter {
331
381
  }
332
382
  }
333
383
  exports.YouTubeLounge = YouTubeLounge;
384
+ /** `devices` of `loungeStatus` is a JSON string; the YouTube app of the TV is the `LOUNGE_SCREEN` */
385
+ function hasScreen(devices) {
386
+ try {
387
+ const list = JSON.parse(String(devices));
388
+ return Array.isArray(list) && list.some(device => device.type === 'LOUNGE_SCREEN');
389
+ }
390
+ catch {
391
+ return false;
392
+ }
393
+ }
334
394
  //# sourceMappingURL=lounge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lounge.js","sourceRoot":"","sources":["../src/lounge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lounge.js","sourceRoot":"","sources":["../src/lounge.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,61 +1,61 @@
1
1
  {
2
- "name": "@iobroker/youtube-lounge",
3
- "version": "0.1.0",
4
- "description": "Control the YouTube app of a TV over the YouTube Lounge API (\"Link with TV\"): play videos, playlists and channels, follow what plays",
5
- "author": {
6
- "name": "bluefox",
7
- "email": "dogafox@gmail.com"
2
+ "name": "@iobroker/youtube-lounge",
3
+ "version": "0.2.0",
4
+ "description": "Control the YouTube app of a TV over the YouTube Lounge API (\"Link with TV\"): play videos, playlists and channels, follow what plays",
5
+ "author": {
6
+ "name": "bluefox",
7
+ "email": "dogafox@gmail.com"
8
+ },
9
+ "license": "MIT",
10
+ "homepage": "https://github.com/ioBroker/youtube-lounge",
11
+ "repository": {
12
+ "type": "git",
13
+ "url": "git+https://github.com/ioBroker/youtube-lounge.git"
14
+ },
15
+ "keywords": [
16
+ "youtube",
17
+ "lounge",
18
+ "dial",
19
+ "tv",
20
+ "remote",
21
+ "iobroker"
22
+ ],
23
+ "engines": {
24
+ "node": ">=20"
25
+ },
26
+ "main": "build/index.js",
27
+ "types": "build/index.d.ts",
28
+ "exports": {
29
+ ".": {
30
+ "import": {
31
+ "types": "./build/esm/index.d.ts",
32
+ "default": "./build/esm/index.js"
33
+ },
34
+ "require": {
35
+ "types": "./build/index.d.ts",
36
+ "default": "./build/index.js"
37
+ }
8
38
  },
9
- "license": "MIT",
10
- "homepage": "https://github.com/ioBroker/youtube-lounge",
11
- "repository": {
12
- "type": "git",
13
- "url": "git+https://github.com/ioBroker/youtube-lounge.git"
14
- },
15
- "keywords": [
16
- "youtube",
17
- "lounge",
18
- "dial",
19
- "tv",
20
- "remote",
21
- "iobroker"
22
- ],
23
- "engines": {
24
- "node": ">=20"
25
- },
26
- "main": "build/index.js",
27
- "types": "build/index.d.ts",
28
- "exports": {
29
- ".": {
30
- "import": {
31
- "types": "./build/esm/index.d.ts",
32
- "default": "./build/esm/index.js"
33
- },
34
- "require": {
35
- "types": "./build/index.d.ts",
36
- "default": "./build/index.js"
37
- }
38
- },
39
- "./package.json": "./package.json"
40
- },
41
- "files": [
42
- "LICENSE",
43
- "build/"
44
- ],
45
- "scripts": {
46
- "build": "tsc -p tsconfig.build.json && tsc -p tsconfig.esm.json && node lib/markEsm",
47
- "check": "tsc -p tsconfig.json",
48
- "lint": "eslint -c eslint.config.mjs",
49
- "test": "mocha --exit",
50
- "release": "release-script --noPush -y"
51
- },
52
- "devDependencies": {
53
- "@alcalzone/release-script": "^5.2.1",
54
- "@alcalzone/release-script-plugin-license": "^5.2.2",
55
- "@iobroker/eslint-config": "^2.3.4",
56
- "@types/node": "^22.20.5",
57
- "globals": "^17.13.0",
58
- "mocha": "^12.0.3",
59
- "typescript": "~5.9.3"
60
- }
39
+ "./package.json": "./package.json"
40
+ },
41
+ "files": [
42
+ "LICENSE",
43
+ "build/"
44
+ ],
45
+ "scripts": {
46
+ "build": "tsc -p tsconfig.build.json && tsc -p tsconfig.esm.json && node lib/markEsm",
47
+ "check": "tsc -p tsconfig.json",
48
+ "lint": "eslint -c eslint.config.mjs",
49
+ "test": "mocha --exit",
50
+ "release": "release-script --noPush -y"
51
+ },
52
+ "devDependencies": {
53
+ "@alcalzone/release-script": "^5.2.1",
54
+ "@alcalzone/release-script-plugin-license": "^5.2.2",
55
+ "@iobroker/eslint-config": "^2.3.4",
56
+ "@types/node": "^22.20.5",
57
+ "globals": "^17.13.0",
58
+ "mocha": "^12.0.3",
59
+ "typescript": "~5.9.3"
60
+ }
61
61
  }