@o-lukas/homebridge-smartthings-tv 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -0
- package/config.schema.json +12 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/platform.d.ts +3 -4
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +11 -16
- package/dist/platform.js.map +1 -1
- package/dist/res/apps.json +94 -0
- package/dist/tvAccessory.d.ts +23 -4
- package/dist/tvAccessory.d.ts.map +1 -1
- package/dist/tvAccessory.js +99 -29
- package/dist/tvAccessory.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Homebridge SmartThings TV
|
|
2
2
|
|
|
3
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+

|
|
7
|
+
[](https://github.com/o-lukas/homebridge-smartthings-tv/actions/workflows/build.yml)
|
|
8
|
+
[](https://github.com/o-lukas/homebridge-smartthings-tv/actions/workflows/publish.yml)
|
|
9
|
+
|
|
3
10
|
This is a plugin for [Homebridge](https://github.com/homebridge/homebridge). It offers some basic functions to control Samsung TVs using the SmartThings API.
|
|
4
11
|
|
|
5
12
|
# Configuration
|
|
@@ -18,6 +25,8 @@ If you don't use the [Homebridge Config UI X](https://github.com/oznu/homebridge
|
|
|
18
25
|
...
|
|
19
26
|
{
|
|
20
27
|
"token": "your SmartThings API token",
|
|
28
|
+
"capabilityLogging": "log capabilitys implemented by device",
|
|
29
|
+
"registerApplications": "register applications as input sources",
|
|
21
30
|
"deviceMappings": [
|
|
22
31
|
{
|
|
23
32
|
"deviceId": "the SmartThings device ID",
|
package/config.schema.json
CHANGED
|
@@ -11,6 +11,18 @@
|
|
|
11
11
|
"required": true,
|
|
12
12
|
"description": "The SmartThings API token is needed to authenticate the requests sent to the SmartThings API. To generate a token open https://account.smartthings.com/tokens and generate a new one (make sure at least devices is selected)."
|
|
13
13
|
},
|
|
14
|
+
"capabilityLogging": {
|
|
15
|
+
"title": "Capability Logging",
|
|
16
|
+
"type": "boolean",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The SmartThings API returns the list of supported actions of a device as capabilities. For implementing new features it is neccessary to know the scheme the capability uses. Enable this property to log all capabilities of supported SmartThings devices."
|
|
19
|
+
},
|
|
20
|
+
"registerApplications": {
|
|
21
|
+
"title": "Register applications",
|
|
22
|
+
"type": "boolean",
|
|
23
|
+
"required": false,
|
|
24
|
+
"description": "To use installed application as input sources, a predefined list of applications will be used. This list will be checked for availability at the TV(s) and eventually be registered as input sources. Make sure to have the TV(s) turned on when starting your instance as this functionality requires your TV(s) be turned on to determine whether an application is installed or not. On startup the applications will be opened to determine if they are available. Do not use your TV until the input source is being changed back to the first one (usually Live TV)."
|
|
25
|
+
},
|
|
14
26
|
"deviceMappings": {
|
|
15
27
|
"type": "array",
|
|
16
28
|
"items": {
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAKjC;;GAEG;8BACY,GAAG;AAAlB,kBAEE"}
|
package/dist/platform.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { API, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig, Service, Characteristic
|
|
1
|
+
import { API, DynamicPlatformPlugin, Logger, PlatformAccessory, PlatformConfig, Service, Characteristic } from 'homebridge';
|
|
2
2
|
import { SmartThingsClient, Device } from '@smartthings/core-sdk';
|
|
3
3
|
/**
|
|
4
4
|
* Class implements the configured Device to mac and ip address mappings.
|
|
@@ -18,12 +18,11 @@ export declare class SmartThingsPlatform implements DynamicPlatformPlugin {
|
|
|
18
18
|
readonly api: API;
|
|
19
19
|
readonly Service: typeof Service;
|
|
20
20
|
readonly Characteristic: typeof Characteristic;
|
|
21
|
-
readonly accessories: PlatformAccessory[];
|
|
22
21
|
constructor(log: Logger, config: PlatformConfig, api: API);
|
|
23
22
|
/**
|
|
24
23
|
* @inheritdoc
|
|
25
24
|
*/
|
|
26
|
-
configureAccessory(
|
|
25
|
+
configureAccessory(_accessory: PlatformAccessory): void;
|
|
27
26
|
/**
|
|
28
27
|
* Uses the SmartThings API to discover and register the available devices.
|
|
29
28
|
*
|
|
@@ -47,7 +46,7 @@ export declare class SmartThingsPlatform implements DynamicPlatformPlugin {
|
|
|
47
46
|
* @param accessory the cached PlatformAccessory or undefined if no cached PlatformAccessory exists
|
|
48
47
|
* @param deviceMappings the array of configured DeviceMapping
|
|
49
48
|
*/
|
|
50
|
-
registerTvDevice(client: SmartThingsClient, device: Device,
|
|
49
|
+
registerTvDevice(client: SmartThingsClient, device: Device, deviceMapping: DeviceMapping | undefined): void;
|
|
51
50
|
}
|
|
52
51
|
export {};
|
|
53
52
|
//# sourceMappingURL=platform.d.ts.map
|
package/dist/platform.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAI5H,OAAO,EAAE,iBAAiB,EAA4B,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE5F;;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;aAK7C,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAN1B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAwB;IAC/D,SAAgB,cAAc,EAAE,OAAO,cAAc,CAA+B;gBAGlE,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IAgB1B;;OAEG;IAEH,kBAAkB,CAAC,UAAU,EAAE,iBAAiB;IAIhD;;;;;OAKG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,aAAa,CAAC;IAU9D;;;;;;OAMG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,aAAa,CAAC;IAYzF;;;;;;;OAOG;IACH,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,SAAS;CAiBrG"}
|
package/dist/platform.js
CHANGED
|
@@ -24,8 +24,6 @@ class SmartThingsPlatform {
|
|
|
24
24
|
this.api = api;
|
|
25
25
|
this.Service = this.api.hap.Service;
|
|
26
26
|
this.Characteristic = this.api.hap.Characteristic;
|
|
27
|
-
// this is used to track restored cached accessories
|
|
28
|
-
this.accessories = [];
|
|
29
27
|
this.log.debug('Finished initializing platform:', this.config.name);
|
|
30
28
|
if (!config.token) {
|
|
31
29
|
this.log.error('SmartThings API token must be configured');
|
|
@@ -39,9 +37,9 @@ class SmartThingsPlatform {
|
|
|
39
37
|
/**
|
|
40
38
|
* @inheritdoc
|
|
41
39
|
*/
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
40
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
41
|
+
configureAccessory(_accessory) {
|
|
42
|
+
// nothing to do...
|
|
45
43
|
}
|
|
46
44
|
/**
|
|
47
45
|
* Uses the SmartThings API to discover and register the available devices.
|
|
@@ -66,10 +64,9 @@ class SmartThingsPlatform {
|
|
|
66
64
|
*/
|
|
67
65
|
registerDevice(client, device, deviceMappings) {
|
|
68
66
|
var _a, _b;
|
|
69
|
-
const existingAccessory = this.accessories.find(a => a.UUID === device.deviceId);
|
|
70
67
|
switch ((_a = device.ocf) === null || _a === void 0 ? void 0 : _a.ocfDeviceType) {
|
|
71
68
|
case 'oic.d.tv':
|
|
72
|
-
this.registerTvDevice(client, device,
|
|
69
|
+
this.registerTvDevice(client, device, deviceMappings.find(mapping => mapping.deviceId === device.deviceId));
|
|
73
70
|
break;
|
|
74
71
|
default:
|
|
75
72
|
this.log.info('Ignoring SmartThingsDevice:', device, 'because device type', (_b = device.ocf) === null || _b === void 0 ? void 0 : _b.ocfDeviceType, 'is not implemented');
|
|
@@ -84,21 +81,19 @@ class SmartThingsPlatform {
|
|
|
84
81
|
* @param accessory the cached PlatformAccessory or undefined if no cached PlatformAccessory exists
|
|
85
82
|
* @param deviceMappings the array of configured DeviceMapping
|
|
86
83
|
*/
|
|
87
|
-
registerTvDevice(client, device,
|
|
84
|
+
registerTvDevice(client, device, deviceMapping) {
|
|
88
85
|
var _a, _b;
|
|
89
|
-
this.log.info(
|
|
86
|
+
this.log.info('Adding new accessory:', device.name ? device.name + ' (' + device.deviceId + ')' : device.deviceId);
|
|
90
87
|
const component = (_a = device.components) === null || _a === void 0 ? void 0 : _a.at(0);
|
|
91
88
|
if (!component) {
|
|
92
89
|
this.log.info('Can\'t register TV accessory because (main) component does not exist');
|
|
93
90
|
return;
|
|
94
91
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
new tvAccessory_1.TvAccessory(this.log, this, accessory, device, component, client, deviceMapping === null || deviceMapping === void 0 ? void 0 : deviceMapping.macAddress, deviceMapping === null || deviceMapping === void 0 ? void 0 : deviceMapping.ipAddress);
|
|
92
|
+
const accessory = new this.api.platformAccessory((_b = device.name) !== null && _b !== void 0 ? _b : device.deviceId, device.deviceId);
|
|
93
|
+
accessory.context.device = device;
|
|
94
|
+
accessory.category = 31 /* this.api.hap.Categories.TELEVISION */;
|
|
95
|
+
this.api.publishExternalAccessories(settings_1.PLUGIN_NAME, [accessory]);
|
|
96
|
+
new tvAccessory_1.TvAccessory(this, accessory, device, component, client, this.log, this.config.capabilityLogging, this.config.registerApplications, deviceMapping === null || deviceMapping === void 0 ? void 0 : deviceMapping.macAddress, deviceMapping === null || deviceMapping === void 0 ? void 0 : deviceMapping.ipAddress);
|
|
102
97
|
}
|
|
103
98
|
}
|
|
104
99
|
exports.SmartThingsPlatform = SmartThingsPlatform;
|
package/dist/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":";;;AAEA,yCAAyC;AACzC,+CAA4C;AAC5C,oDAA4F;AAE5F;;GAEG;AACH,MAAM,aAAa;IACjB,YAA4B,QAAgB,EAAkB,UAAkB,EAAkB,SAAiB;QAAvF,aAAQ,GAAR,QAAQ,CAAQ;QAAkB,eAAU,GAAV,UAAU,CAAQ;QAAkB,cAAS,GAAT,SAAS,CAAQ;IACnH,CAAC;CACF;AAED;;GAEG;AACH,MAAa,mBAAmB;
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
{
|
|
2
|
+
"apps": [
|
|
3
|
+
{
|
|
4
|
+
"name": "Netflix",
|
|
5
|
+
"ids": [
|
|
6
|
+
"11101200001",
|
|
7
|
+
"3201907018807"
|
|
8
|
+
]
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "YouTube",
|
|
12
|
+
"ids": [
|
|
13
|
+
"111299001912",
|
|
14
|
+
"111299001912"
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"name": "Prime Video",
|
|
19
|
+
"ids": [
|
|
20
|
+
"3201512006785",
|
|
21
|
+
"3201910019365"
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "Disney+",
|
|
26
|
+
"ids": [
|
|
27
|
+
"3201901017640",
|
|
28
|
+
"3201901017640"
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "Apple TV",
|
|
33
|
+
"ids": [
|
|
34
|
+
"3201807016597"
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "Apple Music",
|
|
39
|
+
"ids": [
|
|
40
|
+
"3201908019041"
|
|
41
|
+
]
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "Amazon Music",
|
|
45
|
+
"ids": [
|
|
46
|
+
"3201710014874"
|
|
47
|
+
]
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"name": "Spotify",
|
|
51
|
+
"ids": [
|
|
52
|
+
"3201606009684",
|
|
53
|
+
"3201606009684"
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "Deezer",
|
|
58
|
+
"ids": [
|
|
59
|
+
"3201608010191"
|
|
60
|
+
]
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "Steam Link",
|
|
64
|
+
"ids": [
|
|
65
|
+
"3201702011851"
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "Eurosport Player",
|
|
70
|
+
"ids": [
|
|
71
|
+
"3201703012079",
|
|
72
|
+
"3201703012079"
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"name": "EduPedia",
|
|
77
|
+
"ids": [
|
|
78
|
+
"3201608010385"
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"name": "ARTE",
|
|
83
|
+
"ids": [
|
|
84
|
+
"3202011022316"
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"name": "Twitch",
|
|
89
|
+
"ids": [
|
|
90
|
+
"3202203026841"
|
|
91
|
+
]
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
}
|
package/dist/tvAccessory.d.ts
CHANGED
|
@@ -5,19 +5,23 @@ import { SmartThingsClient, Device, Component } from '@smartthings/core-sdk';
|
|
|
5
5
|
* Class implements a SmartThings TV accessory.
|
|
6
6
|
*/
|
|
7
7
|
export declare class TvAccessory {
|
|
8
|
-
private readonly log;
|
|
9
8
|
private readonly platform;
|
|
10
9
|
private readonly accessory;
|
|
11
10
|
private readonly device;
|
|
12
11
|
private readonly component;
|
|
13
12
|
private readonly client;
|
|
13
|
+
private readonly log;
|
|
14
|
+
private readonly logCapabilities;
|
|
15
|
+
private readonly registerApplications;
|
|
14
16
|
private readonly macAddress;
|
|
15
17
|
private readonly ipAddress;
|
|
16
18
|
private service;
|
|
17
19
|
private speakerService;
|
|
18
20
|
private inputSources;
|
|
19
21
|
private capabilities;
|
|
20
|
-
|
|
22
|
+
private activeIdentifierChangeTime;
|
|
23
|
+
private activeIdentiiferChangeValue;
|
|
24
|
+
constructor(platform: SmartThingsPlatform, accessory: PlatformAccessory, device: Device, component: Component, client: SmartThingsClient, log: Logger, logCapabilities: boolean, registerApplications: boolean, macAddress?: string | undefined, ipAddress?: string | undefined);
|
|
21
25
|
/**
|
|
22
26
|
* Registers all available capabilities of the SmartThings Component.
|
|
23
27
|
*
|
|
@@ -99,9 +103,24 @@ export declare class TvAccessory {
|
|
|
99
103
|
*/
|
|
100
104
|
private validateRemoteKeyCapability;
|
|
101
105
|
/**
|
|
102
|
-
* Registers all available input sources.
|
|
106
|
+
* Registers all available media input sources (e.g. HDMI inputs).
|
|
107
|
+
*/
|
|
108
|
+
private registerMediaInputSources;
|
|
109
|
+
/**
|
|
110
|
+
* Registers all installed applications.
|
|
111
|
+
*
|
|
112
|
+
* Tests a list of known application ids by trying to open them. If opening succeeded the application is registered
|
|
113
|
+
* as an input source. If it fails the application will not be added. If multiple ids for an application are available
|
|
114
|
+
* the first successfully tested id will be used.
|
|
115
|
+
*/
|
|
116
|
+
private registerLaunchApplications;
|
|
117
|
+
/**
|
|
118
|
+
* Registers a Homebridge input source.
|
|
119
|
+
*
|
|
120
|
+
* @param id the input source id
|
|
121
|
+
* @param name the input source display name
|
|
103
122
|
*/
|
|
104
|
-
private
|
|
123
|
+
private registerInputSource;
|
|
105
124
|
/**
|
|
106
125
|
* Guesses the InputSourceType from the identifier of the input source.
|
|
107
126
|
*
|
|
@@ -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,YAAY,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAc,MAAM,uBAAuB,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,YAAY,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAc,MAAM,uBAAuB,CAAC;AAgBzF;;GAEG;AACH,qBAAa,WAAW;IASpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,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,CAAU;IAChC,OAAO,CAAC,YAAY,CAAiB;IACrC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,0BAA0B,CAAK;IACvC,OAAO,CAAC,2BAA2B,CAAK;gBAGrB,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,iBAAiB,EACzB,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,OAAO,EACxB,oBAAoB,EAAE,OAAO,EAC7B,UAAU,GAAE,MAAM,GAAG,SAAqB,EAC1C,SAAS,GAAE,MAAM,GAAG,SAAqB;IAwB5D;;;;OAIG;YACW,oBAAoB;IASlC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA4D1B;;;;OAIG;YACW,SAAS;IAcvB;;;;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;IAajC;;;;OAIG;YACW,YAAY;IAkF1B;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IASnC;;OAEG;YACW,yBAAyB;IAQvC;;;;;;OAMG;YACW,0BAA0B;IAuBxC;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAU5B;;;;;;;OAOG;YACW,cAAc;IAY5B;;;;;;OAMG;YACW,mBAAmB;IAYjC,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,QAAQ;CAGjB"}
|
package/dist/tvAccessory.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.TvAccessory = void 0;
|
|
7
7
|
const wol_1 = require("wol");
|
|
8
8
|
const ping_1 = __importDefault(require("ping"));
|
|
9
|
+
const apps_json_1 = __importDefault(require("./res/apps.json"));
|
|
9
10
|
class SamsungVdMediaInputSource {
|
|
10
11
|
constructor(id, name) {
|
|
11
12
|
this.id = id;
|
|
@@ -16,18 +17,22 @@ class SamsungVdMediaInputSource {
|
|
|
16
17
|
* Class implements a SmartThings TV accessory.
|
|
17
18
|
*/
|
|
18
19
|
class TvAccessory {
|
|
19
|
-
constructor(
|
|
20
|
+
constructor(platform, accessory, device, component, client, log, logCapabilities, registerApplications, macAddress = undefined, ipAddress = undefined) {
|
|
20
21
|
var _a, _b, _c, _d, _e, _f;
|
|
21
|
-
this.log = log;
|
|
22
22
|
this.platform = platform;
|
|
23
23
|
this.accessory = accessory;
|
|
24
24
|
this.device = device;
|
|
25
25
|
this.component = component;
|
|
26
26
|
this.client = client;
|
|
27
|
+
this.log = log;
|
|
28
|
+
this.logCapabilities = logCapabilities;
|
|
29
|
+
this.registerApplications = registerApplications;
|
|
27
30
|
this.macAddress = macAddress;
|
|
28
31
|
this.ipAddress = ipAddress;
|
|
29
32
|
this.inputSources = [];
|
|
30
33
|
this.capabilities = [];
|
|
34
|
+
this.activeIdentifierChangeTime = 0;
|
|
35
|
+
this.activeIdentiiferChangeValue = 0;
|
|
31
36
|
this.accessory.getService(this.platform.Service.AccessoryInformation)
|
|
32
37
|
.setCharacteristic(this.platform.Characteristic.Name, (_a = device.name) !== null && _a !== void 0 ? _a : device.deviceId)
|
|
33
38
|
.setCharacteristic(this.platform.Characteristic.FirmwareRevision, (_c = (_b = device.ocf) === null || _b === void 0 ? void 0 : _b.firmwareVersion) !== null && _c !== void 0 ? _c : 'Unknown')
|
|
@@ -64,6 +69,9 @@ class TvAccessory {
|
|
|
64
69
|
* @param capability the Capability
|
|
65
70
|
*/
|
|
66
71
|
registerCapability(capability) {
|
|
72
|
+
if (this.logCapabilities) {
|
|
73
|
+
this.logDebug('Available capability:', JSON.stringify(capability, null, 2));
|
|
74
|
+
}
|
|
67
75
|
if (capability.id && !this.capabilities.includes(capability.id)) {
|
|
68
76
|
this.capabilities.push(capability.id);
|
|
69
77
|
}
|
|
@@ -95,11 +103,23 @@ class TvAccessory {
|
|
|
95
103
|
break;
|
|
96
104
|
case 'samsungvd.mediaInputSource':
|
|
97
105
|
this.logInfo('Registering capability:', capability.name);
|
|
98
|
-
this.
|
|
106
|
+
this.registerMediaInputSources();
|
|
99
107
|
this.service.getCharacteristic(this.platform.Characteristic.ActiveIdentifier)
|
|
100
108
|
.onSet(this.setActiveIdentifier.bind(this))
|
|
101
109
|
.onGet(this.getActiveIdentifier.bind(this));
|
|
102
110
|
break;
|
|
111
|
+
case 'custom.launchapp':
|
|
112
|
+
if (this.registerApplications) {
|
|
113
|
+
this.logInfo('Registering capability:', capability.name);
|
|
114
|
+
this.registerLaunchApplications();
|
|
115
|
+
this.service.getCharacteristic(this.platform.Characteristic.ActiveIdentifier)
|
|
116
|
+
.onSet(this.setActiveIdentifier.bind(this))
|
|
117
|
+
.onGet(this.getActiveIdentifier.bind(this));
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
this.logInfo('Not registering capability because registering of applications has been disabled:', capability.name);
|
|
121
|
+
}
|
|
122
|
+
break;
|
|
103
123
|
}
|
|
104
124
|
}
|
|
105
125
|
/**
|
|
@@ -194,9 +214,18 @@ class TvAccessory {
|
|
|
194
214
|
* @param value the CharacteristicValue
|
|
195
215
|
*/
|
|
196
216
|
async setActiveIdentifier(value) {
|
|
197
|
-
var _a;
|
|
217
|
+
var _a, _b;
|
|
198
218
|
this.logDebug('Set active identifier to:', value);
|
|
199
|
-
|
|
219
|
+
const inputSource = this.inputSources[value];
|
|
220
|
+
const inputSourceType = inputSource.getCharacteristic(this.platform.Characteristic.InputSourceType).value;
|
|
221
|
+
this.activeIdentifierChangeTime = Date.now();
|
|
222
|
+
this.activeIdentiiferChangeValue = value;
|
|
223
|
+
if (inputSourceType === this.platform.Characteristic.InputSourceType.APPLICATION) {
|
|
224
|
+
this.executeCommand('custom.launchapp', 'launchApp', [(_a = inputSource.name) !== null && _a !== void 0 ? _a : '']);
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
this.executeCommand('samsungvd.mediaInputSource', 'setInputSource', [(_b = inputSource.name) !== null && _b !== void 0 ? _b : '']);
|
|
228
|
+
}
|
|
200
229
|
}
|
|
201
230
|
/**
|
|
202
231
|
* Getter for Homebridge accessory ActiveIdentifier property.
|
|
@@ -204,8 +233,17 @@ class TvAccessory {
|
|
|
204
233
|
* @returns the CharacteristicValue
|
|
205
234
|
*/
|
|
206
235
|
async getActiveIdentifier() {
|
|
236
|
+
var _a;
|
|
207
237
|
const status = await this.getCapabilityStatus('samsungvd.mediaInputSource');
|
|
208
|
-
|
|
238
|
+
if (Date.parse((_a = status === null || status === void 0 ? void 0 : status.inputSource.timestamp) !== null && _a !== void 0 ? _a : '') > this.activeIdentifierChangeTime) {
|
|
239
|
+
const id = this.inputSources.findIndex(inputSource => inputSource.name === (status === null || status === void 0 ? void 0 : status.inputSource.value));
|
|
240
|
+
this.logDebug('ActiveIdentifier has been changed on the device - using API result:', id);
|
|
241
|
+
return id;
|
|
242
|
+
}
|
|
243
|
+
else {
|
|
244
|
+
this.logDebug('ActiveIdentifier has not been changed on the device - using temporary result:', this.activeIdentiiferChangeValue);
|
|
245
|
+
return this.activeIdentiiferChangeValue;
|
|
246
|
+
}
|
|
209
247
|
}
|
|
210
248
|
/**
|
|
211
249
|
* Setter for Homebridge accessory RemoteKey property.
|
|
@@ -298,30 +336,62 @@ class TvAccessory {
|
|
|
298
336
|
}
|
|
299
337
|
}
|
|
300
338
|
/**
|
|
301
|
-
* Registers all available input sources.
|
|
339
|
+
* Registers all available media input sources (e.g. HDMI inputs).
|
|
302
340
|
*/
|
|
303
|
-
async
|
|
341
|
+
async registerMediaInputSources() {
|
|
304
342
|
this.client.devices.getCapabilityStatus(this.device.deviceId, this.component.id, 'samsungvd.mediaInputSource')
|
|
305
343
|
.then(status => {
|
|
306
344
|
const supportedInputSources = [...new Set(status.supportedInputSourcesMap.value)];
|
|
307
|
-
|
|
308
|
-
this.inputSources = [];
|
|
309
|
-
for (let i = 0; i < supportedInputSources.length; i++) {
|
|
310
|
-
const inputSource = supportedInputSources[i];
|
|
311
|
-
this.logInfo('Registering input source:', inputSource.name);
|
|
312
|
-
const inputSourceService = this.accessory.getService(inputSource.id)
|
|
313
|
-
|| this.accessory.addService(this.platform.Service.InputSource, inputSource.id, inputSource.id);
|
|
314
|
-
inputSourceService.name = inputSource.id;
|
|
315
|
-
inputSourceService
|
|
316
|
-
.setCharacteristic(this.platform.Characteristic.Identifier, i)
|
|
317
|
-
.setCharacteristic(this.platform.Characteristic.ConfiguredName, inputSource.name)
|
|
318
|
-
.setCharacteristic(this.platform.Characteristic.IsConfigured, this.platform.Characteristic.IsConfigured.CONFIGURED)
|
|
319
|
-
.setCharacteristic(this.platform.Characteristic.InputSourceType, this.guessInputSourceType(inputSource.id));
|
|
320
|
-
this.service.addLinkedService(inputSourceService);
|
|
321
|
-
this.inputSources[i] = inputSourceService;
|
|
322
|
-
}
|
|
345
|
+
supportedInputSources.forEach(inputSource => this.registerInputSource(inputSource.id, inputSource.name));
|
|
323
346
|
});
|
|
324
347
|
}
|
|
348
|
+
/**
|
|
349
|
+
* Registers all installed applications.
|
|
350
|
+
*
|
|
351
|
+
* Tests a list of known application ids by trying to open them. If opening succeeded the application is registered
|
|
352
|
+
* as an input source. If it fails the application will not be added. If multiple ids for an application are available
|
|
353
|
+
* the first successfully tested id will be used.
|
|
354
|
+
*/
|
|
355
|
+
async registerLaunchApplications() {
|
|
356
|
+
for (const i in apps_json_1.default.apps) {
|
|
357
|
+
const app = apps_json_1.default.apps[i];
|
|
358
|
+
for (const j in app.ids) {
|
|
359
|
+
const appId = app.ids[j];
|
|
360
|
+
try {
|
|
361
|
+
await this.client.devices.executeCommand(this.device.deviceId, {
|
|
362
|
+
capability: 'custom.launchapp',
|
|
363
|
+
command: 'launchApp',
|
|
364
|
+
arguments: [appId],
|
|
365
|
+
});
|
|
366
|
+
this.registerInputSource(appId, app.name);
|
|
367
|
+
break;
|
|
368
|
+
}
|
|
369
|
+
catch (exc) {
|
|
370
|
+
continue;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
this.setActiveIdentifier(0);
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Registers a Homebridge input source.
|
|
378
|
+
*
|
|
379
|
+
* @param id the input source id
|
|
380
|
+
* @param name the input source display name
|
|
381
|
+
*/
|
|
382
|
+
registerInputSource(id, name) {
|
|
383
|
+
this.logInfo('Registering input source:', name);
|
|
384
|
+
const inputSourceService = this.accessory.getService(id)
|
|
385
|
+
|| this.accessory.addService(this.platform.Service.InputSource, id, id);
|
|
386
|
+
inputSourceService.name = id;
|
|
387
|
+
inputSourceService
|
|
388
|
+
.setCharacteristic(this.platform.Characteristic.Identifier, this.inputSources.length)
|
|
389
|
+
.setCharacteristic(this.platform.Characteristic.ConfiguredName, name)
|
|
390
|
+
.setCharacteristic(this.platform.Characteristic.IsConfigured, this.platform.Characteristic.IsConfigured.CONFIGURED)
|
|
391
|
+
.setCharacteristic(this.platform.Characteristic.InputSourceType, this.guessInputSourceType(id));
|
|
392
|
+
this.service.addLinkedService(inputSourceService);
|
|
393
|
+
this.inputSources.push(inputSourceService);
|
|
394
|
+
}
|
|
325
395
|
/**
|
|
326
396
|
* Guesses the InputSourceType from the identifier of the input source.
|
|
327
397
|
*
|
|
@@ -353,9 +423,9 @@ class TvAccessory {
|
|
|
353
423
|
command: command,
|
|
354
424
|
arguments: args,
|
|
355
425
|
}).then(() => {
|
|
356
|
-
this.logDebug('Successfully executed command',
|
|
426
|
+
this.logDebug('Successfully executed command', command, 'of capability', capability);
|
|
357
427
|
}).catch(error => {
|
|
358
|
-
this.logError('Error when executing',
|
|
428
|
+
this.logError('Error when executing', command, 'of capability', capability, ':', error.response.statusText);
|
|
359
429
|
});
|
|
360
430
|
}
|
|
361
431
|
/**
|
|
@@ -368,17 +438,17 @@ class TvAccessory {
|
|
|
368
438
|
async getCapabilityStatus(capability) {
|
|
369
439
|
return this.client.devices.getCapabilityStatus(this.device.deviceId, this.component.id, capability)
|
|
370
440
|
.then(status => {
|
|
371
|
-
this.logDebug('Successfully get status of
|
|
441
|
+
this.logDebug('Successfully get status of', capability, ':', JSON.stringify(status, null, 4));
|
|
372
442
|
return status;
|
|
373
443
|
})
|
|
374
444
|
.catch(error => {
|
|
375
|
-
this.logError('Error when getting status of', capability, ':', error);
|
|
445
|
+
this.logError('Error when getting status of', capability, ':', error.response.statusText);
|
|
376
446
|
return undefined;
|
|
377
447
|
});
|
|
378
448
|
}
|
|
379
449
|
logInfo(message, ...parameters) {
|
|
380
450
|
var _a;
|
|
381
|
-
this.log.
|
|
451
|
+
this.log.info('[' + ((_a = this.device.name) !== null && _a !== void 0 ? _a : this.device.deviceId) + '] ' + message, ...parameters);
|
|
382
452
|
}
|
|
383
453
|
logWarn(message, ...parameters) {
|
|
384
454
|
var _a;
|
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":"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"}
|
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": "0.0.
|
|
4
|
+
"version": "0.0.3",
|
|
5
5
|
"description": "Plugin to access samsung TVs using the SmartThings API",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"wol": "^1.0.7"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@types/node": "^
|
|
34
|
+
"@types/node": "^18.13.0",
|
|
35
35
|
"@types/ping": "^0.4.1",
|
|
36
36
|
"@types/wol": "^1.0.1",
|
|
37
37
|
"@typescript-eslint/eslint-plugin": "^5.0.0",
|