@digital-alchemy/hass 0.2.3 → 0.3.1
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 +21 -17
- package/dist/extensions/call-proxy.extension.js +7 -7
- package/dist/extensions/call-proxy.extension.js.map +1 -1
- package/dist/extensions/config.extension.js +8 -8
- package/dist/extensions/config.extension.js.map +1 -1
- package/dist/extensions/entity-manager.extension.js +9 -6
- package/dist/extensions/entity-manager.extension.js.map +1 -1
- package/dist/extensions/fetch-api.extension.d.ts +1 -1
- package/dist/extensions/fetch-api.extension.js +24 -17
- package/dist/extensions/fetch-api.extension.js.map +1 -1
- package/dist/extensions/utilities.extension.js +7 -5
- package/dist/extensions/utilities.extension.js.map +1 -1
- package/dist/extensions/websocket-api.extension.js +25 -28
- package/dist/extensions/websocket-api.extension.js.map +1 -1
- package/package.json +7 -6
package/README.md
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
Welcome to `@digital-alchemy/hass`!
|
|
1
|
+
# 🏠 Welcome to `@digital-alchemy/hass`!
|
|
3
2
|
|
|
4
|
-
This repository contains generic extensions for interacting with Home Assistant, including websocket &
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
This repository contains generic extensions for interacting with Home Assistant, including websocket & REST API adapters, entity & event management, backup workflows, and more.
|
|
4
|
+
|
|
5
|
+
> See the extended docs at https://docs.digital-alchemy.app/02-Home-Automation/02.01-hass/
|
|
6
|
+
|
|
7
|
+
## ⭐ Features
|
|
8
|
+
### 📝 First-class Editor Experiences
|
|
7
9
|
|
|
8
10
|
- Did you just typo that entity name?
|
|
9
11
|
- Just what services are actually available?
|
|
@@ -12,12 +14,12 @@ Create references to entities that will always reflect their current state. Get
|
|
|
12
14
|
|
|
13
15
|

