homebridge-xbox-tv 3.3.4-beta.0 → 3.3.4-beta.2

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Xbox TV",
3
3
  "name": "homebridge-xbox-tv",
4
- "version": "3.3.4-beta.0",
4
+ "version": "3.3.4-beta.2",
5
5
  "description": "Homebridge plugin to control Xbox game consoles.",
6
6
  "license": "MIT",
7
7
  "author": "grzegorz914",
@@ -100,7 +100,7 @@ class Authentication {
100
100
  this.tokens.oauth = refreshToken;
101
101
  return true;
102
102
  } catch (error) {
103
- throw new Error(`Refresh token error: ${error.message || error}`);
103
+ throw new Error(`Refresh token error: ${error}`);
104
104
  };
105
105
  }
106
106
 
@@ -124,7 +124,7 @@ class Authentication {
124
124
  this.tokens.xsts = {};
125
125
  return true;
126
126
  } catch (error) {
127
- throw new Error(`User token error: ${error.message || error}`);
127
+ throw new Error(`User token error: ${error}`);
128
128
  };
129
129
  }
130
130
 
@@ -146,7 +146,7 @@ class Authentication {
146
146
  this.tokens.xsts = xstsToken;
147
147
  return true;
148
148
  } catch (error) {
149
- throw new Error(`Xsts token error: ${error.message || error}`);
149
+ throw new Error(`Xsts token error: ${error}`);
150
150
  };
151
151
  }
152
152
 
@@ -170,7 +170,7 @@ class Authentication {
170
170
  await this.saveData(this.tokensFile, this.tokens);
171
171
  return true;
172
172
  } catch (error) {
173
- throw new Error(`Access token error: ${error.message || error}`);
173
+ throw new Error(`Access token error: ${error}`);
174
174
  };
175
175
  }
176
176
 
@@ -209,7 +209,7 @@ class Authentication {
209
209
  const oauth2URI = `${WebApi.Url.oauth2}?${params}`;
210
210
  return oauth2URI;
211
211
  } catch (error) {
212
- throw new Error(`Authorization URL error: ${error.message || error}`);
212
+ throw new Error(`Authorization URL error: ${error}`);
213
213
  };
214
214
  }
215
215
 
@@ -219,7 +219,7 @@ class Authentication {
219
219
  const tokens = data.length > 0 ? JSON.parse(data) : false;
220
220
  return tokens;
221
221
  } catch (error) {
222
- throw new Error(`Read data error: ${error.message || error}`);
222
+ throw new Error(`Read data error: ${error}`);
223
223
  };
224
224
  }
225
225
 
@@ -229,7 +229,7 @@ class Authentication {
229
229
  await fsPromises.writeFile(path, data);
230
230
  return true;
231
231
  } catch (error) {
232
- throw new Error(`Save data error: ${error.message || error}`);
232
+ throw new Error(`Save data error: ${error}`);
233
233
  };
234
234
  }
235
235
  }
@@ -17,6 +17,7 @@ class XboxWebApi extends EventEmitter {
17
17
 
18
18
  //variables
19
19
  this.authorized = false;
20
+ this.rmEnabled = false;
20
21
 
21
22
  const authConfig = {
22
23
  webApiClientId: config.webApiClientId,
@@ -25,10 +26,11 @@ class XboxWebApi extends EventEmitter {
25
26
  }
26
27
  this.authentication = new Authentication(authConfig);
27
28
 
29
+ //create impulse generator
28
30
  this.impulseGenerator = new ImpulseGenerator();
29
31
  this.impulseGenerator.on('checkAuthorization', async () => {
30
32
  try {
31
- await this.checkAuthorization(this.contextKey);
33
+ await this.checkAuthorization();
32
34
  } catch (error) {
33
35
  this.emit('error', error);
34
36
  };
@@ -54,33 +56,36 @@ class XboxWebApi extends EventEmitter {
54
56
  this.tokens = data.tokens;
55
57
  this.authorized = true;
56
58
 
57
- //create axios instance
58
- this.axiosInstance = axios.create({
59
- method: 'GET',
60
- headers: headers
61
- });
62
- await this.xboxLiveData();
63
-
64
- return true;
65
- } catch (error) {
66
- throw new Error(`Check authorization error: ${error.message || error}`);
67
- };
68
- }
59
+ if (!this.authorized) {
60
+ this.emit('warn', `not authorized`);
61
+ return false;
62
+ };
69
63
 
70
- async xboxLiveData() {
71
- try {
72
- const rmEnabled = await this.consoleStatus();
73
- const debug1 = !rmEnabled ? this.emit('info', `Remote management not enabled, please check your console settings`) : false;
74
- //await this.consolesList();
75
- await this.installedApps();
76
- //await this.storageDevices();
77
- //await this.userProfile();
64
+ //check xbox live data
65
+ try {
66
+ //create axios instance
67
+ this.axiosInstance = axios.create({
68
+ method: 'GET',
69
+ headers: headers
70
+ });
71
+
72
+ const rmEnabled = await this.consoleStatus();
73
+ const debug1 = rmEnabled ? false : this.emit('info', `Remote management not enabled, please check your console settings`);
74
+ this.rmEnabled = rmEnabled;
75
+
76
+ //await this.consolesList();
77
+ await this.installedApps();
78
+ //await this.storageDevices();
79
+ //await this.userProfile();
80
+ } catch (error) {
81
+ this.emit('error', `Check xbox live data error: ${error}`);
82
+ };
78
83
 
79
84
  return true;
80
85
  } catch (error) {
81
- throw new Error(`Xbox live data error: ${error.message || error}`);
86
+ throw new Error(`Check authorization error: ${error}`);
82
87
  };
83
- };
88
+ }
84
89
 
85
90
  async consoleStatus() {
86
91
  try {
@@ -113,7 +118,7 @@ class XboxWebApi extends EventEmitter {
113
118
 
114
119
  return remoteManagementEnabled;
115
120
  } catch (error) {
116
- throw new Error(`Status error: ${error.message || error}`);
121
+ throw new Error(`Status error: ${error}`);
117
122
  };
118
123
  }
119
124
 
@@ -193,7 +198,7 @@ class XboxWebApi extends EventEmitter {
193
198
 
194
199
  return true;
195
200
  } catch (error) {
196
- throw new Error(`Consoles list error: ${error.message || error}`);
201
+ throw new Error(`Consoles list error: ${error}`);
197
202
  };
198
203
  }
199
204
 
@@ -245,7 +250,7 @@ class XboxWebApi extends EventEmitter {
245
250
 
246
251
  return true;
247
252
  } catch (error) {
248
- throw new Error(`Installed apps error: ${error.message || error}`);
253
+ throw new Error(`Installed apps error: ${error}`);
249
254
  };
250
255
  }
251
256
 
@@ -288,7 +293,7 @@ class XboxWebApi extends EventEmitter {
288
293
 
289
294
  return true;
290
295
  } catch (error) {
291
- throw new Error(`storage devices error: ${error.message || error}`);
296
+ throw new Error(`storage devices error: ${error}`);
292
297
  };
293
298
  }
