@o-lukas/homebridge-smartthings-tv 1.6.0 → 1.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/.pre-commit-config.yaml +13 -0
- package/LICENSE +1 -1
- package/README.md +8 -3
- package/config.schema.json +7 -1
- package/dist/sliderAccessory.d.ts +21 -0
- package/dist/sliderAccessory.d.ts.map +1 -0
- package/dist/sliderAccessory.js +53 -0
- package/dist/sliderAccessory.js.map +1 -0
- package/dist/smartThingsAccessory.d.ts +1 -1
- package/dist/smartThingsAccessory.d.ts.map +1 -1
- package/dist/smartThingsAccessory.js +3 -1
- package/dist/smartThingsAccessory.js.map +1 -1
- package/dist/smartThingsPlatform.d.ts +11 -2
- package/dist/smartThingsPlatform.d.ts.map +1 -1
- package/dist/smartThingsPlatform.js +44 -3
- package/dist/smartThingsPlatform.js.map +1 -1
- package/dist/switchAccessory.js +2 -2
- package/dist/switchAccessory.js.map +1 -1
- package/dist/tvAccessory.d.ts +10 -4
- package/dist/tvAccessory.d.ts.map +1 -1
- package/dist/tvAccessory.js +45 -33
- package/dist/tvAccessory.js.map +1 -1
- package/package.json +8 -8
- package/.devcontainer/Dockerfile +0 -13
- package/.devcontainer/devcontainer.json +0 -21
- package/.devcontainer/docker-compose.yml +0 -11
- package/.devcontainer/homebridge-config/auth.json +0 -10
- package/.devcontainer/homebridge-config/config.json +0 -27
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: v2.3.0
|
|
4
|
+
hooks:
|
|
5
|
+
- id: check-yaml
|
|
6
|
+
- id: end-of-file-fixer
|
|
7
|
+
- id: trailing-whitespace
|
|
8
|
+
- repo: https://github.com/pre-commit/mirrors-eslint
|
|
9
|
+
rev: 'v8.44.0'
|
|
10
|
+
hooks:
|
|
11
|
+
- id: eslint
|
|
12
|
+
files: \.[jt]sx?$ # *.js, *.jsx, *.ts and *.tsx
|
|
13
|
+
types: [file]
|
package/LICENSE
CHANGED
|
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
18
18
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
19
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
20
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -46,6 +46,7 @@ The following snippets shows all available properties you can use for the plugin
|
|
|
46
46
|
"registerApplications": true,
|
|
47
47
|
"registerPictureModes": true,
|
|
48
48
|
"registerSoundModes": true,
|
|
49
|
+
"registerVolumeSlider": true,
|
|
49
50
|
"deviceMappings": [
|
|
50
51
|
{
|
|
51
52
|
"deviceId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
|
|
@@ -95,6 +96,10 @@ Registers all available picture modes as separate switches that can be toggled t
|
|
|
95
96
|
|
|
96
97
|
Registers all available sound modes as separate switches that can be toggled to enable/disable a sound mode. Uses the names as exposed from the SmartThings API.
|
|
97
98
|
|
|
99
|
+
### registerVolumeSlider
|
|
100
|
+
|
|
101
|
+
Registers a separate volume slider accessorry that will be exposed as a light bulb accessory (because there is currently no option to change a speaker volume directly using Home).
|
|
102
|
+
|
|
98
103
|
### deviceMappings
|
|
99
104
|
|
|
100
105
|
Use the device mappings when e.g. turning on the accessory does not work as expected. When a device mapping is available the wake-on-lan functionality is used to turn on the device instead of the SmartThings API. To make use of the functionality you must enter the mapping using the SmartThings device ID and the mac address of the device. If status does not show up properly you can use the ping functionality to determine the device status. To make use of it you must enter the SmartThings device ID and the ip address of the device.
|
|
@@ -111,7 +116,7 @@ Enables usage of wake-on-lan functionality to turn the device on. Use only if us
|
|
|
111
116
|
|
|
112
117
|
The mac address of the device to turn device on using wake-on-lan functionality.
|
|
113
118
|
|
|
114
|
-
### ping
|
|
119
|
+
### ping
|
|
115
120
|
|
|
116
121
|
Enables usage of ping functionality to determine if device is turned on. Use only if using the SmartThings API does not work for your device.
|
|
117
122
|
|
|
@@ -183,6 +188,6 @@ Sometimes the SmartThings API seems to loose the contact to the device and does
|
|
|
183
188
|
|
|
184
189
|
***
|
|
185
190
|
|
|
186
|
-
Since this is my first plugin it may contain some problems. Feel free to create an issue or pull request and I will try to help and fix the problems.
|
|
191
|
+
Since this is my first plugin it may contain some problems. Feel free to create an issue or pull request and I will try to help and fix the problems.
|
|
187
192
|
|
|
188
|
-
But since this plugin is developed in my spare time don't expect a quick fix.
|
|
193
|
+
But since this plugin is developed in my spare time don't expect a quick fix.
|
package/config.schema.json
CHANGED
|
@@ -35,6 +35,12 @@
|
|
|
35
35
|
"required": false,
|
|
36
36
|
"description": "Registers all available sound modes as separate switches that can be toggled to enable/disable a sound mode. Uses the names as exposed from the SmartThings API."
|
|
37
37
|
},
|
|
38
|
+
"registerVolumeSlider": {
|
|
39
|
+
"title": "Register volume slider",
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"required": false,
|
|
42
|
+
"description": "Registers a separate volume slider accessorry that will be exposed as a light bulb accessory (because there is currently no option to change a speaker volume directly using Home)."
|
|
43
|
+
},
|
|
38
44
|
"deviceMappings": {
|
|
39
45
|
"type": "array",
|
|
40
46
|
"items": {
|
|
@@ -78,4 +84,4 @@
|
|
|
78
84
|
}
|
|
79
85
|
}
|
|
80
86
|
}
|
|
81
|
-
}
|
|
87
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { PlatformAccessory, CharacteristicValue, Logger } from 'homebridge';
|
|
2
|
+
import { SmartThingsPlatform } from './smartThingsPlatform';
|
|
3
|
+
import { SmartThingsClient, Device, Component, CapabilityStatus } from '@smartthings/core-sdk';
|
|
4
|
+
import { SmartThingsAccessory } from './smartThingsAccessory';
|
|
5
|
+
/**
|
|
6
|
+
* Class implements a slider accessory to execute a capability commmand.
|
|
7
|
+
*/
|
|
8
|
+
export declare class SliderAccessory extends SmartThingsAccessory {
|
|
9
|
+
private readonly capability;
|
|
10
|
+
private readonly command;
|
|
11
|
+
private readonly onGet;
|
|
12
|
+
private readonly onSet;
|
|
13
|
+
private readonly service;
|
|
14
|
+
private lastValueBeforeOff;
|
|
15
|
+
constructor(device: Device, component: Component, client: SmartThingsClient, log: Logger, platform: SmartThingsPlatform, accessory: PlatformAccessory, capability: string, command: string, onGet: (value: CapabilityStatus | null) => CharacteristicValue, onSet: (value: CharacteristicValue) => (string | number | object)[]);
|
|
16
|
+
private handleGetOn;
|
|
17
|
+
private handleSetOn;
|
|
18
|
+
private handleGetBrightness;
|
|
19
|
+
private handleSetBrightness;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=sliderAccessory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliderAccessory.d.ts","sourceRoot":"","sources":["../src/sliderAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;GAEG;AACH,qBAAa,eAAgB,SAAQ,oBAAoB;IAarD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAfxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAGlC,OAAO,CAAC,kBAAkB,CAAK;gBAG7B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,EACzB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,iBAAiB,EACX,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,KAAK,mBAAmB,EAC9D,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE;YAcxE,WAAW;YAIX,WAAW;YAWX,mBAAmB;YAMnB,mBAAmB;CAKlC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SliderAccessory = void 0;
|
|
4
|
+
const smartThingsAccessory_1 = require("./smartThingsAccessory");
|
|
5
|
+
/**
|
|
6
|
+
* Class implements a slider accessory to execute a capability commmand.
|
|
7
|
+
*/
|
|
8
|
+
class SliderAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
9
|
+
constructor(device, component, client, log, platform, accessory, capability, command, onGet, onSet) {
|
|
10
|
+
var _a;
|
|
11
|
+
super(device, component, client, platform, accessory, log);
|
|
12
|
+
this.capability = capability;
|
|
13
|
+
this.command = command;
|
|
14
|
+
this.onGet = onGet;
|
|
15
|
+
this.onSet = onSet;
|
|
16
|
+
// stores the last value before the off functionality has been used
|
|
17
|
+
// so this value can be restored when turning back on
|
|
18
|
+
this.lastValueBeforeOff = 0;
|
|
19
|
+
this.service = (_a = this.accessory.getService(this.platform.Service.Lightbulb)) !== null && _a !== void 0 ? _a : this.accessory.addService(this.platform.Service.Lightbulb);
|
|
20
|
+
this.service.getCharacteristic(this.platform.Characteristic.On)
|
|
21
|
+
.onGet(this.handleGetOn.bind(this))
|
|
22
|
+
.onSet(this.handleSetOn.bind(this));
|
|
23
|
+
this.service.getCharacteristic(this.platform.Characteristic.Brightness)
|
|
24
|
+
.onGet(this.handleGetBrightness.bind(this))
|
|
25
|
+
.onSet(this.handleSetBrightness.bind(this));
|
|
26
|
+
}
|
|
27
|
+
async handleGetOn() {
|
|
28
|
+
return await this.handleGetBrightness() > 0;
|
|
29
|
+
}
|
|
30
|
+
async handleSetOn(value) {
|
|
31
|
+
if (value) {
|
|
32
|
+
this.logDebug('Turning back on - set %s to: %s', this.capability, this.lastValueBeforeOff);
|
|
33
|
+
await this.executeCommand(this.capability, this.command, [this.lastValueBeforeOff]);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
this.lastValueBeforeOff = await this.handleGetBrightness();
|
|
37
|
+
this.logDebug('Turning off - saving %s last value %s and setting value to: %s', this.capability, this.lastValueBeforeOff, 0);
|
|
38
|
+
await this.executeCommand(this.capability, this.command, [0]);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
async handleGetBrightness() {
|
|
42
|
+
const apiValue = this.onGet(await this.getCapabilityStatus(this.capability));
|
|
43
|
+
this.logDebug('Get %s value: %s', this.capability, apiValue);
|
|
44
|
+
return apiValue;
|
|
45
|
+
}
|
|
46
|
+
async handleSetBrightness(value) {
|
|
47
|
+
const apiValue = this.onSet(value);
|
|
48
|
+
this.logDebug('Set %s to: %s', this.capability, apiValue);
|
|
49
|
+
await this.executeCommand(this.capability, this.command, apiValue);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.SliderAccessory = SliderAccessory;
|
|
53
|
+
//# sourceMappingURL=sliderAccessory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliderAccessory.js","sourceRoot":"","sources":["../src/sliderAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ export declare abstract class SmartThingsAccessory {
|
|
|
20
20
|
* @param command the command identifier
|
|
21
21
|
* @param args the command arguments
|
|
22
22
|
*/
|
|
23
|
-
protected executeCommand(capability: string, command: string, args?:
|
|
23
|
+
protected executeCommand(capability: string, command: string, args?: (string | number | object)[]): Promise<void>;
|
|
24
24
|
/**
|
|
25
25
|
* Returns the status of the capability passed in.
|
|
26
26
|
* Handles error values returned by api.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartThingsAccessory.d.ts","sourceRoot":"","sources":["../src/smartThingsAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"smartThingsAccessory.d.ts","sourceRoot":"","sources":["../src/smartThingsAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAG3G;;GAEG;AACH,8BAAsB,oBAAoB;IAEtC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS;IACvC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,iBAAiB;IAC5C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB;IAChD,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG;IANtB,SAAS,aACY,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,iBAAiB,EAC9B,GAAG,EAAE,MAAM;IAS9B;;;;;;;OAOG;cACa,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,EAAO;IAkB3G;;;;;;OAMG;cACa,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAezF,SAAS,CAAC,yBAAyB,CAAC,UAAU,EAAE,UAAU;IAO1D,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI;IAIlE,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI;IAIlE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI;IAInE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,GAAG,IAAI;CAGpE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SmartThingsAccessory = void 0;
|
|
4
|
+
const core_sdk_1 = require("@smartthings/core-sdk");
|
|
4
5
|
/**
|
|
5
6
|
* Class implements a base class for SmartThings accessories.
|
|
6
7
|
*/
|
|
@@ -42,6 +43,7 @@ class SmartThingsAccessory {
|
|
|
42
43
|
errorMessage = error.message;
|
|
43
44
|
}
|
|
44
45
|
this.logError('Error when executing %s of capability %s: %s', command, capability, errorMessage);
|
|
46
|
+
throw new this.platform.api.hap.HapStatusError(-70402 /* this.platform.api.hap.HAPStatus.SERVICE_COMMUNICATION_FAILURE */);
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
49
|
/**
|
|
@@ -68,7 +70,7 @@ class SmartThingsAccessory {
|
|
|
68
70
|
}
|
|
69
71
|
logCapabilityRegistration(capability) {
|
|
70
72
|
this.logInfo('Registering capability:', capability.name);
|
|
71
|
-
if (capability.status !==
|
|
73
|
+
if (capability.status !== core_sdk_1.CustomCapabilityStatus.LIVE) {
|
|
72
74
|
this.logWarn('Capability %s might not work as expected because it\'s status is: %s', capability.name, capability.status);
|
|
73
75
|
}
|
|
74
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartThingsAccessory.js","sourceRoot":"","sources":["../src/smartThingsAccessory.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"smartThingsAccessory.js","sourceRoot":"","sources":["../src/smartThingsAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,11 +61,20 @@ export declare class SmartThingsPlatform implements DynamicPlatformPlugin {
|
|
|
61
61
|
capability: string;
|
|
62
62
|
command: string;
|
|
63
63
|
prefix: string;
|
|
64
|
-
modes:
|
|
64
|
+
modes: {
|
|
65
65
|
id: string;
|
|
66
66
|
name: string;
|
|
67
|
-
}
|
|
67
|
+
}[];
|
|
68
68
|
}): void;
|
|
69
|
+
/**
|
|
70
|
+
* Register the volume of the device passed in as platform accessory.
|
|
71
|
+
* Handles caching of accessories as well.
|
|
72
|
+
*
|
|
73
|
+
* @param client the SmartThingsClient used to send API calls
|
|
74
|
+
* @param device the SmartThings Device
|
|
75
|
+
* @param component the SmartThings Device's Component
|
|
76
|
+
*/
|
|
77
|
+
registerVolumeSlider(client: SmartThingsClient, device: Device, component: Component): void;
|
|
69
78
|
}
|
|
70
79
|
export {};
|
|
71
80
|
//# sourceMappingURL=smartThingsPlatform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartThingsPlatform.d.ts","sourceRoot":"","sources":["../src/smartThingsPlatform.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"smartThingsPlatform.d.ts","sourceRoot":"","sources":["../src/smartThingsPlatform.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,qBAAqB,EACrB,MAAM,EACN,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,cAAc,EAEf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,iBAAiB,EAA4B,MAAM,EAAE,SAAS,EAAoB,MAAM,uBAAuB,CAAC;AAIzH;;GAEG;AACH,cAAM,aAAa;aACW,QAAQ,EAAE,MAAM;aAAkB,UAAU,EAAE,MAAM;aAAkB,SAAS,EAAE,MAAM;gBAAvF,QAAQ,EAAE,MAAM,EAAkB,UAAU,EAAE,MAAM,EAAkB,SAAS,EAAE,MAAM;CAEpH;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,qBAAqB;aAQ7C,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAT1B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAwB;IAC/D,SAAgB,cAAc,EAAE,OAAO,cAAc,CAA+B;IAGpF,SAAgB,WAAW,EAAE,iBAAiB,EAAE,CAAM;gBAGpC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IAe1B;;OAEG;IAEH,kBAAkB,CAAC,SAAS,EAAE,iBAAiB;IAO/C;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,aAAa,CAAC;IAgBpE;;;;;;OAMG;IACG,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,aAAa,CAAC;IAe/F;;;;;;;OAOG;IACG,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,SAAS;IA0C1G;;;;;;;;OAQG;IACH,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAClF,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAC5F;IAwBH;;;;;;;OAOG;IACH,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;CAiCrF"}
|
|
@@ -5,6 +5,7 @@ const settings_1 = require("./settings");
|
|
|
5
5
|
const tvAccessory_1 = require("./tvAccessory");
|
|
6
6
|
const core_sdk_1 = require("@smartthings/core-sdk");
|
|
7
7
|
const switchAccessory_1 = require("./switchAccessory");
|
|
8
|
+
const sliderAccessory_1 = require("./sliderAccessory");
|
|
8
9
|
/**
|
|
9
10
|
* Class implements the configured Device to mac and ip address mappings.
|
|
10
11
|
*/
|
|
@@ -32,9 +33,9 @@ class SmartThingsPlatform {
|
|
|
32
33
|
this.log.error('SmartThings API token must be configured');
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
35
|
-
this.api.on('didFinishLaunching',
|
|
36
|
+
this.api.on('didFinishLaunching', () => {
|
|
36
37
|
this.log.debug('Executed didFinishLaunching callback');
|
|
37
|
-
|
|
38
|
+
void this.discoverDevices(config.token, config.deviceMappings);
|
|
38
39
|
});
|
|
39
40
|
}
|
|
40
41
|
/**
|
|
@@ -120,6 +121,14 @@ class SmartThingsPlatform {
|
|
|
120
121
|
this.registerModeSwitches(client, device, component, modes);
|
|
121
122
|
}
|
|
122
123
|
}
|
|
124
|
+
if (this.config.registerVolumeSlider) {
|
|
125
|
+
if (tv.hasSpeakerService()) {
|
|
126
|
+
this.registerVolumeSlider(client, device, component);
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
this.log.warn('Volume slider can not be registered because TV has no volume capabilities');
|
|
130
|
+
}
|
|
131
|
+
}
|
|
123
132
|
}
|
|
124
133
|
/**
|
|
125
134
|
* Register the modes of the device passed in as platform accessories.
|
|
@@ -132,7 +141,7 @@ class SmartThingsPlatform {
|
|
|
132
141
|
*/
|
|
133
142
|
registerModeSwitches(client, device, component, modes) {
|
|
134
143
|
for (const mode of modes.modes) {
|
|
135
|
-
const id = this.api.hap.uuid.generate(`${modes.prefix}${mode.id}`);
|
|
144
|
+
const id = this.api.hap.uuid.generate(`${device.deviceId}${modes.prefix}${mode.id}`);
|
|
136
145
|
const name = `${modes.prefix} ${mode.name}`;
|
|
137
146
|
const existingAccessory = this.accessories.find(accessory => accessory.UUID === id);
|
|
138
147
|
if (existingAccessory) {
|
|
@@ -148,6 +157,38 @@ class SmartThingsPlatform {
|
|
|
148
157
|
}
|
|
149
158
|
}
|
|
150
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Register the volume of the device passed in as platform accessory.
|
|
162
|
+
* Handles caching of accessories as well.
|
|
163
|
+
*
|
|
164
|
+
* @param client the SmartThingsClient used to send API calls
|
|
165
|
+
* @param device the SmartThings Device
|
|
166
|
+
* @param component the SmartThings Device's Component
|
|
167
|
+
*/
|
|
168
|
+
registerVolumeSlider(client, device, component) {
|
|
169
|
+
const id = this.api.hap.uuid.generate(`${device.deviceId}volume`);
|
|
170
|
+
const name = 'Volume';
|
|
171
|
+
const existingAccessory = this.accessories.find(accessory => accessory.UUID === id);
|
|
172
|
+
if (existingAccessory) {
|
|
173
|
+
this.log.info('Restoring existing accessory from cache: %s', existingAccessory.displayName);
|
|
174
|
+
new sliderAccessory_1.SliderAccessory(device, component, client, this.log, this, existingAccessory, 'audioVolume', 'setVolume', (value) => {
|
|
175
|
+
return value === null || value === void 0 ? void 0 : value.volume.value;
|
|
176
|
+
}, (value) => {
|
|
177
|
+
return [value];
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
const accessory = new this.api.platformAccessory(name, id);
|
|
182
|
+
accessory.context.device = device;
|
|
183
|
+
accessory.category = 5 /* this.api.hap.Categories.LIGHTBULB */;
|
|
184
|
+
new sliderAccessory_1.SliderAccessory(device, component, client, this.log, this, accessory, 'audioVolume', 'setVolume', (value) => {
|
|
185
|
+
return value === null || value === void 0 ? void 0 : value.volume.value;
|
|
186
|
+
}, (value) => {
|
|
187
|
+
return [value];
|
|
188
|
+
});
|
|
189
|
+
this.api.registerPlatformAccessories(settings_1.PLUGIN_NAME, settings_1.PLATFORM_NAME, [accessory]);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
151
192
|
}
|
|
152
193
|
exports.SmartThingsPlatform = SmartThingsPlatform;
|
|
153
194
|
//# sourceMappingURL=smartThingsPlatform.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartThingsPlatform.js","sourceRoot":"","sources":["../src/smartThingsPlatform.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"smartThingsPlatform.js","sourceRoot":"","sources":["../src/smartThingsPlatform.ts"],"names":[],"mappings":"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"}
|
package/dist/switchAccessory.js
CHANGED
|
@@ -7,12 +7,12 @@ const smartThingsAccessory_1 = require("./smartThingsAccessory");
|
|
|
7
7
|
*/
|
|
8
8
|
class SwitchAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
9
9
|
constructor(device, component, client, log, platform, accessory, capability, command, value) {
|
|
10
|
+
var _a;
|
|
10
11
|
super(device, component, client, platform, accessory, log);
|
|
11
12
|
this.capability = capability;
|
|
12
13
|
this.command = command;
|
|
13
14
|
this.value = value;
|
|
14
|
-
this.service = this.accessory.getService(this.platform.Service.Switch)
|
|
15
|
-
this.accessory.addService(this.platform.Service.Switch);
|
|
15
|
+
this.service = (_a = this.accessory.getService(this.platform.Service.Switch)) !== null && _a !== void 0 ? _a : this.accessory.addService(this.platform.Service.Switch);
|
|
16
16
|
this.service.getCharacteristic(this.platform.Characteristic.On)
|
|
17
17
|
.onGet(this.handleGet.bind(this))
|
|
18
18
|
.onSet(this.handleSet.bind(this));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchAccessory.js","sourceRoot":"","sources":["../src/switchAccessory.ts"],"names":[],"mappings":";;;AAIA,iEAA8D;AAE9D;;GAEG;AACH,MAAa,eAAgB,SAAQ,2CAAoB;IAGvD,YACE,MAAc,EACd,SAAoB,EACpB,MAAyB,EACzB,GAAW,EACX,QAA6B,EAC7B,SAA4B,EACX,UAAkB,EAClB,OAAe,EACf,KAAa
|
|
1
|
+
{"version":3,"file":"switchAccessory.js","sourceRoot":"","sources":["../src/switchAccessory.ts"],"names":[],"mappings":";;;AAIA,iEAA8D;AAE9D;;GAEG;AACH,MAAa,eAAgB,SAAQ,2CAAoB;IAGvD,YACE,MAAc,EACd,SAAoB,EACpB,MAAyB,EACzB,GAAW,EACX,QAA6B,EAC7B,SAA4B,EACX,UAAkB,EAClB,OAAe,EACf,KAAa;;QAE9B,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAJ1C,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAQ;QAI9B,IAAI,CAAC,OAAO,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,mCACpE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;aAC5D,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACtC,CAAC;IAEO,SAAS;QACf,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,KAA0B;QAChD,IAAI,KAAK,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACjE,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAEvE,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YACzE,CAAC,EAAE,GAAG,CAAC,CAAC;SACT;IACH,CAAC;CACF;AArCD,0CAqCC"}
|
package/dist/tvAccessory.d.ts
CHANGED
|
@@ -30,10 +30,10 @@ export declare class TvAccessory extends SmartThingsAccessory {
|
|
|
30
30
|
capability: string;
|
|
31
31
|
command: string;
|
|
32
32
|
prefix: string;
|
|
33
|
-
modes:
|
|
33
|
+
modes: {
|
|
34
34
|
id: string;
|
|
35
35
|
name: string;
|
|
36
|
-
}
|
|
36
|
+
}[];
|
|
37
37
|
} | undefined>;
|
|
38
38
|
/**
|
|
39
39
|
* Returns all available sound modes for the current device.
|
|
@@ -44,11 +44,17 @@ export declare class TvAccessory extends SmartThingsAccessory {
|
|
|
44
44
|
capability: string;
|
|
45
45
|
command: string;
|
|
46
46
|
prefix: string;
|
|
47
|
-
modes:
|
|
47
|
+
modes: {
|
|
48
48
|
id: string;
|
|
49
49
|
name: string;
|
|
50
|
-
}
|
|
50
|
+
}[];
|
|
51
51
|
} | undefined>;
|
|
52
|
+
/**
|
|
53
|
+
* Returns whether the speaker service is available.
|
|
54
|
+
*
|
|
55
|
+
* @returns TRUE in case speaker service is available - FALSE otherwise
|
|
56
|
+
*/
|
|
57
|
+
hasSpeakerService(): boolean;
|
|
52
58
|
/**
|
|
53
59
|
* Registers the SmartThings Capablity if it's functionality is implemented.
|
|
54
60
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tvAccessory.d.ts","sourceRoot":"","sources":["../src/tvAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAuB,MAAM,EAAE,MAAM,YAAY,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAc,MAAM,uBAAuB,CAAC;AAGzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D;;GAEG;AACH,qBAAa,WAAY,SAAQ,oBAAoB;IAejD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAjB5B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"tvAccessory.d.ts","sourceRoot":"","sources":["../src/tvAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAuB,MAAM,EAAE,MAAM,YAAY,CAAC;AAErF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAc,MAAM,uBAAuB,CAAC;AAGzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAI9D;;GAEG;AACH,qBAAa,WAAY,SAAQ,oBAAoB;IAejD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAjB5B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,0BAA0B,CAAK;IACvC,OAAO,CAAC,2BAA2B,CAAK;gBAGtC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,EACzB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,iBAAiB,EACX,eAAe,EAAE,OAAO,EACxB,oBAAoB,EAAE,OAAO,EAC7B,UAAU,GAAE,MAAM,GAAG,SAAqB,EAC1C,SAAS,GAAE,MAAM,GAAG,SAAqB;IAiB5D;;OAEG;IACU,oBAAoB;IAcjC;;;;OAIG;IACU,eAAe,IAAI,OAAO,CAAC;QACtC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAC5F,GAAG,SAAS,CAAC;IAcd;;;;OAIG;IACU,aAAa,IAAI,OAAO,CAAC;QACpC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;KAC5F,GAAG,SAAS,CAAC;IAcd;;;;OAIG;IACI,iBAAiB,IAAI,OAAO;IAInC;;;;OAIG;YACW,kBAAkB;IA4EhC;;;;OAIG;YACW,SAAS;IAmBvB;;;;OAIG;YACW,SAAS;IAiBvB;;;;OAIG;YACW,iBAAiB;IAM/B;;;;OAIG;YACW,SAAS;IAKvB;;;;OAIG;YACW,SAAS;IAKvB;;;;OAIG;YACW,OAAO;IAKrB;;;;OAIG;YACW,OAAO;IAKrB;;;;OAIG;YACW,mBAAmB;IAejC;;;;OAIG;YACW,mBAAmB;IAoBjC;;;;OAIG;YACW,YAAY;IAkF1B;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IASnC;;OAEG;YACW,kCAAkC;IAQhD;;;;;;OAMG;YACW,mCAAmC;IAuBjD;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;CAS7B"}
|
package/dist/tvAccessory.js
CHANGED
|
@@ -13,28 +13,25 @@ const apps_json_1 = __importDefault(require("./res/apps.json"));
|
|
|
13
13
|
*/
|
|
14
14
|
class TvAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
15
15
|
constructor(device, component, client, log, platform, accessory, logCapabilities, registerApplications, macAddress = undefined, ipAddress = undefined) {
|
|
16
|
-
var _a, _b;
|
|
16
|
+
var _a, _b, _c;
|
|
17
17
|
super(device, component, client, platform, accessory, log);
|
|
18
18
|
this.logCapabilities = logCapabilities;
|
|
19
19
|
this.registerApplications = registerApplications;
|
|
20
20
|
this.macAddress = macAddress;
|
|
21
21
|
this.ipAddress = ipAddress;
|
|
22
|
+
this.speakerService = undefined;
|
|
22
23
|
this.inputSources = [];
|
|
23
24
|
this.capabilities = [];
|
|
24
25
|
this.activeIdentifierChangeTime = 0;
|
|
25
26
|
this.activeIdentifierChangeValue = 0;
|
|
26
27
|
this.accessory.getService(this.platform.Service.AccessoryInformation)
|
|
27
28
|
.setCharacteristic(this.platform.Characteristic.Name, (_a = device.name) !== null && _a !== void 0 ? _a : device.deviceId);
|
|
28
|
-
this.service = this.accessory.getService(this.platform.Service.Television)
|
|
29
|
-
|| this.accessory.addService(this.platform.Service.Television);
|
|
29
|
+
this.service = (_b = this.accessory.getService(this.platform.Service.Television)) !== null && _b !== void 0 ? _b : this.accessory.addService(this.platform.Service.Television);
|
|
30
30
|
this.service
|
|
31
31
|
.setCharacteristic(this.platform.Characteristic.SleepDiscoveryMode, this.platform.Characteristic.SleepDiscoveryMode.ALWAYS_DISCOVERABLE)
|
|
32
|
-
.setCharacteristic(this.platform.Characteristic.ConfiguredName, (
|
|
32
|
+
.setCharacteristic(this.platform.Characteristic.ConfiguredName, (_c = device.name) !== null && _c !== void 0 ? _c : device.deviceId);
|
|
33
33
|
this.service.getCharacteristic(this.platform.Characteristic.RemoteKey)
|
|
34
34
|
.onSet(this.setRemoteKey.bind(this));
|
|
35
|
-
this.speakerService = this.accessory.getService(this.platform.Service.TelevisionSpeaker)
|
|
36
|
-
|| this.accessory.addService(this.platform.Service.TelevisionSpeaker);
|
|
37
|
-
this.service.addLinkedService(this.speakerService);
|
|
38
35
|
}
|
|
39
36
|
/**
|
|
40
37
|
* Registers all available capabilities of the SmartThings Component.
|
|
@@ -84,12 +81,21 @@ class TvAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
|
84
81
|
modes: [...new Set(status === null || status === void 0 ? void 0 : status.supportedSoundModesMap.value)],
|
|
85
82
|
};
|
|
86
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Returns whether the speaker service is available.
|
|
86
|
+
*
|
|
87
|
+
* @returns TRUE in case speaker service is available - FALSE otherwise
|
|
88
|
+
*/
|
|
89
|
+
hasSpeakerService() {
|
|
90
|
+
return this.speakerService !== undefined;
|
|
91
|
+
}
|
|
87
92
|
/**
|
|
88
93
|
* Registers the SmartThings Capablity if it's functionality is implemented.
|
|
89
94
|
*
|
|
90
95
|
* @param capability the Capability
|
|
91
96
|
*/
|
|
92
97
|
async registerCapability(capability) {
|
|
98
|
+
var _a, _b;
|
|
93
99
|
if (this.logCapabilities) {
|
|
94
100
|
this.logDebug('Available capability: %s', JSON.stringify(capability, null, 2));
|
|
95
101
|
}
|
|
@@ -104,6 +110,10 @@ class TvAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
|
104
110
|
.onGet(this.getActive.bind(this));
|
|
105
111
|
break;
|
|
106
112
|
case 'audioVolume':
|
|
113
|
+
if (!this.speakerService) {
|
|
114
|
+
this.speakerService = (_a = this.accessory.getService(this.platform.Service.TelevisionSpeaker)) !== null && _a !== void 0 ? _a : this.accessory.addService(this.platform.Service.TelevisionSpeaker);
|
|
115
|
+
this.service.addLinkedService(this.speakerService);
|
|
116
|
+
}
|
|
107
117
|
this.logCapabilityRegistration(capability);
|
|
108
118
|
this.speakerService
|
|
109
119
|
.setCharacteristic(this.platform.Characteristic.Active, this.platform.Characteristic.Active.ACTIVE);
|
|
@@ -117,6 +127,10 @@ class TvAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
|
117
127
|
.onSet(this.setVolumeSelector.bind(this));
|
|
118
128
|
break;
|
|
119
129
|
case 'audioMute':
|
|
130
|
+
if (!this.speakerService) {
|
|
131
|
+
this.speakerService = (_b = this.accessory.getService(this.platform.Service.TelevisionSpeaker)) !== null && _b !== void 0 ? _b : this.accessory.addService(this.platform.Service.TelevisionSpeaker);
|
|
132
|
+
this.service.addLinkedService(this.speakerService);
|
|
133
|
+
}
|
|
120
134
|
this.logCapabilityRegistration(capability);
|
|
121
135
|
this.speakerService.getCharacteristic(this.platform.Characteristic.Mute)
|
|
122
136
|
.onSet(this.setMute.bind(this))
|
|
@@ -165,11 +179,11 @@ class TvAccessory extends smartThingsAccessory_1.SmartThingsAccessory {
|
|
|
165
179
|
}
|
|
166
180
|
}
|
|
167
181
|
else {
|
|
168
|
-
this.executeCommand('switch', 'on');
|
|
182
|
+
await this.executeCommand('switch', 'on');
|
|
169
183
|
}
|
|
170
184
|
}
|
|
171
185
|
else {
|
|
172
|
-
this.executeCommand('switch', 'off');
|
|
186
|
+
await this.executeCommand('switch', 'off');
|
|
173
187
|
}
|
|
174
188
|
}
|
|
175
189
|
/**
|
|
@@ -201,7 +215,7 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
201
215
|
async setVolumeSelector(value) {
|
|
202
216
|
const increment = value === this.platform.Characteristic.VolumeSelector.INCREMENT;
|
|
203
217
|
this.logDebug('%s volume', increment ? 'Increasing' : 'Decreasing');
|
|
204
|
-
this.executeCommand('audioVolume', increment ? 'volumeUp' : 'volumeDown');
|
|
218
|
+
await this.executeCommand('audioVolume', increment ? 'volumeUp' : 'volumeDown');
|
|
205
219
|
}
|
|
206
220
|
/**
|
|
207
221
|
* Setter for Homebridge accessory Volume property.
|
|
@@ -210,7 +224,7 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
210
224
|
*/
|
|
211
225
|
async setVolume(value) {
|
|
212
226
|
this.logDebug('Set volume to: %s', value);
|
|
213
|
-
this.executeCommand('audioVolume', 'setVolume', [value]);
|
|
227
|
+
await this.executeCommand('audioVolume', 'setVolume', [value]);
|
|
214
228
|
}
|
|
215
229
|
/**
|
|
216
230
|
* Getter for Homebridge accessory Volume property.
|
|
@@ -228,7 +242,7 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
228
242
|
*/
|
|
229
243
|
async setMute(value) {
|
|
230
244
|
this.logDebug('Set mute to: %s', value);
|
|
231
|
-
this.executeCommand('audioMute', value ? 'mute' : 'unmute');
|
|
245
|
+
await this.executeCommand('audioMute', value ? 'mute' : 'unmute');
|
|
232
246
|
}
|
|
233
247
|
/**
|
|
234
248
|
* Getter for Homebridge accessory Mute property.
|
|
@@ -252,10 +266,10 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
252
266
|
this.activeIdentifierChangeTime = Date.now();
|
|
253
267
|
this.activeIdentifierChangeValue = value;
|
|
254
268
|
if (inputSourceType === this.platform.Characteristic.InputSourceType.APPLICATION) {
|
|
255
|
-
this.executeCommand('custom.launchapp', 'launchApp', [(_a = inputSource.name) !== null && _a !== void 0 ? _a : '']);
|
|
269
|
+
await this.executeCommand('custom.launchapp', 'launchApp', [(_a = inputSource.name) !== null && _a !== void 0 ? _a : '']);
|
|
256
270
|
}
|
|
257
271
|
else {
|
|
258
|
-
this.executeCommand('samsungvd.mediaInputSource', 'setInputSource', [(_b = inputSource.name) !== null && _b !== void 0 ? _b : '']);
|
|
272
|
+
await this.executeCommand('samsungvd.mediaInputSource', 'setInputSource', [(_b = inputSource.name) !== null && _b !== void 0 ? _b : '']);
|
|
259
273
|
}
|
|
260
274
|
}
|
|
261
275
|
/**
|
|
@@ -289,67 +303,67 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
289
303
|
switch (value) {
|
|
290
304
|
case this.platform.Characteristic.RemoteKey.REWIND:
|
|
291
305
|
if (this.validateRemoteKeyCapability('mediaPlayback', 'REWIND')) {
|
|
292
|
-
this.executeCommand('mediaPlayback', 'rewind');
|
|
306
|
+
await this.executeCommand('mediaPlayback', 'rewind');
|
|
293
307
|
}
|
|
294
308
|
break;
|
|
295
309
|
case this.platform.Characteristic.RemoteKey.FAST_FORWARD:
|
|
296
310
|
if (this.validateRemoteKeyCapability('mediaPlayback', 'FAST_FORWARD')) {
|
|
297
|
-
this.executeCommand('mediaPlayback', 'fastForward');
|
|
311
|
+
await this.executeCommand('mediaPlayback', 'fastForward');
|
|
298
312
|
}
|
|
299
313
|
break;
|
|
300
314
|
case this.platform.Characteristic.RemoteKey.NEXT_TRACK:
|
|
301
315
|
if (this.validateRemoteKeyCapability('mediaTrackControl', 'NEXT_TRACK')) {
|
|
302
|
-
this.executeCommand('mediaTrackControl', 'nextTrack');
|
|
316
|
+
await this.executeCommand('mediaTrackControl', 'nextTrack');
|
|
303
317
|
}
|
|
304
318
|
break;
|
|
305
319
|
case this.platform.Characteristic.RemoteKey.PREVIOUS_TRACK:
|
|
306
320
|
if (this.validateRemoteKeyCapability('mediaTrackControl', 'PREVIOUS_TRACK')) {
|
|
307
|
-
this.executeCommand('mediaTrackControl', 'previousTrack');
|
|
321
|
+
await this.executeCommand('mediaTrackControl', 'previousTrack');
|
|
308
322
|
}
|
|
309
323
|
break;
|
|
310
324
|
case this.platform.Characteristic.RemoteKey.ARROW_UP:
|
|
311
325
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'ARROW_UP')) {
|
|
312
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['UP']);
|
|
326
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['UP']);
|
|
313
327
|
}
|
|
314
328
|
break;
|
|
315
329
|
case this.platform.Characteristic.RemoteKey.ARROW_DOWN:
|
|
316
330
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'ARROW_DOWN')) {
|
|
317
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['DOWN']);
|
|
331
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['DOWN']);
|
|
318
332
|
}
|
|
319
333
|
break;
|
|
320
334
|
case this.platform.Characteristic.RemoteKey.ARROW_LEFT:
|
|
321
335
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'ARROW_LEFT')) {
|
|
322
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['LEFT']);
|
|
336
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['LEFT']);
|
|
323
337
|
}
|
|
324
338
|
break;
|
|
325
339
|
case this.platform.Characteristic.RemoteKey.ARROW_RIGHT:
|
|
326
340
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'ARROW_RIGHT')) {
|
|
327
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['RIGHT']);
|
|
341
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['RIGHT']);
|
|
328
342
|
}
|
|
329
343
|
break;
|
|
330
344
|
case this.platform.Characteristic.RemoteKey.SELECT:
|
|
331
345
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'SELECT')) {
|
|
332
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['OK']);
|
|
346
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['OK']);
|
|
333
347
|
}
|
|
334
348
|
break;
|
|
335
349
|
case this.platform.Characteristic.RemoteKey.BACK:
|
|
336
350
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'BACK')) {
|
|
337
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['BACK']);
|
|
351
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['BACK']);
|
|
338
352
|
}
|
|
339
353
|
break;
|
|
340
354
|
case this.platform.Characteristic.RemoteKey.EXIT:
|
|
341
355
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'EXIT')) {
|
|
342
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['HOME']);
|
|
356
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['HOME']);
|
|
343
357
|
}
|
|
344
358
|
break;
|
|
345
359
|
case this.platform.Characteristic.RemoteKey.PLAY_PAUSE:
|
|
346
360
|
if (this.validateRemoteKeyCapability('mediaPlayback', 'PLAY_PAUSE')) {
|
|
347
|
-
this.executeCommand('mediaPlayback', 'play');
|
|
361
|
+
await this.executeCommand('mediaPlayback', 'play');
|
|
348
362
|
}
|
|
349
363
|
break;
|
|
350
364
|
case this.platform.Characteristic.RemoteKey.INFORMATION:
|
|
351
365
|
if (this.validateRemoteKeyCapability('samsungvd.remoteControl', 'INFORMATION')) {
|
|
352
|
-
this.executeCommand('samsungvd.remoteControl', 'send', ['MENU']);
|
|
366
|
+
await this.executeCommand('samsungvd.remoteControl', 'send', ['MENU']);
|
|
353
367
|
}
|
|
354
368
|
break;
|
|
355
369
|
}
|
|
@@ -391,10 +405,8 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
391
405
|
if (!await this.getActive()) {
|
|
392
406
|
this.logWarn('Registering applications will probably not work because TV is not turned on');
|
|
393
407
|
}
|
|
394
|
-
for (const
|
|
395
|
-
const
|
|
396
|
-
for (const j in app.ids) {
|
|
397
|
-
const appId = app.ids[j];
|
|
408
|
+
for (const app of apps_json_1.default.apps) {
|
|
409
|
+
for (const appId of app.ids) {
|
|
398
410
|
try {
|
|
399
411
|
await this.client.devices.executeCommand(this.device.deviceId, {
|
|
400
412
|
capability: 'custom.launchapp',
|
|
@@ -417,9 +429,9 @@ ping command fails mostly because of permission issues - falling back to SmartTh
|
|
|
417
429
|
* @param name the input source display name
|
|
418
430
|
*/
|
|
419
431
|
registerInputSource(id, name) {
|
|
432
|
+
var _a;
|
|
420
433
|
this.logInfo('Registering input source: %s', name);
|
|
421
|
-
const inputSourceService = this.accessory.getService(id)
|
|
422
|
-
|| this.accessory.addService(this.platform.Service.InputSource, id, id);
|
|
434
|
+
const inputSourceService = (_a = this.accessory.getService(id)) !== null && _a !== void 0 ? _a : this.accessory.addService(this.platform.Service.InputSource, id, id);
|
|
423
435
|
inputSourceService.name = id;
|
|
424
436
|
inputSourceService
|
|
425
437
|
.setCharacteristic(this.platform.Characteristic.Identifier, this.inputSources.length)
|
package/dist/tvAccessory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tvAccessory.js","sourceRoot":"","sources":["../src/tvAccessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tvAccessory.js","sourceRoot":"","sources":["../src/tvAccessory.ts"],"names":[],"mappings":";;;;;;AAIA,6BAA2B;AAC3B,gDAAwB;AACxB,iEAA8D;AAE9D,gEAAmC;AAEnC;;GAEG;AACH,MAAa,WAAY,SAAQ,2CAAoB;IAQnD,YACE,MAAc,EACd,SAAoB,EACpB,MAAyB,EACzB,GAAW,EACX,QAA6B,EAC7B,SAA4B,EACX,eAAwB,EACxB,oBAA6B,EAC7B,aAAiC,SAAS,EAC1C,YAAgC,SAAS;;QAE1D,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;QAL1C,oBAAe,GAAf,eAAe,CAAS;QACxB,yBAAoB,GAApB,oBAAoB,CAAS;QAC7B,eAAU,GAAV,UAAU,CAAgC;QAC1C,cAAS,GAAT,SAAS,CAAgC;QAhBpD,mBAAc,GAAwB,SAAS,CAAC;QAChD,iBAAY,GAAc,EAAE,CAAC;QAC7B,iBAAY,GAAa,EAAE,CAAC;QAC5B,+BAA0B,GAAG,CAAC,CAAC;QAC/B,gCAA2B,GAAG,CAAC,CAAC;QAgBtC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAE;aACnE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,MAAA,MAAM,CAAC,IAAI,mCAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;QAExF,IAAI,CAAC,OAAO,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,mCACrE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAChE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;aACrE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAA,MAAM,CAAC,IAAI,mCAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC;aACnE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,oBAAoB;;QAC/B,IAAI,CAAC,OAAO,CAAC,2CAA2C,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAE7E,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;YACnD,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,MAAA,SAAS,CAAC,OAAO,mCAAI,CAAC,CAAC,CAAC,CAAC;SACzG;QAED,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7D,IAAI,CAAC,OAAO,CAAC,oGAAoG,EAC/G,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC;YAC7F,MAAM,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;SACnC;IACH,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,eAAe;QAG1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QAED,OAAO;YACL,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,gBAAgB;YACzB,MAAM,EAAE,SAAS;YACjB,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,wBAAwB,CAAC,KAAuC,CAAC,CAAC;SAC9F,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa;QAGxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,SAAS,CAAC;SAClB;QAED,OAAO;YACL,UAAU,EAAE,kBAAkB;YAC9B,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,sBAAsB,CAAC,KAAuC,CAAC,CAAC;SAC5F,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,kBAAkB,CAAC,UAAsB;;QACrD,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,IAAI,CAAC,QAAQ,CAAC,0BAA0B,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;SAChF;QAED,IAAI,UAAU,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE;YAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SACvC;QAED,QAAQ,UAAU,CAAC,EAAE,EAAE;YACrB,KAAK,QAAQ;gBACX,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC;qBAChE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAChC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpC,MAAM;YAER,KAAK,aAAa;gBAChB,IAAG,CAAC,IAAI,CAAC,cAAc,EAAC;oBACtB,IAAI,CAAC,cAAc,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,mCACnF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;oBACxE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpD;gBAED,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;gBAC3C,IAAI,CAAC,cAAc;qBAChB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtG,IAAI,CAAC,cAAc;qBAChB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBAC9H,IAAI,CAAC,cAAc;qBAChB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC;qBACtD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAChC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;qBAC/E,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,MAAM;YAER,KAAK,WAAW;gBACd,IAAG,CAAC,IAAI,CAAC,cAAc,EAAC;oBACtB,IAAI,CAAC,cAAc,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,mCACrF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;oBACtE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBACpD;gBAED,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;gBAC3C,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC;qBACrE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAC9B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClC,MAAM;YAER,KAAK,4BAA4B;gBAC/B,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;gBAC3C,MAAM,IAAI,CAAC,kCAAkC,EAAE,CAAC;gBAChD,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;oBAChC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC;yBAC1E,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBAC1C,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC/C;gBACD,MAAM;YAER,KAAK,kBAAkB;gBACrB,IAAI,IAAI,CAAC,oBAAoB,EAAE;oBAC7B,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;oBAC3C,MAAM,IAAI,CAAC,mCAAmC,EAAE,CAAC;oBACjD,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;wBAChC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC;6BAC1E,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6BAC1C,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;qBAC/C;iBACF;qBAAM;oBACL,IAAI,CAAC,OAAO,CAAC,sFAAsF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;iBACvH;gBACD,MAAM;SACT;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,SAAS,CAAC,KAA0B;QAChD,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC1C,IAAI,KAAK,EAAE;YACT,IAAI,IAAI,CAAC,UAAU,EAAE;gBACnB,IAAI,CAAC,QAAQ,CAAC,uEAAuE,CAAC,CAAC;gBAEvF,IAAI,MAAM,IAAA,UAAI,EAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBAC/B,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;iBAC3C;qBAAM;oBACL,IAAI,CAAC,QAAQ,CAAC,+FAA+F,CAAC,CAAC;iBAChH;aACF;iBAAM;gBACL,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aAC3C;SACF;aAAM;YACL,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SAC5C;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,SAAS;QACrB,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,cAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;gBACzC,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAC;aACtB;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,CAAC,QAAQ,CAAC;kHAC4F,EAAE,GAAG,CAAC,CAAC;gBACjH,OAAO,KAAK,CAAC;aACd;SACF;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACxD,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,KAAK,MAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACtD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QACxD,MAAM,SAAS,GAAG,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,CAAC;QAClF,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACpE,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;IAClF,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,SAAS,CAAC,KAA0B;QAChD,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC1C,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC,KAAe,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,SAAS;QACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;QAC7D,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,KAAe,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,OAAO,CAAC,KAA0B;QAC9C,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,KAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/E,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,OAAO;QACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC3D,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,KAAK,MAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,KAA0B;;QAC1D,IAAI,CAAC,QAAQ,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAe,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,KAAe,CAAC;QAEpH,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7C,IAAI,CAAC,2BAA2B,GAAG,KAAe,CAAC;QAEnD,IAAI,eAAe,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,WAAW,EAAE;YAChF,MAAM,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,WAAW,EAAE,CAAC,MAAA,WAAW,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,CAAC;SACtF;aAAM;YACL,MAAM,IAAI,CAAC,cAAc,CAAC,4BAA4B,EAAE,gBAAgB,EAAE,CAAC,MAAA,WAAW,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,CAAC;SACrG;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB;;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,4BAA4B,CAAC,CAAC;QAE5E,IAAI,IAAI,CAAC,KAAK,CAAC,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,CAAC,SAAS,mCAAI,EAAE,CAAC,GAAG,IAAI,CAAC,0BAA0B,EAAE;YACrF,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,MAAK,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,CAAC,KAAK,CAAA,CAAC,CAAC;YACtG,IAAI,CAAC,QAAQ,CAAC,wEAAwE,EAAE,EAAE,CAAC,CAAC;YAE5F,IAAI,EAAE,GAAG,CAAC,EAAE;gBACV,IAAI,CAAC,OAAO,CAAC,oGAAoG,EAC/G,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBACxD,OAAO,CAAC,CAAC;aACV;YAED,OAAO,EAAE,CAAC;SACX;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,kFAAkF,EAAE,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACpI,OAAO,IAAI,CAAC,2BAA2B,CAAC;SACzC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,YAAY,CAAC,KAA0B;QACnD,QAAQ,KAAK,EAAE;YACb,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM;gBAChD,IAAI,IAAI,CAAC,2BAA2B,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE;oBAC/D,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;iBACtD;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,YAAY;gBACtD,IAAI,IAAI,CAAC,2BAA2B,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE;oBACrE,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;iBAC3D;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU;gBACpD,IAAI,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,EAAE,YAAY,CAAC,EAAE;oBACvE,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;iBAC7D;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc;gBACxD,IAAI,IAAI,CAAC,2BAA2B,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,EAAE;oBAC3E,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;iBACjE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ;gBAClD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,UAAU,CAAC,EAAE;oBAC3E,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;iBACtE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU;gBACpD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,YAAY,CAAC,EAAE;oBAC7E,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;iBACxE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU;gBACpD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,YAAY,CAAC,EAAE;oBAC7E,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;iBACxE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW;gBACrD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,aAAa,CAAC,EAAE;oBAC9E,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;iBACzE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM;gBAChD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,QAAQ,CAAC,EAAE;oBACzE,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;iBACtE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI;gBAC9C,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,MAAM,CAAC,EAAE;oBACvE,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;iBACxE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI;gBAC9C,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,MAAM,CAAC,EAAE;oBACvE,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;iBACxE;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU;gBACpD,IAAI,IAAI,CAAC,2BAA2B,CAAC,eAAe,EAAE,YAAY,CAAC,EAAE;oBACnE,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;iBACpD;gBACD,MAAM;YAER,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW;gBACrD,IAAI,IAAI,CAAC,2BAA2B,CAAC,yBAAyB,EAAE,aAAa,CAAC,EAAE;oBAC9E,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;iBACxE;gBACD,MAAM;SACT;IACH,CAAC;IAED;;;;;;OAMG;IACK,2BAA2B,CAAC,YAAoB,EAAE,SAAiB;QACzE,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,mEAAmE,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;YAC5G,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,kCAAkC;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,4BAA4B,CAAC,CAAC;QACpI,MAAM,qBAAqB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,wBAAwB,CAAC,KAAuC,CAAC,CAAC,CAAC;QACpH,KAAK,MAAM,WAAW,IAAI,qBAAqB,EAAE;YAC/C,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;SAC5D;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,mCAAmC;QAC/C,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE;YAC3B,IAAI,CAAC,OAAO,CAAC,6EAA6E,CAAC,CAAC;SAC7F;QAED,KAAK,MAAM,GAAG,IAAI,mBAAI,CAAC,IAAI,EAAE;YAC3B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,GAAG,EAAE;gBAC3B,IAAI;oBACF,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;wBAC7D,UAAU,EAAE,kBAAkB;wBAC9B,OAAO,EAAE,WAAW;wBACpB,SAAS,EAAE,CAAC,KAAK,CAAC;qBACnB,CAAC,CAAC;oBAEH,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC1C,MAAM;iBACP;gBAAC,OAAO,GAAG,EAAE;oBACZ,SAAS;iBACV;aACF;SACF;IACH,CAAC;IAED;;;;;OAKG;IACK,mBAAmB,CAAC,EAAU,EAAE,IAAY;;QAClD,IAAI,CAAC,OAAO,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAC;QAEnD,MAAM,kBAAkB,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,mCACnD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1E,kBAAkB,CAAC,IAAI,GAAG,EAAE,CAAC;QAC7B,kBAAkB;aACf,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;aACpF,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC;aACpE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,UAAU,CAAC;aAClH,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;QAClG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAElD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACK,oBAAoB,CAAC,aAAqB;QAChD,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC;SAC1D;aAAM,IAAI,aAAa,KAAK,KAAK,EAAE;YAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC;SAC3D;aAAM;YACL,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,WAAW,CAAC;SACjE;IACH,CAAC;CACF;AA3fD,kCA2fC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"displayName": "Homebridge SmartThings TV",
|
|
3
3
|
"name": "@o-lukas/homebridge-smartthings-tv",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.7.0",
|
|
5
5
|
"description": "This is a plugin for Homebridge. It offers some basic functions to control Samsung TVs using the SmartThings API.",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -40,18 +40,18 @@
|
|
|
40
40
|
"wol": "^1.0.7"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@types/node": "^20.
|
|
43
|
+
"@types/node": "^20.5.6",
|
|
44
44
|
"@types/ping": "^0.4.1",
|
|
45
45
|
"@types/wol": "^1.0.1",
|
|
46
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
47
|
-
"@typescript-eslint/parser": "^
|
|
48
|
-
"eslint": "^8.
|
|
46
|
+
"@typescript-eslint/eslint-plugin": "^6.4.1",
|
|
47
|
+
"@typescript-eslint/parser": "^6.4.1",
|
|
48
|
+
"eslint": "^8.47.0",
|
|
49
49
|
"homebridge": "^1.6.1",
|
|
50
|
-
"nodemon": "^
|
|
50
|
+
"nodemon": "^3.0.1",
|
|
51
51
|
"rimraf": "^5.0.1",
|
|
52
|
+
"semantic-release": "^21.1.1",
|
|
52
53
|
"ts-node": "^10.9.1",
|
|
53
|
-
"typescript": "^5.
|
|
54
|
-
"semantic-release": "^21.0.7"
|
|
54
|
+
"typescript": "^5.2.2"
|
|
55
55
|
},
|
|
56
56
|
"release": {
|
|
57
57
|
"branches": [
|
package/.devcontainer/Dockerfile
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
FROM mcr.microsoft.com/devcontainers/javascript-node:0-18-bullseye
|
|
2
|
-
|
|
3
|
-
# Install homebridge
|
|
4
|
-
RUN npm install -g --unsafe-perm homebridge homebridge-config-ui-x
|
|
5
|
-
|
|
6
|
-
# Copy the default homebridge config
|
|
7
|
-
RUN mkdir /home/node/.homebridge \
|
|
8
|
-
&& chown node /home/node/.homebridge
|
|
9
|
-
COPY homebridge-config/config.json /home/node/.homebridge/config.json
|
|
10
|
-
COPY homebridge-config/auth.json /home/node/.homebridge/auth.json
|
|
11
|
-
|
|
12
|
-
# Enable usage of ping command
|
|
13
|
-
RUN apt-get update && apt-get install iputils-ping
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
|
2
|
-
// README at: https://github.com/devcontainers/templates/tree/main/src/typescript-node
|
|
3
|
-
{
|
|
4
|
-
"name": "Homebridge",
|
|
5
|
-
"dockerComposeFile": "docker-compose.yml",
|
|
6
|
-
"service": "homebridge",
|
|
7
|
-
"features": {},
|
|
8
|
-
"forwardPorts": [
|
|
9
|
-
51826,
|
|
10
|
-
8581
|
|
11
|
-
],
|
|
12
|
-
"customizations": {
|
|
13
|
-
"vscode": {
|
|
14
|
-
"extensions": [
|
|
15
|
-
"dbaeumer.vscode-eslint",
|
|
16
|
-
"eamodio.gitlens"
|
|
17
|
-
]
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
"workspaceFolder": "/workspace"
|
|
21
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
[
|
|
2
|
-
{
|
|
3
|
-
"id": 1,
|
|
4
|
-
"username": "admin",
|
|
5
|
-
"name": "admin",
|
|
6
|
-
"hashedPassword": "2a739a8c9faf3f58d1f1662c0ad09508125c46a1e306621ae89b7cb3ad43e074a09819e75a6b30a99c949a9abafd3dcf9f8a88e2f49b044d8ae1436fa46ccb30",
|
|
7
|
-
"salt": "82fdb7ee9d19003dbbe302bc14a00025f7dc982341abf8ac02d386648561124b",
|
|
8
|
-
"admin": true
|
|
9
|
-
}
|
|
10
|
-
]
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"bridge": {
|
|
3
|
-
"name": "Homebridge",
|
|
4
|
-
"username": "0E:DD:19:D5:34:EA",
|
|
5
|
-
"manufacturer": "homebridge.io",
|
|
6
|
-
"model": "homebridge",
|
|
7
|
-
"port": 51826,
|
|
8
|
-
"pin": "674-49-017",
|
|
9
|
-
"advertiser": "ciao"
|
|
10
|
-
},
|
|
11
|
-
"accessories": [],
|
|
12
|
-
"platforms": [
|
|
13
|
-
{
|
|
14
|
-
"name": "Config",
|
|
15
|
-
"port": 8581,
|
|
16
|
-
"auth": "none",
|
|
17
|
-
"theme": "auto",
|
|
18
|
-
"tempUnits": "c",
|
|
19
|
-
"lang": "en",
|
|
20
|
-
"platform": "config"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"name": "homebridge-smartthings-tv",
|
|
24
|
-
"platform": "smartthings-tv"
|
|
25
|
-
}
|
|
26
|
-
]
|
|
27
|
-
}
|