|
|
14
16
|
|
|
15
|
-
### Managed Websocket
|
|
17
|
+
### 🌐 Managed Websocket
|
|
16
18
|
|
|
17
|
-
Don't worry about all the complexities of dealing with
|
|
19
|
+
Don't worry about all the complexities of dealing with Home Assistant. Let the library help by handling all the connection logic, keeping track of events for you, formatting requests, and more.
|
|
18
20
|
|
|
19
|
-
## Configuration
|
|
20
|
-
### Custom Types
|
|
21
|
+
## ⚙️ Configuration
|
|
22
|
+
### 🛠 Custom Types
|
|
21
23
|
|
|
22
24
|
This library has support for customizing type definitions to match a particular Home Assistant install. This functionality requires the [type-writer](https://github.com/Digital-Alchemy-TS/type-writer) command to be installed as well.
|
|
23
25
|
|
|
@@ -26,28 +28,30 @@ This library has support for customizing type definitions to match a particular
|
|
|
26
28
|
npm i --save-dev @digital-alchemy/type-writer
|
|
27
29
|
npx type-writer
|
|
28
30
|
```
|
|
29
|
-
Custom types only affect the development experience
|
|
31
|
+
Custom types only affect the development experience and have no impact on the way the application runs.
|
|
30
32
|
|
|
31
|
-
### Supervised Support
|
|
33
|
+
### 📦 Supervised Support
|
|
32
34
|
|
|
33
35
|
If your code is running within a Home Assistant addon environment, it will automatically connect with no additional configuration needed.
|
|
34
36
|
|
|
35
|
-
### Manual
|
|
37
|
+
### 🖥 Manual
|
|
38
|
+
|
|
39
|
+
For code running elsewhere, manual configuration is required. You will need a **Long Lived Access Token**, which can be generated on your user profile. You can store your config at `./.{app_name}` or `~/.config/{app_name}` in **INI** format.
|
|
40
|
+
|
|
41
|
+
> Don't forget to configure "`type_writer`" also!
|
|
36
42
|
|
|
37
|
-
For code running elsewhere, manual configuration is required. You will need a **Long Lived Access Token**, which can be generated on your user profile.
|
|
38
43
|
```ini
|
|
39
44
|
[hass]
|
|
40
45
|
BASE_URL=http://localhost:8123
|
|
41
46
|
TOKEN=YOUR LONG LIVED ACCESS TOKEN
|
|
42
47
|
```
|
|
43
|
-
## Related Projects
|
|
44
|
-
|
|
45
|
-
For additional projects that build on and consume this library, check out these other projects
|
|
48
|
+
## 🤝 Related Projects
|
|
46
49
|
|
|
50
|
+
For additional projects that build on and consume this library, check out these other projects:
|
|
47
51
|
|
|
48
52
|
| GitHub | Description | NPM |
|
|
49
53
|
| ------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
|
|
50
|
-
| [synapse](https://github.com/Digital-Alchemy-TS/synapse) | Tools for generating entities within
|
|
54
|
+
| [synapse](https://github.com/Digital-Alchemy-TS/synapse) | Tools for generating entities within Home Assistant. | [@digitial-alchemy/synapse](https://www.npmjs.com/package/@digital-alchemy/synapse) |
|
|
51
55
|
| [automation](https://github.com/Digital-Alchemy-TS/automation) | Advanced automation tools for creating dynamic workflows. | [@digital-alchemy/automation](https://www.npmjs.com/package/@digital-alchemy/automation) |
|
|
52
56
|
| [type-writer](https://github.com/Digital-Alchemy-TS/terminal) | Generate custom type definitions for your setup. | [@digital-alchemy/type-writer](https://www.npmjs.com/package/@digital-alchemy/terminal) |
|
|
53
57
|
| [automation-template](https://github.com/Digital-Alchemy-TS/gotify) | Start your own Home Automation project with the `@digital-alchemy` quick start template | |
|
|
@@ -19,16 +19,16 @@ function CallProxy({ logger, lifecycle, context, hass, config, }) {
|
|
|
19
19
|
*/
|
|
20
20
|
lifecycle.onBootstrap(async () => {
|
|
21
21
|
if (!config.hass.AUTO_SCAN_CALL_PROXY) {
|
|
22
|
-
logger.debug(`skip service populate`);
|
|
22
|
+
logger.debug({ name: "onBootstrap" }, `skip service populate`);
|
|
23
23
|
return;
|
|
24
24
|
}
|
|
25
|
-
logger.debug(`runtime populate service interfaces`);
|
|
25
|
+
logger.debug({ name: "onBootstrap" }, `runtime populate service interfaces`);
|
|
26
26
|
await loadServiceList();
|
|
27
27
|
});
|
|
28
28
|
function getDomain(domain) {
|
|
29
29
|
if (!domains || !domains?.includes(domain)) {
|
|
30
30
|
if (!NOT_A_DOMAIN.has(domain)) {
|
|
31
|
-
logger.error({ domain }, `unknown domain`);
|
|
31
|
+
logger.error({ domain, name: getDomain }, `unknown domain`);
|
|
32
32
|
}
|
|
33
33
|
return undefined;
|
|
34
34
|
}
|
|
@@ -44,14 +44,14 @@ function CallProxy({ logger, lifecycle, context, hass, config, }) {
|
|
|
44
44
|
]));
|
|
45
45
|
}
|
|
46
46
|
async function loadServiceList(recursion = core_1.START) {
|
|
47
|
-
logger.info(`fetching service list`);
|
|
47
|
+
logger.info({ name: loadServiceList }, `fetching service list`);
|
|
48
48
|
services = await hass.fetch.listServices();
|
|
49
49
|
if (core_1.is.empty(services)) {
|
|
50
50
|
if (recursion > MAX_ATTEMPTS) {
|
|
51
|
-
logger.fatal(`failed to load service list from Home Assistant`);
|
|
51
|
+
logger.fatal({ name: loadServiceList }, `failed to load service list from Home Assistant`);
|
|
52
52
|
(0, process_1.exit)(FAILED);
|
|
53
53
|
}
|
|
54
|
-
logger.warn("failed to retrieve {service} list. Retrying {%s}/[%s]", recursion, MAX_ATTEMPTS);
|
|
54
|
+
logger.warn({ name: loadServiceList }, "failed to retrieve {service} list. Retrying {%s}/[%s]", recursion, MAX_ATTEMPTS);
|
|
55
55
|
await (0, core_1.sleep)(FAILED_LOAD_DELAY * core_1.SECOND);
|
|
56
56
|
await loadServiceList(recursion + core_1.INCREMENT);
|
|
57
57
|
return;
|
|
@@ -60,7 +60,7 @@ function CallProxy({ logger, lifecycle, context, hass, config, }) {
|
|
|
60
60
|
services.forEach(value => {
|
|
61
61
|
const services = Object.keys(value.services);
|
|
62
62
|
rawProxy[value.domain] = Object.fromEntries(services.map(i => [i, core_1.noop]));
|
|
63
|
-
logger.trace({ services }, `loaded domain [%s]`, value.domain);
|
|
63
|
+
logger.trace({ name: loadServiceList, services }, `loaded domain [%s]`, value.domain);
|
|
64
64
|
});
|
|
65
65
|
}
|
|
66
66
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call-proxy.extension.js","sourceRoot":"","sources":["../../src/extensions/call-proxy.extension.ts"],"names":[],"mappings":";;;AAAA,gDAS+B;AAC/B,qCAA+B;AAE/B,0BAOY;AAEZ,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,MAAM,GAAG,CAAC,CAAC;AACjB,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEvC,SAAgB,SAAS,CAAC,EACxB,MAAM,EACN,SAAS,EACT,OAAO,EACP,IAAI,EACJ,MAAM,GACS;IACf,IAAI,OAAiB,CAAC;IACtB,IAAI,QAA0B,CAAC;IAC/B,MAAM,QAAQ,GAAG,EAA6C,CAAC;IAC/D;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;QAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"call-proxy.extension.js","sourceRoot":"","sources":["../../src/extensions/call-proxy.extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,9 +16,9 @@ function Configure({ logger, lifecycle, hass, config, internal, }) {
|
|
|
16
16
|
if (core_1.is.empty(token)) {
|
|
17
17
|
return;
|
|
18
18
|
}
|
|
19
|
-
logger.debug(`auto configuring from addon environment`);
|
|
20
|
-
internal.config.set("hass", "BASE_URL", process_1.env.HASS_SERVER || "http://supervisor/core");
|
|
21
|
-
internal.config.set("hass", "TOKEN", token);
|
|
19
|
+
logger.debug({ name: "onPreInit" }, `auto configuring from addon environment`);
|
|
20
|
+
internal.boilerplate.config.set("hass", "BASE_URL", process_1.env.HASS_SERVER || "http://supervisor/core");
|
|
21
|
+
internal.boilerplate.config.set("hass", "TOKEN", token);
|
|
22
22
|
});
|
|
23
23
|
/**
|
|
24
24
|
* Request by someone to validate the provided credentials are valid
|
|
@@ -29,22 +29,22 @@ function Configure({ logger, lifecycle, hass, config, internal, }) {
|
|
|
29
29
|
if (!config.hass.VALIDATE_CONFIGURATION) {
|
|
30
30
|
return;
|
|
31
31
|
}
|
|
32
|
-
internal.logger.setLogLevel("trace");
|
|
33
|
-
logger.info(`validating credentials`);
|
|
32
|
+
internal.boilerplate.logger.setLogLevel("trace");
|
|
33
|
+
logger.info({ name: "onPostConfig" }, `validating credentials`);
|
|
34
34
|
try {
|
|
35
35
|
const result = await hass.fetch.checkCredentials();
|
|
36
36
|
if (core_1.is.object(result)) {
|
|
37
37
|
// * all good
|
|
38
|
-
logger.info(result.message);
|
|
38
|
+
logger.info({ name: "onPostConfig" }, result.message);
|
|
39
39
|
(0, process_1.exit)(1);
|
|
40
40
|
}
|
|
41
41
|
// * bad token
|
|
42
|
-
logger.error(String(result));
|
|
42
|
+
logger.error({ name: "onPostConfig" }, String(result));
|
|
43
43
|
(0, process_1.exit)(0);
|
|
44
44
|
}
|
|
45
45
|
catch (error) {
|
|
46
46
|
// * bad BASE_URL
|
|
47
|
-
logger.error({ error }, "failed to send request");
|
|
47
|
+
logger.error({ error, name: "onPostConfig" }, "failed to send request");
|
|
48
48
|
(0, process_1.exit)(0);
|
|
49
49
|
}
|
|
50
50
|
}, __1.PostConfigPriorities.VALIDATE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.extension.js","sourceRoot":"","sources":["../../src/extensions/config.extension.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,gDAA2D;AAC3D,qCAAoC;AAEpC,0BAA0C;AAC1C,SAAgB,SAAS,CAAC,EACxB,MAAM,EACN,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,GACO;IACf;;;;OAIG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE;QACvB,MAAM,KAAK,GAAG,aAAG,CAAC,YAAY,IAAI,aAAG,CAAC,gBAAgB,CAAC;QACvD,IAAI,SAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"config.extension.js","sourceRoot":"","sources":["../../src/extensions/config.extension.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,gDAA2D;AAC3D,qCAAoC;AAEpC,0BAA0C;AAC1C,SAAgB,SAAS,CAAC,EACxB,MAAM,EACN,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,GACO;IACf;;;;OAIG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE;QACvB,MAAM,KAAK,GAAG,aAAG,CAAC,YAAY,IAAI,aAAG,CAAC,gBAAgB,CAAC;QACvD,IAAI,SAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,KAAK,CACV,EAAE,IAAI,EAAE,WAAW,EAAE,EACrB,yCAAyC,CAC1C,CAAC;QACF,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAC7B,MAAM,EACN,UAAU,EACV,aAAG,CAAC,WAAW,IAAI,wBAAwB,CAC5C,CAAC;QACF,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACxC,OAAO;QACT,CAAC;QACD,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,wBAAwB,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACnD,IAAI,SAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtB,aAAa;gBACb,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAA,cAAI,EAAC,CAAC,CAAC,CAAC;YACV,CAAC;YACD,cAAc;YACd,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YACvD,IAAA,cAAI,EAAC,CAAC,CAAC,CAAC;QACV,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iBAAiB;YACjB,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,wBAAwB,CAAC,CAAC;YACxE,IAAA,cAAI,EAAC,CAAC,CAAC,CAAC;QACV,CAAC;IACH,CAAC,EAAE,wBAAoB,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAxDD,8BAwDC"}
|
|
@@ -38,7 +38,7 @@ function EntityManager({ logger, hass, lifecycle, internal, }) {
|
|
|
38
38
|
}
|
|
39
39
|
const valid = ["state", "attributes", "last"].some(i => property.startsWith(i));
|
|
40
40
|
if (!valid) {
|
|
41
|
-
logger.error({ entity, property }, `invalid property lookup`);
|
|
41
|
+
logger.error({ entity, name: proxyGetLogic, property }, `invalid property lookup`);
|
|
42
42
|
return undefined;
|
|
43
43
|
}
|
|
44
44
|
const current = getCurrentState(entity);
|
|
@@ -120,10 +120,10 @@ function EntityManager({ logger, hass, lifecycle, internal, }) {
|
|
|
120
120
|
// - Keep retrying until max failures reached
|
|
121
121
|
if (core_1.is.empty(states)) {
|
|
122
122
|
if (recursion > MAX_ATTEMPTS) {
|
|
123
|
-
logger.fatal(`failed to load service list from Home Assistant.
|
|
123
|
+
logger.fatal({ name: refresh }, `failed to load service list from Home Assistant. validate configuration`);
|
|
124
124
|
(0, process_1.exit)();
|
|
125
125
|
}
|
|
126
|
-
logger.warn("failed to retrieve entity list.
|
|
126
|
+
logger.warn({ name: refresh }, "failed to retrieve entity list. retrying {%s}/[%s]", recursion, MAX_ATTEMPTS);
|
|
127
127
|
await (0, core_1.sleep)(FAILED_LOAD_DELAY * core_1.SECOND);
|
|
128
128
|
await refresh(recursion + core_1.INCREMENT);
|
|
129
129
|
return;
|
|
@@ -143,7 +143,10 @@ function EntityManager({ logger, hass, lifecycle, internal, }) {
|
|
|
143
143
|
}
|
|
144
144
|
const old = internal.utils.object.get(oldState, entity.entity_id);
|
|
145
145
|
if (core_1.is.equal(old, entity)) {
|
|
146
|
-
logger.trace(
|
|
146
|
+
// logger.trace(
|
|
147
|
+
// { entity_id: entity.entity_id, name: refresh },
|
|
148
|
+
// `no change on refresh`,
|
|
149
|
+
// );
|
|
147
150
|
return;
|
|
148
151
|
}
|
|
149
152
|
emitUpdates.push(entity);
|
|
@@ -161,7 +164,7 @@ function EntityManager({ logger, hass, lifecycle, internal, }) {
|
|
|
161
164
|
// ## Receiver function for incoming entity updates
|
|
162
165
|
function EntityUpdateReceiver(entity_id, new_state, old_state) {
|
|
163
166
|
if (new_state === null) {
|
|
164
|
-
logger.warn({ name:
|
|
167
|
+
logger.warn({ name: EntityUpdateReceiver }, `removing deleted entity [%s] from {MASTER_STATE}`, entity_id);
|
|
165
168
|
internal.utils.object.del(MASTER_STATE, entity_id);
|
|
166
169
|
return;
|
|
167
170
|
}
|
|
@@ -171,7 +174,7 @@ function EntityManager({ logger, hass, lifecycle, internal, }) {
|
|
|
171
174
|
}
|
|
172
175
|
}
|
|
173
176
|
lifecycle.onPostConfig(async () => {
|
|
174
|
-
logger.debug(`pre populate {MASTER_STATE}`);
|
|
177
|
+
logger.debug({ name: "onPostConfig" }, `pre populate {MASTER_STATE}`);
|
|
175
178
|
await refresh();
|
|
176
179
|
});
|
|
177
180
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity-manager.extension.js","sourceRoot":"","sources":["../../src/extensions/entity-manager.extension.ts"],"names":[],"mappings":";;;;AAAA,gDAU+B;AAC/B,0DAAqC;AACrC,4DAAkC;AAClC,qCAA+B;AAG/B,0BAOY;AAGC,QAAA,sBAAsB,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAsBzE,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,MAAM,GAAG,CAAC,CAAC;AAEjB,SAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,IAAI,EACJ,SAAS,EACT,QAAQ,GACO;IACf,eAAe;IACf;;OAEG;IACH,IAAI,YAAY,GAAG,EAElB,CAAC;IACF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuC,CAAC;IACtE,IAAI,WAAkB,CAAC;IAEvB,0DAA0D;IAC1D,sEAAsE;IACtE,MAAM,KAAK,GAAG,IAAI,gBAAY,EAAE,CAAC;IACjC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;IACjC,IAAI,IAAI,GAAG,KAAK,CAAC;IAEjB,YAAY;IACZ,0CAA0C;IAC1C,SAAS,eAAe,CACtB,SAAoB;QAGpB,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,IAAI,EAAE,CAAC;QACrE,OAAO,GAA8B,CAAC;IACxC,CAAC;IAED,gCAAgC;IAChC,SAAS,aAAa,CAGpB,MAAc,EAAE,QAAkB;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACrD,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CACvB,CAAC;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"entity-manager.extension.js","sourceRoot":"","sources":["../../src/extensions/entity-manager.extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,6 @@ export declare function FetchAPI({ logger, lifecycle, context, internal, config,
|
|
|
24
24
|
getRawLogs: () => Promise<string>;
|
|
25
25
|
listServices: () => Promise<HassServiceDTO[]>;
|
|
26
26
|
updateEntity: <STATE extends string | number = string, ATTRIBUTES extends object = object>(entity_id: PICK_ENTITY, { attributes, state }: SendBody<STATE, ATTRIBUTES>) => Promise<void>;
|
|
27
|
-
webhook: (
|
|
27
|
+
webhook: (webhook_name: string, data?: object) => Promise<void>;
|
|
28
28
|
};
|
|
29
29
|
export {};
|
|
@@ -6,7 +6,7 @@ const core_1 = require("@digital-alchemy/core");
|
|
|
6
6
|
const dayjs_1 = tslib_1.__importDefault(require("dayjs"));
|
|
7
7
|
const __1 = require("..");
|
|
8
8
|
function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
9
|
-
const fetcher = internal.
|
|
9
|
+
const fetcher = internal.boilerplate.fetch({ context });
|
|
10
10
|
const { fetch, download: downloader } = fetcher;
|
|
11
11
|
// Load configurations
|
|
12
12
|
lifecycle.onPostConfig(() => {
|
|
@@ -29,7 +29,7 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
29
29
|
params,
|
|
30
30
|
url: `/api/calendars/${calendar}`,
|
|
31
31
|
});
|
|
32
|
-
logger.trace({
|
|
32
|
+
logger.trace({ name: calendarSearch, params }, `%s search found %s events`, calendar, events.length);
|
|
33
33
|
return events.map(({ start, end, ...extra }) => ({
|
|
34
34
|
...extra,
|
|
35
35
|
end: (0, dayjs_1.default)(end.dateTime),
|
|
@@ -45,13 +45,14 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
async function checkConfig() {
|
|
48
|
-
logger.trace(
|
|
48
|
+
logger.trace({ name: checkConfig }, `send`);
|
|
49
49
|
return await fetch({
|
|
50
50
|
method: `post`,
|
|
51
51
|
url: `/api/config/core/check_config`,
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
54
|
async function download(destination, fetchWith) {
|
|
55
|
+
logger.trace({ name: download }, `send`);
|
|
55
56
|
await downloader({
|
|
56
57
|
...fetchWith,
|
|
57
58
|
baseUrl: config.hass.BASE_URL,
|
|
@@ -60,12 +61,18 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
60
61
|
});
|
|
61
62
|
}
|
|
62
63
|
async function fetchEntityCustomizations(entityId) {
|
|
64
|
+
logger.trace({ name: fetchEntityCustomizations }, `send`);
|
|
63
65
|
return await fetch({
|
|
64
66
|
url: `/api/config/customize/config/${entityId}`,
|
|
65
67
|
});
|
|
66
68
|
}
|
|
67
69
|
async function fetchEntityHistory(entity_id, from, to, extra = {}) {
|
|
68
|
-
logger.info({
|
|
70
|
+
logger.info({
|
|
71
|
+
entity_id,
|
|
72
|
+
from: from.toISOString(),
|
|
73
|
+
name: fetchEntityHistory,
|
|
74
|
+
to: to.toISOString(),
|
|
75
|
+
}, `fetch entity history`);
|
|
69
76
|
const result = await fetch({
|
|
70
77
|
params: {
|
|
71
78
|
end_time: to.toISOString(),
|
|
@@ -75,14 +82,14 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
75
82
|
url: `/api/history/period/${from.toISOString()}`,
|
|
76
83
|
});
|
|
77
84
|
if (!Array.isArray(result)) {
|
|
78
|
-
logger.error({ result }, `unexpected return result`);
|
|
85
|
+
logger.error({ name: fetchEntityHistory, result }, `unexpected return result`);
|
|
79
86
|
return [];
|
|
80
87
|
}
|
|
81
88
|
const [out] = result;
|
|
82
89
|
return out;
|
|
83
90
|
}
|
|
84
91
|
async function fireEvent(event, data) {
|
|
85
|
-
logger.trace({
|
|
92
|
+
logger.trace({ data, event, name: fireEvent }, `firing event`);
|
|
86
93
|
const response = await fetch({
|
|
87
94
|
// body: data,
|
|
88
95
|
body: {},
|
|
@@ -90,19 +97,19 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
90
97
|
url: `/api/events/${event}`,
|
|
91
98
|
});
|
|
92
99
|
if (response?.message !== `Event ${event} fired.`) {
|
|
93
|
-
logger.debug({ response }, `unexpected response from firing event`);
|
|
100
|
+
logger.debug({ name: fetchEntityHistory, response }, `unexpected response from firing event`);
|
|
94
101
|
}
|
|
95
102
|
}
|
|
96
103
|
async function getAllEntities() {
|
|
97
|
-
logger.trace(
|
|
104
|
+
logger.trace({ name: getAllEntities }, `send`);
|
|
98
105
|
return await fetch({ url: `/api/states` });
|
|
99
106
|
}
|
|
100
107
|
async function getHassConfig() {
|
|
101
|
-
logger.trace(
|
|
108
|
+
logger.trace({ name: getHassConfig }, `send`);
|
|
102
109
|
return await fetch({ url: `/api/config` });
|
|
103
110
|
}
|
|
104
111
|
async function getLogs() {
|
|
105
|
-
logger.trace(
|
|
112
|
+
logger.trace({ name: getLogs }, `send`);
|
|
106
113
|
const results = await fetch({
|
|
107
114
|
url: `/api/error/all`,
|
|
108
115
|
});
|
|
@@ -113,11 +120,11 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
113
120
|
});
|
|
114
121
|
}
|
|
115
122
|
async function getRawLogs() {
|
|
116
|
-
logger.trace(
|
|
123
|
+
logger.trace({ name: getRawLogs }, `send`);
|
|
117
124
|
return await fetch({ process: "text", url: `/api/error_log` });
|
|
118
125
|
}
|
|
119
126
|
async function listServices() {
|
|
120
|
-
logger.trace(
|
|
127
|
+
logger.trace({ name: listServices }, `send`);
|
|
121
128
|
return await fetch({ url: `/api/services` });
|
|
122
129
|
}
|
|
123
130
|
async function updateEntity(entity_id, { attributes, state }) {
|
|
@@ -128,20 +135,20 @@ function FetchAPI({ logger, lifecycle, context, internal, config, }) {
|
|
|
128
135
|
if (!core_1.is.empty(attributes)) {
|
|
129
136
|
body.attributes = attributes;
|
|
130
137
|
}
|
|
131
|
-
logger.trace({ ...body, name:
|
|
138
|
+
logger.trace({ ...body, entity_id, name: updateEntity }, `set entity state`);
|
|
132
139
|
await fetch({ body, method: "post", url: `/api/states/${entity_id}` });
|
|
133
140
|
}
|
|
134
|
-
async function webhook(
|
|
135
|
-
logger.trace({
|
|
141
|
+
async function webhook(webhook_name, data = {}) {
|
|
142
|
+
logger.trace({ data, name: webhook, webhook_name }, `send`);
|
|
136
143
|
await fetch({
|
|
137
144
|
body: data,
|
|
138
145
|
method: "post",
|
|
139
146
|
process: "text",
|
|
140
|
-
url: `/api/webhook/${
|
|
147
|
+
url: `/api/webhook/${webhook_name}`,
|
|
141
148
|
});
|
|
142
149
|
}
|
|
143
150
|
async function checkCredentials() {
|
|
144
|
-
logger.trace(
|
|
151
|
+
logger.trace({ name: checkCredentials }, `send`);
|
|
145
152
|
return await fetch({
|
|
146
153
|
url: `/api/`,
|
|
147
154
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-api.extension.js","sourceRoot":"","sources":["../../src/extensions/fetch-api.extension.ts"],"names":[],"mappings":";;;;AAAA,gDAS+B;AAC/B,0DAA0B;AAE1B,0BAaY;AAUZ,SAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,SAAS,EACT,OAAO,EACP,QAAQ,EACR,MAAM,GACS;IACf,MAAM,OAAO,GAAG,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"fetch-api.extension.js","sourceRoot":"","sources":["../../src/extensions/fetch-api.extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,33 +8,35 @@ function Utilities({ logger, hass }) {
|
|
|
8
8
|
let current = await list();
|
|
9
9
|
// const originalLength = current.backups.length;
|
|
10
10
|
if (current.backing_up) {
|
|
11
|
-
logger.warn(`a backup is currently in progress. Waiting for that to complete instead.`);
|
|
11
|
+
logger.warn({ name: generate }, `a backup is currently in progress. Waiting for that to complete instead.`);
|
|
12
12
|
}
|
|
13
13
|
else {
|
|
14
|
-
logger.info("initiating new backup");
|
|
14
|
+
logger.info({ name: generate }, "initiating new backup");
|
|
15
15
|
hass.socket.sendMessage({
|
|
16
16
|
type: __1.HASSIO_WS_COMMAND.generate_backup,
|
|
17
17
|
});
|
|
18
18
|
while (current.backing_up === false) {
|
|
19
|
-
logger.debug("... waiting");
|
|
19
|
+
logger.debug({ name: generate }, "... waiting");
|
|
20
20
|
await (0, core_1.sleep)(core_1.HALF * core_1.SECOND);
|
|
21
21
|
current = await list();
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
while (current.backing_up === true) {
|
|
25
|
-
logger.debug("... waiting");
|
|
25
|
+
logger.debug({ name: generate }, "... waiting");
|
|
26
26
|
await (0, core_1.sleep)(core_1.HALF * core_1.SECOND);
|
|
27
27
|
current = await list();
|
|
28
28
|
}
|
|
29
|
-
logger.info(`backup complete`);
|
|
29
|
+
logger.info({ name: generate }, `backup complete`);
|
|
30
30
|
return current.backups.pop();
|
|
31
31
|
}
|
|
32
32
|
async function list() {
|
|
33
|
+
logger.trace({ name: list }, "send");
|
|
33
34
|
return await hass.socket.sendMessage({
|
|
34
35
|
type: __1.HASSIO_WS_COMMAND.backup_info,
|
|
35
36
|
});
|
|
36
37
|
}
|
|
37
38
|
async function remove(slug) {
|
|
39
|
+
logger.trace({ name: remove }, "send");
|
|
38
40
|
await hass.socket.sendMessage({ slug, type: __1.HASSIO_WS_COMMAND.remove_backup }, false);
|
|
39
41
|
}
|
|
40
42
|
return { backup: { generate, list, remove } };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.extension.js","sourceRoot":"","sources":["../../src/extensions/utilities.extension.ts"],"names":[],"mappings":";;;AAAA,gDAA4E;AAE5E,0BAA4E;AAE5E,SAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAkB;IACxD,KAAK,UAAU,QAAQ;QACrB,IAAI,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,iDAAiD;QACjD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CACT,0EAA0E,CAC3E,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"utilities.extension.js","sourceRoot":"","sources":["../../src/extensions/utilities.extension.ts"],"names":[],"mappings":";;;AAAA,gDAA4E;AAE5E,0BAA4E;AAE5E,SAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAkB;IACxD,KAAK,UAAU,QAAQ;QACrB,IAAI,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,iDAAiD;QACjD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,QAAQ,EAAE,EAClB,0EAA0E,CAC3E,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,uBAAuB,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBACtB,IAAI,EAAE,qBAAiB,CAAC,eAAe;aACxC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;gBACpC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC;gBAChD,MAAM,IAAA,YAAK,EAAC,WAAI,GAAG,aAAM,CAAC,CAAC;gBAC3B,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,aAAa,CAAC,CAAC;YAChD,MAAM,IAAA,YAAK,EAAC,WAAI,GAAG,aAAM,CAAC,CAAC;YAC3B,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC;QACzB,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACnD,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,UAAU,IAAI;QACjB,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;QACrC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAiB;YACnD,IAAI,EAAE,qBAAiB,CAAC,WAAW;SACpC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,IAAY;QAChC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3B,EAAE,IAAI,EAAE,IAAI,EAAE,qBAAiB,CAAC,aAAa,EAAE,EAC/C,KAAK,CACN,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;AAChD,CAAC;AA7CD,8BA6CC"}
|
|
@@ -37,7 +37,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
37
37
|
// Start the socket
|
|
38
38
|
lifecycle.onBootstrap(async () => {
|
|
39
39
|
if (config.hass.AUTO_CONNECT_SOCKET) {
|
|
40
|
-
logger.debug(`auto starting connection`);
|
|
40
|
+
logger.debug({ name: "onBootstrap" }, `auto starting connection`);
|
|
41
41
|
await ManageConnection();
|
|
42
42
|
attachScheduledFunctions();
|
|
43
43
|
}
|
|
@@ -52,7 +52,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
52
52
|
}
|
|
53
53
|
async function ManageConnection() {
|
|
54
54
|
const now = (0, dayjs_1.default)();
|
|
55
|
-
const name =
|
|
55
|
+
const name = ManageConnection;
|
|
56
56
|
const threshold = config.hass.RETRY_INTERVAL * CONNECTION_FAILED;
|
|
57
57
|
switch (hass.socket.connectionState) {
|
|
58
58
|
case "connected":
|
|
@@ -119,7 +119,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
119
119
|
try {
|
|
120
120
|
await init();
|
|
121
121
|
setConnectionState("connected");
|
|
122
|
-
logger.info("
|
|
122
|
+
logger.info({ name }, "auth success {connecting} => {connected}");
|
|
123
123
|
}
|
|
124
124
|
catch (error) {
|
|
125
125
|
logger.error({ error, name }, "init failed {connecting} => {offline}");
|
|
@@ -128,12 +128,12 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
128
128
|
return;
|
|
129
129
|
case "invalid":
|
|
130
130
|
// ### error
|
|
131
|
-
logger.error("socket received error, check credentials and restart application");
|
|
131
|
+
logger.error({ name }, "socket received error, check credentials and restart application");
|
|
132
132
|
return;
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
function attachScheduledFunctions() {
|
|
136
|
-
logger.trace(`attaching interval schedules`);
|
|
136
|
+
logger.trace({ name: attachScheduledFunctions }, `attaching interval schedules`);
|
|
137
137
|
scheduler.interval({
|
|
138
138
|
exec: async () => await ManageConnection(),
|
|
139
139
|
interval: config.hass.RETRY_INTERVAL * core_1.SECOND,
|
|
@@ -146,8 +146,8 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
146
146
|
interval: CLEANUP_INTERVAL * core_1.SECOND,
|
|
147
147
|
});
|
|
148
148
|
}
|
|
149
|
-
lifecycle.
|
|
150
|
-
logger.debug(`shutdown - tearing down connection`);
|
|
149
|
+
lifecycle.onShutdownStart(async () => {
|
|
150
|
+
logger.debug({ name: "onShutdownStart" }, `shutdown - tearing down connection`);
|
|
151
151
|
await teardown();
|
|
152
152
|
});
|
|
153
153
|
async function teardown() {
|
|
@@ -155,7 +155,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
155
155
|
return;
|
|
156
156
|
}
|
|
157
157
|
if (connection.readyState === CONNECTION_OPEN) {
|
|
158
|
-
logger.debug(`closing current connection`);
|
|
158
|
+
logger.debug({ name: teardown }, `closing current connection`);
|
|
159
159
|
connection.close();
|
|
160
160
|
}
|
|
161
161
|
connection = undefined;
|
|
@@ -166,7 +166,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
166
166
|
}
|
|
167
167
|
async function sendMessage(data, waitForResponse = true, subscription) {
|
|
168
168
|
if (hass.socket.connectionState === "offline") {
|
|
169
|
-
logger.error("socket is closed, cannot send message");
|
|
169
|
+
logger.error({ name: sendMessage }, "socket is closed, cannot send message");
|
|
170
170
|
return undefined;
|
|
171
171
|
}
|
|
172
172
|
if (hass.socket.pauseMessages && data.type !== __1.HASSIO_WS_COMMAND.ping) {
|
|
@@ -198,7 +198,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
198
198
|
waitingCallback.delete(id);
|
|
199
199
|
logger.warn({
|
|
200
200
|
message: data,
|
|
201
|
-
name:
|
|
201
|
+
name: sendMessage,
|
|
202
202
|
sentAt: internal.utils.relativeDate(sentAt),
|
|
203
203
|
}, `sent message, did not receive reply`);
|
|
204
204
|
});
|
|
@@ -213,11 +213,11 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
213
213
|
__1.SOCKET_SENT_MESSAGES.labels({ type }).inc();
|
|
214
214
|
const { SOCKET_CRASH_REQUESTS_PER_SEC: crashCount, SOCKET_WARN_REQUESTS_PER_SEC: warnCount, } = config.hass;
|
|
215
215
|
if (perSecondAverage > crashCount) {
|
|
216
|
-
logger.fatal(`exceeded {CRASH_REQUESTS_PER_MIN} ([%s]) threshold`, crashCount);
|
|
216
|
+
logger.fatal({ name: countMessage }, `exceeded {CRASH_REQUESTS_PER_MIN} ([%s]) threshold`, crashCount);
|
|
217
217
|
(0, process_1.exit)();
|
|
218
218
|
}
|
|
219
219
|
if (perSecondAverage > warnCount) {
|
|
220
|
-
logger.warn(`message traffic [%s] > [%s] > [%s]`, crashCount, perSecondAverage, warnCount);
|
|
220
|
+
logger.warn({ name: countMessage }, `message traffic [%s] > [%s] > [%s]`, crashCount, perSecondAverage, warnCount);
|
|
221
221
|
}
|
|
222
222
|
}
|
|
223
223
|
function getUrl() {
|
|
@@ -230,10 +230,8 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
230
230
|
}
|
|
231
231
|
async function init() {
|
|
232
232
|
if (connection) {
|
|
233
|
-
// logger.error({ connection });
|
|
234
233
|
throw new core_1.InternalError(context, "ExistingConnection", `Destroy the current connection before creating a new one`);
|
|
235
234
|
}
|
|
236
|
-
logger.debug(`CONNECTION_ACTIVE = {false}`);
|
|
237
235
|
const url = getUrl();
|
|
238
236
|
try {
|
|
239
237
|
messageCount = core_1.START;
|
|
@@ -249,23 +247,23 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
249
247
|
// My expectation is `internal.safeExec` should trap any application errors
|
|
250
248
|
// This try/catch should actually be excessive
|
|
251
249
|
// If this error happens, something weird is happening
|
|
252
|
-
logger.error({ error }, `💣 error bubbled up from websocket message event handler`);
|
|
250
|
+
logger.error({ error, name: init }, `💣 error bubbled up from websocket message event handler`);
|
|
253
251
|
}
|
|
254
252
|
});
|
|
255
253
|
connection.on("error", async (error) => {
|
|
256
|
-
logger.error({ error: error }, "
|
|
254
|
+
logger.error({ error: error, name: init }, "socket error");
|
|
257
255
|
if (hass.socket.connectionState === "connected") {
|
|
258
256
|
setConnectionState("unknown");
|
|
259
257
|
}
|
|
260
258
|
});
|
|
261
259
|
connection.on("close", async () => {
|
|
262
|
-
logger.warn("connection closed");
|
|
260
|
+
logger.warn({ name: init }, "connection closed");
|
|
263
261
|
await teardown();
|
|
264
262
|
});
|
|
265
263
|
return await new Promise(done => (onSocketReady = done));
|
|
266
264
|
}
|
|
267
265
|
catch (error) {
|
|
268
|
-
logger.error({ error, url }, `initConnection error`);
|
|
266
|
+
logger.error({ error, name: init, url }, `initConnection error`);
|
|
269
267
|
setConnectionState("offline");
|
|
270
268
|
}
|
|
271
269
|
}
|
|
@@ -290,13 +288,12 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
290
288
|
__1.SOCKET_RECEIVED_MESSAGES.labels({ type: message.type }).inc();
|
|
291
289
|
switch (message.type) {
|
|
292
290
|
case __1.HassSocketMessageTypes.auth_required:
|
|
293
|
-
logger.
|
|
291
|
+
logger.trace({ name: onMessage }, `sending authentication`);
|
|
294
292
|
sendMessage({ access_token: config.hass.TOKEN, type: __1.HASSIO_WS_COMMAND.auth }, false);
|
|
295
293
|
return;
|
|
296
294
|
case __1.HassSocketMessageTypes.auth_ok:
|
|
297
|
-
logger.debug(`CONNECTION_ACTIVE = {true}`);
|
|
298
295
|
// * Flag as valid connection
|
|
299
|
-
logger.
|
|
296
|
+
logger.trace({ name: onMessage }, `event subscriptions starting`);
|
|
300
297
|
await sendMessage({ type: __1.HASSIO_WS_COMMAND.subscribe_events }, false);
|
|
301
298
|
onSocketReady();
|
|
302
299
|
event.emit(exports.SOCKET_CONNECTED);
|
|
@@ -310,13 +307,13 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
310
307
|
return await onMessageResult(id, message);
|
|
311
308
|
case __1.HassSocketMessageTypes.auth_invalid:
|
|
312
309
|
setConnectionState("invalid");
|
|
313
|
-
logger.fatal({ message }, "
|
|
310
|
+
logger.fatal({ message, name: onMessage }, "received auth invalid {connecting} => {invalid}");
|
|
314
311
|
// ? If you have a use case for making this exit configurable, open a ticket
|
|
315
312
|
(0, process_1.exit)();
|
|
316
313
|
return;
|
|
317
314
|
default:
|
|
318
315
|
// Code error probably
|
|
319
|
-
logger.error(`unknown websocket message type: ${message.type}`);
|
|
316
|
+
logger.error({ name: onMessage }, `unknown websocket message type: ${message.type}`);
|
|
320
317
|
}
|
|
321
318
|
}
|
|
322
319
|
function onMessageEvent(id, message) {
|
|
@@ -335,7 +332,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
335
332
|
// FIXME: probably removal / rename?
|
|
336
333
|
// It's an edge case for sure, and not positive this code should handle it
|
|
337
334
|
// If you have thoughts, chime in somewhere and we can do more sane things
|
|
338
|
-
logger.debug({ message }, `no new state for entity, what caused this?`);
|
|
335
|
+
logger.debug({ message, name: onMessageEvent }, `no new state for entity, what caused this?`);
|
|
339
336
|
return;
|
|
340
337
|
}
|
|
341
338
|
}
|
|
@@ -352,7 +349,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
352
349
|
function onMessageResult(id, message) {
|
|
353
350
|
if (waitingCallback.has(id)) {
|
|
354
351
|
if (message.error) {
|
|
355
|
-
logger.error({ message });
|
|
352
|
+
logger.error({ message, name: onMessageResult });
|
|
356
353
|
}
|
|
357
354
|
const f = waitingCallback.get(id);
|
|
358
355
|
waitingCallback.delete(id);
|
|
@@ -360,7 +357,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
360
357
|
}
|
|
361
358
|
}
|
|
362
359
|
function onEvent({ context, label, event, once, exec, }) {
|
|
363
|
-
logger.trace({ context, event }, `attaching socket event listener`);
|
|
360
|
+
logger.trace({ context, event, name: onEvent }, `attaching socket event listener`);
|
|
364
361
|
const callback = async (data) => {
|
|
365
362
|
await internal.safeExec({
|
|
366
363
|
duration: __1.SOCKET_EVENT_EXECUTION_TIME,
|
|
@@ -377,7 +374,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
377
374
|
socketEvents.on(event, callback);
|
|
378
375
|
}
|
|
379
376
|
return () => {
|
|
380
|
-
logger.trace({ context, event }, `removing socket event listener`);
|
|
377
|
+
logger.trace({ context, event, name: onEvent }, `removing socket event listener`);
|
|
381
378
|
socketEvents.removeListener(event, callback);
|
|
382
379
|
};
|
|
383
380
|
}
|
|
@@ -404,7 +401,7 @@ function WebsocketAPI({ context, event, hass, config, internal, lifecycle, logge
|
|
|
404
401
|
await internal.safeExec(async () => await callback());
|
|
405
402
|
};
|
|
406
403
|
if (hass.socket.connectionState === "connected") {
|
|
407
|
-
logger.warn(`added
|
|
404
|
+
logger.warn({ name: "onConnect" }, `added callback after socket was already connected, running immediately`);
|
|
408
405
|
setImmediate(wrapped);
|
|
409
406
|
// attach anyways, for restarts or whatever
|
|
410
407
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-api.extension.js","sourceRoot":"","sources":["../../src/extensions/websocket-api.extension.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"websocket-api.extension.js","sourceRoot":"","sources":["../../src/extensions/websocket-api.extension.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digital-alchemy/hass",
|
|
3
3
|
"repository": "https://github.com/Digital-Alchemy-TS/hass",
|
|
4
|
-
"
|
|
4
|
+
"homepage": "https://docs.digital-alchemy.app",
|
|
5
|
+
"version": "0.3.1",
|
|
5
6
|
"scripts": {
|
|
6
7
|
"build": "tsc",
|
|
7
8
|
"lint": "eslint src",
|
|
@@ -23,7 +24,7 @@
|
|
|
23
24
|
},
|
|
24
25
|
"license": "MIT",
|
|
25
26
|
"dependencies": {
|
|
26
|
-
"@digital-alchemy/core": "^0.
|
|
27
|
+
"@digital-alchemy/core": "^0.3.1",
|
|
27
28
|
"dayjs": "^1.11.10",
|
|
28
29
|
"prom-client": "^15.1.0",
|
|
29
30
|
"ws": "^8.16.0"
|
|
@@ -35,11 +36,11 @@
|
|
|
35
36
|
"@types/js-yaml": "^4.0.9",
|
|
36
37
|
"@types/minimist": "^1.2.5",
|
|
37
38
|
"@types/mute-stream": "^0.0.4",
|
|
38
|
-
"@types/node": "^20.11.
|
|
39
|
+
"@types/node": "^20.11.28",
|
|
39
40
|
"@types/uuid": "^9.0.8",
|
|
40
41
|
"@types/ws": "^8.5.10",
|
|
41
|
-
"@typescript-eslint/eslint-plugin": "7.
|
|
42
|
-
"@typescript-eslint/parser": "7.
|
|
42
|
+
"@typescript-eslint/eslint-plugin": "7.2.0",
|
|
43
|
+
"@typescript-eslint/parser": "7.2.0",
|
|
43
44
|
"eslint": "8.57.0",
|
|
44
45
|
"eslint-config-prettier": "9.1.0",
|
|
45
46
|
"eslint-plugin-import": "^2.29.1",
|
|
@@ -53,7 +54,7 @@
|
|
|
53
54
|
"eslint-plugin-unicorn": "^51.0.1",
|
|
54
55
|
"jest": "^29.7.0",
|
|
55
56
|
"jest-environment-node": "^29.7.0",
|
|
56
|
-
"npm-check-updates": "^16.14.
|
|
57
|
+
"npm-check-updates": "^16.14.17",
|
|
57
58
|
"prettier": "^3.2.5",
|
|
58
59
|
"ts-jest": "^29.1.2",
|
|
59
60
|
"tsx": "^4.7.1",
|