294
299
 
@@ -331,7 +336,7 @@ class XboxWebApi extends EventEmitter {
331
336
 
332
337
  return true;
333
338
  } catch (error) {
334
- throw new Error(`User profile error: ${error.message || error}`);
339
+ throw new Error(`User profile error: ${error}`);
335
340
  };
336
341
  }
337
342
 
@@ -342,7 +347,7 @@ class XboxWebApi extends EventEmitter {
342
347
  const debug = this.enableDebugMode ? this.emit('debug', `Saved data: ${data}`) : false;
343
348
  return true;
344
349
  } catch (error) {
345
- throw new Error(`Save data error: ${error.message || error}`);
350
+ throw new Error(`Save data error: ${error}`);
346
351
  };
347
352
  };
348
353
 
@@ -392,8 +397,8 @@ class XboxWebApi extends EventEmitter {
392
397
  }
393
398
 
394
399
  async send(commandType, command, payload) {
395
- if (!this.authorized) {
396
- this.emit('warn', `not authorized`);
400
+ if (!this.authorized || !this.rmEnabled) {
401
+ this.emit('warn', `not authorized or remote management not enabled`);
397
402
  return;
398
403
  };
399
404
 
package/src/xboxdevice.js CHANGED
@@ -129,7 +129,7 @@ class XboxDevice extends EventEmitter {
129
129
  const debug = this.enableDebugMode ? this.emit('debug', `Saved data: ${data}`) : false;
130
130
  return true;
131
131
  } catch (error) {
132
- throw new Error(`Save data error: ${error.message || error}`);
132
+ throw new Error(`Save data error: ${error}`);
133
133
  };
134
134
  }
135
135
 
@@ -139,7 +139,7 @@ class XboxDevice extends EventEmitter {
139
139
  const debug = !this.enableDebugMode ? false : this.emit('debug', `Read data: ${JSON.stringify(data, null, 2)}`);
140
140
  return data;
141
141
  } catch (error) {
142
- throw new Error(`Read data error: ${error.message || error}`);
142
+ throw new Error(`Read data error: ${error}`);
143
143
  };
144
144
  }
145
145
 
@@ -203,7 +203,7 @@ class XboxDevice extends EventEmitter {
203
203
  };
204
204
  return set;
205
205
  } catch (error) {
206
- throw new Error(`${integration} set key: ${key}, value: ${value}, error: ${error.message || error}`);
206
+ throw new Error(`${integration} set key: ${key}, value: ${value}, error: ${error}`);
207
207
  };
208
208
  }
209
209
 
@@ -308,7 +308,7 @@ class XboxDevice extends EventEmitter {
308
308
  this.televisionService.setCharacteristic(Characteristic.DisplayOrder, Encode(1, displayOrder).toString('base64'));
309
309
  return true;
310
310
  } catch (error) {
311
- throw new Error(`Display order error: ${error.message || error}`);
311
+ throw new Error(`Display order error: ${error}`);
312
312
  };
313
313
  }
314
314
 
@@ -1215,7 +1215,7 @@ class XboxDevice extends EventEmitter {
1215
1215
 
1216
1216
  return true;
1217
1217
  } catch (error) {
1218
- throw new Error(`Start error: ${error.message || error}`);
1218
+ throw new Error(`Start error: ${error}`);
1219
1219
  };
1220
1220
  }
1221
1221
  };