@matterbridge/core 3.5.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/LICENSE +202 -0
- package/README.md +22 -0
- package/dist/cli.d.ts +29 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +268 -0
- package/dist/cli.js.map +1 -0
- package/dist/cliEmitter.d.ts +50 -0
- package/dist/cliEmitter.d.ts.map +1 -0
- package/dist/cliEmitter.js +49 -0
- package/dist/cliEmitter.js.map +1 -0
- package/dist/cliHistory.d.ts +48 -0
- package/dist/cliHistory.d.ts.map +1 -0
- package/dist/cliHistory.js +826 -0
- package/dist/cliHistory.js.map +1 -0
- package/dist/clusters/export.d.ts +2 -0
- package/dist/clusters/export.d.ts.map +1 -0
- package/dist/clusters/export.js +3 -0
- package/dist/clusters/export.js.map +1 -0
- package/dist/crypto/attestationDecoder.d.ts +180 -0
- package/dist/crypto/attestationDecoder.d.ts.map +1 -0
- package/dist/crypto/attestationDecoder.js +176 -0
- package/dist/crypto/attestationDecoder.js.map +1 -0
- package/dist/crypto/declarationDecoder.d.ts +72 -0
- package/dist/crypto/declarationDecoder.d.ts.map +1 -0
- package/dist/crypto/declarationDecoder.js +241 -0
- package/dist/crypto/declarationDecoder.js.map +1 -0
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.d.ts +9 -0
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.d.ts.map +1 -0
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.js +120 -0
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.js.map +1 -0
- package/dist/crypto/read-extensions.d.ts +2 -0
- package/dist/crypto/read-extensions.d.ts.map +1 -0
- package/dist/crypto/read-extensions.js +81 -0
- package/dist/crypto/read-extensions.js.map +1 -0
- package/dist/crypto/testData.d.ts +31 -0
- package/dist/crypto/testData.d.ts.map +1 -0
- package/dist/crypto/testData.js +131 -0
- package/dist/crypto/testData.js.map +1 -0
- package/dist/crypto/walk-der.d.ts +2 -0
- package/dist/crypto/walk-der.d.ts.map +1 -0
- package/dist/crypto/walk-der.js +165 -0
- package/dist/crypto/walk-der.js.map +1 -0
- package/dist/deviceManager.d.ts +135 -0
- package/dist/deviceManager.d.ts.map +1 -0
- package/dist/deviceManager.js +270 -0
- package/dist/deviceManager.js.map +1 -0
- package/dist/devices/airConditioner.d.ts +98 -0
- package/dist/devices/airConditioner.d.ts.map +1 -0
- package/dist/devices/airConditioner.js +74 -0
- package/dist/devices/airConditioner.js.map +1 -0
- package/dist/devices/basicVideoPlayer.d.ts +88 -0
- package/dist/devices/basicVideoPlayer.d.ts.map +1 -0
- package/dist/devices/basicVideoPlayer.js +155 -0
- package/dist/devices/basicVideoPlayer.js.map +1 -0
- package/dist/devices/batteryStorage.d.ts +48 -0
- package/dist/devices/batteryStorage.d.ts.map +1 -0
- package/dist/devices/batteryStorage.js +75 -0
- package/dist/devices/batteryStorage.js.map +1 -0
- package/dist/devices/castingVideoPlayer.d.ts +79 -0
- package/dist/devices/castingVideoPlayer.d.ts.map +1 -0
- package/dist/devices/castingVideoPlayer.js +101 -0
- package/dist/devices/castingVideoPlayer.js.map +1 -0
- package/dist/devices/cooktop.d.ts +61 -0
- package/dist/devices/cooktop.d.ts.map +1 -0
- package/dist/devices/cooktop.js +77 -0
- package/dist/devices/cooktop.js.map +1 -0
- package/dist/devices/dishwasher.d.ts +71 -0
- package/dist/devices/dishwasher.d.ts.map +1 -0
- package/dist/devices/dishwasher.js +130 -0
- package/dist/devices/dishwasher.js.map +1 -0
- package/dist/devices/evse.d.ts +76 -0
- package/dist/devices/evse.d.ts.map +1 -0
- package/dist/devices/evse.js +156 -0
- package/dist/devices/evse.js.map +1 -0
- package/dist/devices/export.d.ts +19 -0
- package/dist/devices/export.d.ts.map +1 -0
- package/dist/devices/export.js +23 -0
- package/dist/devices/export.js.map +1 -0
- package/dist/devices/extractorHood.d.ts +46 -0
- package/dist/devices/extractorHood.d.ts.map +1 -0
- package/dist/devices/extractorHood.js +78 -0
- package/dist/devices/extractorHood.js.map +1 -0
- package/dist/devices/heatPump.d.ts +47 -0
- package/dist/devices/heatPump.d.ts.map +1 -0
- package/dist/devices/heatPump.js +84 -0
- package/dist/devices/heatPump.js.map +1 -0
- package/dist/devices/laundryDryer.d.ts +67 -0
- package/dist/devices/laundryDryer.d.ts.map +1 -0
- package/dist/devices/laundryDryer.js +106 -0
- package/dist/devices/laundryDryer.js.map +1 -0
- package/dist/devices/laundryWasher.d.ts +81 -0
- package/dist/devices/laundryWasher.d.ts.map +1 -0
- package/dist/devices/laundryWasher.js +147 -0
- package/dist/devices/laundryWasher.js.map +1 -0
- package/dist/devices/microwaveOven.d.ts +168 -0
- package/dist/devices/microwaveOven.d.ts.map +1 -0
- package/dist/devices/microwaveOven.js +179 -0
- package/dist/devices/microwaveOven.js.map +1 -0
- package/dist/devices/oven.d.ts +105 -0
- package/dist/devices/oven.d.ts.map +1 -0
- package/dist/devices/oven.js +190 -0
- package/dist/devices/oven.js.map +1 -0
- package/dist/devices/refrigerator.d.ts +118 -0
- package/dist/devices/refrigerator.d.ts.map +1 -0
- package/dist/devices/refrigerator.js +186 -0
- package/dist/devices/refrigerator.js.map +1 -0
- package/dist/devices/roboticVacuumCleaner.d.ts +112 -0
- package/dist/devices/roboticVacuumCleaner.d.ts.map +1 -0
- package/dist/devices/roboticVacuumCleaner.js +268 -0
- package/dist/devices/roboticVacuumCleaner.js.map +1 -0
- package/dist/devices/solarPower.d.ts +40 -0
- package/dist/devices/solarPower.d.ts.map +1 -0
- package/dist/devices/solarPower.js +59 -0
- package/dist/devices/solarPower.js.map +1 -0
- package/dist/devices/speaker.d.ts +87 -0
- package/dist/devices/speaker.d.ts.map +1 -0
- package/dist/devices/speaker.js +120 -0
- package/dist/devices/speaker.js.map +1 -0
- package/dist/devices/temperatureControl.d.ts +166 -0
- package/dist/devices/temperatureControl.d.ts.map +1 -0
- package/dist/devices/temperatureControl.js +78 -0
- package/dist/devices/temperatureControl.js.map +1 -0
- package/dist/devices/waterHeater.d.ts +111 -0
- package/dist/devices/waterHeater.d.ts.map +1 -0
- package/dist/devices/waterHeater.js +166 -0
- package/dist/devices/waterHeater.js.map +1 -0
- package/dist/dgram/export.d.ts +2 -0
- package/dist/dgram/export.d.ts.map +1 -0
- package/dist/dgram/export.js +2 -0
- package/dist/dgram/export.js.map +1 -0
- package/dist/export.d.ts +32 -0
- package/dist/export.d.ts.map +1 -0
- package/dist/export.js +39 -0
- package/dist/export.js.map +1 -0
- package/dist/frontend.d.ts +248 -0
- package/dist/frontend.d.ts.map +1 -0
- package/dist/frontend.js +2605 -0
- package/dist/frontend.js.map +1 -0
- package/dist/helpers.d.ts +48 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +161 -0
- package/dist/helpers.js.map +1 -0
- package/dist/jestutils/export.d.ts +2 -0
- package/dist/jestutils/export.d.ts.map +1 -0
- package/dist/jestutils/export.js +2 -0
- package/dist/jestutils/export.js.map +1 -0
- package/dist/jestutils/jestHelpers.d.ts +349 -0
- package/dist/jestutils/jestHelpers.d.ts.map +1 -0
- package/dist/jestutils/jestHelpers.js +980 -0
- package/dist/jestutils/jestHelpers.js.map +1 -0
- package/dist/matter/behaviors.d.ts +2 -0
- package/dist/matter/behaviors.d.ts.map +1 -0
- package/dist/matter/behaviors.js +3 -0
- package/dist/matter/behaviors.js.map +1 -0
- package/dist/matter/clusters.d.ts +2 -0
- package/dist/matter/clusters.d.ts.map +1 -0
- package/dist/matter/clusters.js +3 -0
- package/dist/matter/clusters.js.map +1 -0
- package/dist/matter/devices.d.ts +2 -0
- package/dist/matter/devices.d.ts.map +1 -0
- package/dist/matter/devices.js +3 -0
- package/dist/matter/devices.js.map +1 -0
- package/dist/matter/endpoints.d.ts +2 -0
- package/dist/matter/endpoints.d.ts.map +1 -0
- package/dist/matter/endpoints.js +3 -0
- package/dist/matter/endpoints.js.map +1 -0
- package/dist/matter/export.d.ts +4 -0
- package/dist/matter/export.d.ts.map +1 -0
- package/dist/matter/export.js +5 -0
- package/dist/matter/export.js.map +1 -0
- package/dist/matter/types.d.ts +2 -0
- package/dist/matter/types.d.ts.map +1 -0
- package/dist/matter/types.js +3 -0
- package/dist/matter/types.js.map +1 -0
- package/dist/matterNode.d.ts +341 -0
- package/dist/matterNode.d.ts.map +1 -0
- package/dist/matterNode.js +1329 -0
- package/dist/matterNode.js.map +1 -0
- package/dist/matterbridge.d.ts +544 -0
- package/dist/matterbridge.d.ts.map +1 -0
- package/dist/matterbridge.js +2880 -0
- package/dist/matterbridge.js.map +1 -0
- package/dist/matterbridgeAccessoryPlatform.d.ts +49 -0
- package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -0
- package/dist/matterbridgeAccessoryPlatform.js +80 -0
- package/dist/matterbridgeAccessoryPlatform.js.map +1 -0
- package/dist/matterbridgeBehaviors.d.ts +2428 -0
- package/dist/matterbridgeBehaviors.d.ts.map +1 -0
- package/dist/matterbridgeBehaviors.js +620 -0
- package/dist/matterbridgeBehaviors.js.map +1 -0
- package/dist/matterbridgeDeviceTypes.d.ts +744 -0
- package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
- package/dist/matterbridgeDeviceTypes.js +1312 -0
- package/dist/matterbridgeDeviceTypes.js.map +1 -0
- package/dist/matterbridgeDynamicPlatform.d.ts +49 -0
- package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -0
- package/dist/matterbridgeDynamicPlatform.js +80 -0
- package/dist/matterbridgeDynamicPlatform.js.map +1 -0
- package/dist/matterbridgeEndpoint.d.ts +1548 -0
- package/dist/matterbridgeEndpoint.d.ts.map +1 -0
- package/dist/matterbridgeEndpoint.js +2883 -0
- package/dist/matterbridgeEndpoint.js.map +1 -0
- package/dist/matterbridgeEndpointHelpers.d.ts +1855 -0
- package/dist/matterbridgeEndpointHelpers.d.ts.map +1 -0
- package/dist/matterbridgeEndpointHelpers.js +1270 -0
- package/dist/matterbridgeEndpointHelpers.js.map +1 -0
- package/dist/matterbridgeEndpointTypes.d.ts +172 -0
- package/dist/matterbridgeEndpointTypes.d.ts.map +1 -0
- package/dist/matterbridgeEndpointTypes.js +28 -0
- package/dist/matterbridgeEndpointTypes.js.map +1 -0
- package/dist/matterbridgePlatform.d.ts +520 -0
- package/dist/matterbridgePlatform.d.ts.map +1 -0
- package/dist/matterbridgePlatform.js +921 -0
- package/dist/matterbridgePlatform.js.map +1 -0
- package/dist/mb_coap.d.ts +24 -0
- package/dist/mb_coap.d.ts.map +1 -0
- package/dist/mb_coap.js +89 -0
- package/dist/mb_coap.js.map +1 -0
- package/dist/mb_health.d.ts +77 -0
- package/dist/mb_health.d.ts.map +1 -0
- package/dist/mb_health.js +147 -0
- package/dist/mb_health.js.map +1 -0
- package/dist/mb_mdns.d.ts +24 -0
- package/dist/mb_mdns.d.ts.map +1 -0
- package/dist/mb_mdns.js +285 -0
- package/dist/mb_mdns.js.map +1 -0
- package/dist/pluginManager.d.ts +388 -0
- package/dist/pluginManager.d.ts.map +1 -0
- package/dist/pluginManager.js +1574 -0
- package/dist/pluginManager.js.map +1 -0
- package/dist/spawn.d.ts +33 -0
- package/dist/spawn.d.ts.map +1 -0
- package/dist/spawn.js +165 -0
- package/dist/spawn.js.map +1 -0
- package/dist/utils/export.d.ts +2 -0
- package/dist/utils/export.d.ts.map +1 -0
- package/dist/utils/export.js +2 -0
- package/dist/utils/export.js.map +1 -0
- package/dist/workers/brand.d.ts +25 -0
- package/dist/workers/brand.d.ts.map +1 -0
- package/dist/workers/brand.extend.d.ts +10 -0
- package/dist/workers/brand.extend.d.ts.map +1 -0
- package/dist/workers/brand.extend.js +15 -0
- package/dist/workers/brand.extend.js.map +1 -0
- package/dist/workers/brand.invalid.d.ts +9 -0
- package/dist/workers/brand.invalid.d.ts.map +1 -0
- package/dist/workers/brand.invalid.js +19 -0
- package/dist/workers/brand.invalid.js.map +1 -0
- package/dist/workers/brand.js +67 -0
- package/dist/workers/brand.js.map +1 -0
- package/dist/workers/clusterTypes.d.ts +47 -0
- package/dist/workers/clusterTypes.d.ts.map +1 -0
- package/dist/workers/clusterTypes.js +57 -0
- package/dist/workers/clusterTypes.js.map +1 -0
- package/dist/workers/frontendWorker.d.ts +2 -0
- package/dist/workers/frontendWorker.d.ts.map +1 -0
- package/dist/workers/frontendWorker.js +90 -0
- package/dist/workers/frontendWorker.js.map +1 -0
- package/dist/workers/helloWorld.d.ts +2 -0
- package/dist/workers/helloWorld.d.ts.map +1 -0
- package/dist/workers/helloWorld.js +135 -0
- package/dist/workers/helloWorld.js.map +1 -0
- package/dist/workers/matterWorker.d.ts +2 -0
- package/dist/workers/matterWorker.d.ts.map +1 -0
- package/dist/workers/matterWorker.js +104 -0
- package/dist/workers/matterWorker.js.map +1 -0
- package/dist/workers/matterbridgeWorker.d.ts +2 -0
- package/dist/workers/matterbridgeWorker.d.ts.map +1 -0
- package/dist/workers/matterbridgeWorker.js +75 -0
- package/dist/workers/matterbridgeWorker.js.map +1 -0
- package/dist/workers/messageLab.d.ts +134 -0
- package/dist/workers/messageLab.d.ts.map +1 -0
- package/dist/workers/messageLab.js +129 -0
- package/dist/workers/messageLab.js.map +1 -0
- package/dist/workers/testWorker.d.ts +2 -0
- package/dist/workers/testWorker.d.ts.map +1 -0
- package/dist/workers/testWorker.js +45 -0
- package/dist/workers/testWorker.js.map +1 -0
- package/dist/workers/usage.d.ts +19 -0
- package/dist/workers/usage.d.ts.map +1 -0
- package/dist/workers/usage.js +140 -0
- package/dist/workers/usage.js.map +1 -0
- package/dist/workers/workerManager.d.ts +115 -0
- package/dist/workers/workerManager.d.ts.map +1 -0
- package/dist/workers/workerManager.js +464 -0
- package/dist/workers/workerManager.js.map +1 -0
- package/dist/workers/workerServer.d.ts +126 -0
- package/dist/workers/workerServer.d.ts.map +1 -0
- package/dist/workers/workerServer.js +340 -0
- package/dist/workers/workerServer.js.map +1 -0
- package/dist/workers/workerTypes.d.ts +23 -0
- package/dist/workers/workerTypes.d.ts.map +1 -0
- package/dist/workers/workerTypes.js +3 -0
- package/dist/workers/workerTypes.js.map +1 -0
- package/package.json +120 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sets the cluster attributes to the given values.
|
|
3
|
+
*
|
|
4
|
+
* @template {keyof ClusterTypes} T
|
|
5
|
+
* @param { T } _cluster - the cluster name
|
|
6
|
+
* @param { AtLeastOne<ClusterTypes[T]> } _attributes - the attributes to set
|
|
7
|
+
* @returns { void }
|
|
8
|
+
*/
|
|
9
|
+
export function setCluster(_cluster, _attributes) {
|
|
10
|
+
// Implementation would go here
|
|
11
|
+
}
|
|
12
|
+
// @ts-expect-error Testing various calls
|
|
13
|
+
setCluster('OnOff', { onOff: true, currentLevel: 0 });
|
|
14
|
+
// @ts-expect-error Testing various calls
|
|
15
|
+
setCluster('LevelControl', { currentLevel: 128, targetLeve: 200 });
|
|
16
|
+
setCluster('ColorControl', { currentX: 25000 });
|
|
17
|
+
const c = 'ColorControl';
|
|
18
|
+
const a = 'currentY';
|
|
19
|
+
setCluster(c, { [a]: 25000 });
|
|
20
|
+
const o = { currrrentX: 12, currrrentY: 34000 };
|
|
21
|
+
// @ts-expect-error Testing various calls
|
|
22
|
+
setCluster('ColorControl', o);
|
|
23
|
+
// @ts-expect-error Testing various calls
|
|
24
|
+
setCluster('ColorControl', { currentX: 30000, currentY: 30000, mired: 150 });
|
|
25
|
+
// @ts-expect-error Testing various calls
|
|
26
|
+
setCluster('ColorControl', {});
|
|
27
|
+
/**
|
|
28
|
+
* Sets the attribute of a cluster to a given value.
|
|
29
|
+
*
|
|
30
|
+
* @template {keyof ClusterTypes} T
|
|
31
|
+
* @param { T } _cluster - the cluster name
|
|
32
|
+
* @param { keyof ClusterTypes[T] } _attribute - the attribute name
|
|
33
|
+
* @param { ClusterTypes[T][typeof _attribute] } _value - the value to set
|
|
34
|
+
* @returns { void }
|
|
35
|
+
*/
|
|
36
|
+
export function setAttribute(_cluster, _attribute, _value) {
|
|
37
|
+
// Implementation would go here
|
|
38
|
+
}
|
|
39
|
+
setAttribute('OnOff', 'onOff', true);
|
|
40
|
+
setAttribute('LevelControl', 'currentLevel', 128);
|
|
41
|
+
setAttribute('ColorControl', 'currentY', 30000);
|
|
42
|
+
/**
|
|
43
|
+
* Subscribes to changes of a cluster attribute.
|
|
44
|
+
*
|
|
45
|
+
* @template {keyof ClusterTypes} T
|
|
46
|
+
* @param { T } _cluster - the cluster name
|
|
47
|
+
* @param { keyof ClusterTypes[T] } _attribute - the attribute name
|
|
48
|
+
* @param { (newValue: ClusterTypes[T][typeof _attribute], oldValue: ClusterTypes[T][typeof _attribute]) => void } _callback - the callback to invoke on change
|
|
49
|
+
* @returns { void }
|
|
50
|
+
*/
|
|
51
|
+
export function subscribeAttribute(_cluster, _attribute, _callback) {
|
|
52
|
+
// Implementation would go here
|
|
53
|
+
}
|
|
54
|
+
subscribeAttribute('OnOff', 'onOff', (_newValue, _oldValue) => {
|
|
55
|
+
// Handle OnOff changes
|
|
56
|
+
});
|
|
57
|
+
//# sourceMappingURL=clusterTypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clusterTypes.js","sourceRoot":"","sources":["../../src/workers/clusterTypes.ts"],"names":[],"mappings":"AAUA;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAA+B,QAAW,EAAE,WAAwC;IAC5G,+BAA+B;AACjC,CAAC;AAED,yCAAyC;AACzC,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,yCAAyC;AACzC,UAAU,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;AACnE,UAAU,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;AAChD,MAAM,CAAC,GAAG,cAAc,CAAC;AACzB,MAAM,CAAC,GAAG,UAAU,CAAC;AACrB,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9B,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AAChD,yCAAyC;AACzC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;AAC9B,yCAAyC;AACzC,UAAU,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,yCAAyC;AACzC,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAE/B;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAA+B,QAAW,EAAE,UAAiC,EAAE,MAA0C;IACnJ,+BAA+B;AACjC,CAAC;AAED,YAAY,CAAU,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AAC9C,YAAY,CAAiB,cAAc,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;AAClE,YAAY,CAAiB,cAAc,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AAEhE;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAW,EACX,UAAiC,EACjC,SAA+G;IAE/G,+BAA+B;AACjC,CAAC;AAED,kBAAkB,CAAU,OAAO,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE;IACrE,uBAAuB;AACzB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontendWorker.d.ts","sourceRoot":"","sources":["../../src/workers/frontendWorker.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
// frontendWorker.ts
|
|
2
|
+
// Worker entry for frontend logic
|
|
3
|
+
import { parentPort, workerData } from 'node:worker_threads';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { NodeStorageManager } from 'node-persist-manager';
|
|
6
|
+
import { debugStringify } from 'node-ansi-logger';
|
|
7
|
+
import { NODE_STORAGE_DIR } from '@matterbridge/types';
|
|
8
|
+
import { Frontend } from '../frontend.js';
|
|
9
|
+
import { WorkerServer } from './workerServer.js';
|
|
10
|
+
let frontend;
|
|
11
|
+
const server = new WorkerServer('FrontendWorker', parentPort, workerData);
|
|
12
|
+
server.on('control_message', async (msg) => {
|
|
13
|
+
// Handle control messages from manager if needed
|
|
14
|
+
if (msg.type !== 'ping')
|
|
15
|
+
server.log.debug(`${server.name} received control message: ${debugStringify(msg)}`);
|
|
16
|
+
switch (msg.type) {
|
|
17
|
+
case 'init':
|
|
18
|
+
// Initialization logic if needed
|
|
19
|
+
server.matterbridge.nodeStorage = new NodeStorageManager({
|
|
20
|
+
dir: path.join(server.matterbridge.matterbridgeDirectory, NODE_STORAGE_DIR),
|
|
21
|
+
writeQueue: false,
|
|
22
|
+
expiredInterval: undefined,
|
|
23
|
+
logging: false,
|
|
24
|
+
});
|
|
25
|
+
server.matterbridge.nodeContext = await server.matterbridge.nodeStorage.createStorage('matterbridge');
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
27
|
+
server.matterbridge.getLogLevel = async () => (await server.fetch({ id: server.getUniqueId(), type: 'get_log_level', src: 'frontend', dst: 'matterbridge' })).result.logLevel;
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
29
|
+
server.matterbridge.setLogLevel = async (logLevel) => server.broadcast({ id: server.getUniqueId(), type: 'set_log_level', src: 'frontend', dst: 'matterbridge', params: { logLevel } });
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
31
|
+
server.matterbridge.plugins = {
|
|
32
|
+
array: () => [],
|
|
33
|
+
has: () => false,
|
|
34
|
+
get: () => undefined,
|
|
35
|
+
add: () => false,
|
|
36
|
+
load: () => false,
|
|
37
|
+
start: () => false,
|
|
38
|
+
shutdown: () => false,
|
|
39
|
+
enable: () => false,
|
|
40
|
+
disable: () => false,
|
|
41
|
+
remove: () => false,
|
|
42
|
+
};
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
44
|
+
server.matterbridge.devices = { array: () => [], has: () => false };
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
46
|
+
server.matterbridge.log = { debug: () => { }, info: () => { }, notice: () => { }, warn: () => { }, error: () => { }, fatal: () => { } };
|
|
47
|
+
frontend = new Frontend(server.matterbridge);
|
|
48
|
+
server.parentPost({ ...msg, success: true });
|
|
49
|
+
break;
|
|
50
|
+
case 'ping':
|
|
51
|
+
// Ping handled in WorkerServer
|
|
52
|
+
break;
|
|
53
|
+
case 'exit':
|
|
54
|
+
// Cleanup logic if needed
|
|
55
|
+
await frontend.stop();
|
|
56
|
+
frontend.destroy();
|
|
57
|
+
server.parentPost({ ...msg, success: true });
|
|
58
|
+
server.exit(0);
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
server.on('manager_message', async (msg) => {
|
|
63
|
+
// Handle direct messages from manager if needed
|
|
64
|
+
if (server.isWorkerRequest(msg)) {
|
|
65
|
+
server.log.debug(`${server.name} received manager message: ${debugStringify(msg)}`);
|
|
66
|
+
switch (msg.type) {
|
|
67
|
+
case 'frontend_start':
|
|
68
|
+
await frontend.start(msg.params.port);
|
|
69
|
+
server.broadcast({ type: 'frontend_start', src: 'frontend', dst: 'all', id: msg.id, result: { success: true } });
|
|
70
|
+
break;
|
|
71
|
+
case 'frontend_stop':
|
|
72
|
+
await frontend.stop();
|
|
73
|
+
server.broadcast({ type: 'frontend_stop', src: 'frontend', dst: 'all', id: msg.id, result: { success: true } });
|
|
74
|
+
break;
|
|
75
|
+
default:
|
|
76
|
+
// Handle unknown message types
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
server.on('broadcast_message', (msg) => {
|
|
82
|
+
// Handle broadcast messages from other workers if needed
|
|
83
|
+
server.log.debug(`${server.name} received broadcast message: ${debugStringify(msg)}`);
|
|
84
|
+
switch (msg.type) {
|
|
85
|
+
default:
|
|
86
|
+
// Handle unknown message types
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
//# sourceMappingURL=frontendWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontendWorker.js","sourceRoot":"","sources":["../../src/workers/frontendWorker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helloWorld.d.ts","sourceRoot":"","sources":["../../src/workers/helloWorld.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/* eslint-disable no-console */
|
|
2
|
+
import { threadId, threadName, isMainThread, Worker, workerData, parentPort } from 'node:worker_threads';
|
|
3
|
+
import { pathToFileURL } from 'node:url';
|
|
4
|
+
import { resolve } from 'node:path';
|
|
5
|
+
import { inspect } from 'node:util';
|
|
6
|
+
import { exec } from 'node:child_process';
|
|
7
|
+
// import { Tracker } from '../utils/tracker.js';
|
|
8
|
+
/**
|
|
9
|
+
* Typed helper to create an ESM Worker.
|
|
10
|
+
*
|
|
11
|
+
* This function uses pathToFileURL to convert the relative path to a file URL,
|
|
12
|
+
* which is necessary for ESM modules. It also sets the worker type to 'module'.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} name - name of the worker
|
|
15
|
+
* @param {string} relativePath - path to the worker file code: it must be an ESM module in javascript
|
|
16
|
+
* @param {Record<string, boolean | number | string | object>} [workerData] - optional data to pass to the worker
|
|
17
|
+
* @param {string[]} [argv] - optional command line arguments to pass to the worker. If not provided, inherits from the main thread.
|
|
18
|
+
* @param {NodeJS.ProcessEnv} [env] - optional environment variables to pass to the worker. If not provided, inherits from the main thread.
|
|
19
|
+
* @param {string[]} [execArgv] - optional execArgv to pass to the worker. If not provided no execArgv are passed.
|
|
20
|
+
* @returns {Worker} - the created Worker instance
|
|
21
|
+
*/
|
|
22
|
+
function createESMWorker(name, relativePath, workerData, argv, env, execArgv) {
|
|
23
|
+
const fileURL = pathToFileURL(resolve(relativePath));
|
|
24
|
+
const options = {
|
|
25
|
+
workerData,
|
|
26
|
+
type: 'module',
|
|
27
|
+
name,
|
|
28
|
+
argv: argv ?? process.argv.slice(2), // Pass command line arguments to worker
|
|
29
|
+
env: env ?? process.env, // Inherit environment variables
|
|
30
|
+
execArgv, // execArgv for node like --inspect
|
|
31
|
+
};
|
|
32
|
+
return new Worker(fileURL, options);
|
|
33
|
+
}
|
|
34
|
+
if (!isMainThread) {
|
|
35
|
+
console.log('Hello world!');
|
|
36
|
+
console.log(`${isMainThread ? 'Main thread' : 'Worker thread'}: ${threadName}:${threadId} Pid: ${process.pid}`);
|
|
37
|
+
console.log(`ParentPort: ${parentPort ? 'active' : 'not active'}`);
|
|
38
|
+
console.log(`WorkerData: ${inspect(workerData, true, 10, true)}`);
|
|
39
|
+
console.log(`Argv: ${process.argv.slice(2).join(' ')}`);
|
|
40
|
+
console.log(`Env: ${inspect(process.env, true, 10, true)}`);
|
|
41
|
+
exec(workerData.command, (error, stdout, stderr) => {
|
|
42
|
+
if (error) {
|
|
43
|
+
console.error(`Error executing npm list: ${error.message}`);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (stderr) {
|
|
47
|
+
console.error(`npm list stderr:\n${stderr}`);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
console.log(`npm list output:\n${stdout}`);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
if (isMainThread) {
|
|
54
|
+
createESMWorker('HelloWorld', './dist/workers/helloWorld.js', { command: 'npm list --global --depth=0' });
|
|
55
|
+
}
|
|
56
|
+
/*
|
|
57
|
+
if (isMainThread) {
|
|
58
|
+
createESMWorker('HelloWorld', './dist/workers/helloWorld.js', { command: 'npm_install' }, ['--npm_install']);
|
|
59
|
+
createESMWorker('HelloWorld', './dist/workers/helloWorld.js', { command: 'npm_list' }, ['--npm_list']);
|
|
60
|
+
const worker = createESMWorker('HelloWorld', './dist/workers/helloWorld.js', { command: 'tracker' }, ['--tracker', '--debug'], { WORKER_ENV: 'production' }, ['--inspect']);
|
|
61
|
+
const savedName = worker.threadName;
|
|
62
|
+
const savedId = worker.threadId;
|
|
63
|
+
|
|
64
|
+
worker.on('online', () => {
|
|
65
|
+
console.log(`Worker thread ${worker.threadName}:${worker.threadId} is online.`);
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
worker.on('exit', (code) => {
|
|
69
|
+
console.log(`Worker thread ${savedName}:${savedId} exited with code ${code}.`);
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
worker.on('error', (error) => {
|
|
73
|
+
console.error(`Worker thread ${worker.threadName}:${worker.threadId} encountered an error: ${error.message}`);
|
|
74
|
+
});
|
|
75
|
+
} else {
|
|
76
|
+
if (process.argv.includes('--npm_install')) {
|
|
77
|
+
console.log('Installing npm packages:');
|
|
78
|
+
import('node:child_process')
|
|
79
|
+
.then(({ exec }) => {
|
|
80
|
+
exec('npm install --global --verbose matterbridge-webhooks', (error, stdout, stderr) => {
|
|
81
|
+
if (error) {
|
|
82
|
+
console.error(`Error executing npm install: ${error.message}`);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (stderr) {
|
|
86
|
+
console.error(`npm install stderr:\n${stderr}`);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
console.log(`npm install output:\n${stdout}`);
|
|
90
|
+
});
|
|
91
|
+
return;
|
|
92
|
+
})
|
|
93
|
+
.catch((error) => {
|
|
94
|
+
console.error(`Error importing child_process: ${error.message}`);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
if (process.argv.includes('--npm_list')) {
|
|
98
|
+
console.log('Listing npm packages:');
|
|
99
|
+
import('node:child_process')
|
|
100
|
+
.then(({ exec }) => {
|
|
101
|
+
exec('npm list --global --depth=0', (error, stdout, stderr) => {
|
|
102
|
+
if (error) {
|
|
103
|
+
console.error(`Error executing npm list: ${error.message}`);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
if (stderr) {
|
|
107
|
+
console.error(`npm list stderr: ${stderr}`);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
console.log(`npm list output:\n${stdout}`);
|
|
111
|
+
});
|
|
112
|
+
return;
|
|
113
|
+
})
|
|
114
|
+
.catch((error) => {
|
|
115
|
+
console.error(`Error importing child_process: ${error.message}`);
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
if (process.argv.includes('--tracker')) {
|
|
119
|
+
const tracker = new Tracker('Hello world!');
|
|
120
|
+
tracker.start(5000);
|
|
121
|
+
|
|
122
|
+
console.log('Hello world!');
|
|
123
|
+
console.log(`Thread: ${threadName}:${threadId}\nPid: ${process.pid}\n${isMainThread ? 'Main thread' : 'Worker thread'}`);
|
|
124
|
+
console.log(`ParentPort: ${parentPort ? 'active' : 'not active'}`);
|
|
125
|
+
console.log(`WorkerData: ${inspect(workerData, true, 10, true)}`);
|
|
126
|
+
console.log(`Argv: ${process.argv.slice(2).join(' ')}`);
|
|
127
|
+
console.log(`Env: ${inspect(process.env, true, 10, true)}`);
|
|
128
|
+
|
|
129
|
+
setTimeout(() => {
|
|
130
|
+
tracker.stop();
|
|
131
|
+
}, 31000);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
*/
|
|
135
|
+
//# sourceMappingURL=helloWorld.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helloWorld.js","sourceRoot":"","sources":["../../src/workers/helloWorld.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAiB,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACxH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,iDAAiD;AAEjD;;;;;;;;;;;;;GAaG;AACH,SAAS,eAAe,CACtB,IAAY,EACZ,YAAoB,EACpB,UAA+D,EAC/D,IAAe,EACf,GAAuB,EACvB,QAAmB;IAEnB,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAqC;QAChD,UAAU;QACV,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,IAAI,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,wCAAwC;QAC7E,GAAG,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,gCAAgC;QACzD,QAAQ,EAAE,mCAAmC;KAC9C,CAAC;IACF,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,IAAI,CAAC,YAAY,EAAE,CAAC;IAClB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,KAAK,UAAU,IAAI,QAAQ,SAAS,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChH,OAAO,CAAC,GAAG,CAAC,eAAe,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,QAAQ,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;QACjD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC;AACD,IAAI,YAAY,EAAE,CAAC;IACjB,eAAe,CAAC,YAAY,EAAE,8BAA8B,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;AAC5G,CAAC;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterWorker.d.ts","sourceRoot":"","sources":["../../src/workers/matterWorker.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// pluginWorker.ts
|
|
2
|
+
// Worker entry for plugin logic
|
|
3
|
+
import { parentPort, workerData } from 'node:worker_threads';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { debugStringify } from 'node-ansi-logger';
|
|
6
|
+
import { NodeStorageManager } from 'node-persist-manager';
|
|
7
|
+
import { hasParameter } from '@matterbridge/utils';
|
|
8
|
+
import { NODE_STORAGE_DIR } from '@matterbridge/types';
|
|
9
|
+
import { MatterNode } from '../matterNode.js';
|
|
10
|
+
import { PluginManager } from '../pluginManager.js';
|
|
11
|
+
import { WorkerServer } from './workerServer.js';
|
|
12
|
+
let matter;
|
|
13
|
+
const server = new WorkerServer('MatterWorker', parentPort, workerData);
|
|
14
|
+
server.on('control_message', async (msg) => {
|
|
15
|
+
// Handle control messages from manager if needed
|
|
16
|
+
if (msg.type !== 'ping')
|
|
17
|
+
server.log.debug(`${server.name} received control message: ${debugStringify(msg)}`);
|
|
18
|
+
switch (msg.type) {
|
|
19
|
+
case 'init':
|
|
20
|
+
// Initialization logic if needed
|
|
21
|
+
matter = new MatterNode(server.matterbridge);
|
|
22
|
+
await matter.create();
|
|
23
|
+
await matter.start();
|
|
24
|
+
if (hasParameter('addplugins')) {
|
|
25
|
+
server.matterbridge.nodeStorage = new NodeStorageManager({
|
|
26
|
+
dir: path.join(server.matterbridge.matterbridgeDirectory, NODE_STORAGE_DIR),
|
|
27
|
+
writeQueue: false,
|
|
28
|
+
expiredInterval: undefined,
|
|
29
|
+
logging: false,
|
|
30
|
+
});
|
|
31
|
+
server.matterbridge.nodeContext = await server.matterbridge.nodeStorage.createStorage('matterbridge');
|
|
32
|
+
// @ts-expect-error Assigning log to matterbridge for worker
|
|
33
|
+
server.matterbridge.log = server.log;
|
|
34
|
+
server.matterbridge.addBridgedEndpoint = async (pluginName, device) => {
|
|
35
|
+
return matter.addBridgedEndpoint(pluginName, device);
|
|
36
|
+
};
|
|
37
|
+
server.matterbridge.removeBridgedEndpoint = async (pluginName, device) => {
|
|
38
|
+
return matter.removeBridgedEndpoint(pluginName, device);
|
|
39
|
+
};
|
|
40
|
+
server.matterbridge.removeAllBridgedEndpoints = async (pluginName) => {
|
|
41
|
+
return matter.removeAllBridgedEndpoints(pluginName);
|
|
42
|
+
};
|
|
43
|
+
const plugins = new PluginManager(server.matterbridge);
|
|
44
|
+
await plugins.add('../matterbridge-test');
|
|
45
|
+
plugins.destroy();
|
|
46
|
+
}
|
|
47
|
+
server.parentPost({ ...msg, success: true });
|
|
48
|
+
break;
|
|
49
|
+
case 'ping':
|
|
50
|
+
// Ping handled in WorkerServer
|
|
51
|
+
break;
|
|
52
|
+
case 'exit':
|
|
53
|
+
// Cleanup logic if needed
|
|
54
|
+
await matter.stop();
|
|
55
|
+
await matter.destroy();
|
|
56
|
+
server.parentPost({ ...msg, success: true });
|
|
57
|
+
server.exit(0);
|
|
58
|
+
break;
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
server.on('manager_message', async (msg) => {
|
|
62
|
+
// Handle direct messages from manager if needed
|
|
63
|
+
if (server.isWorkerRequest(msg)) {
|
|
64
|
+
server.log.debug(`${server.name} received manager message: ${debugStringify(msg)}`);
|
|
65
|
+
switch (msg.type) {
|
|
66
|
+
case 'matter_start':
|
|
67
|
+
{
|
|
68
|
+
server.matterbridge.nodeStorage = new NodeStorageManager({
|
|
69
|
+
dir: path.join(server.matterbridge.matterbridgeDirectory, NODE_STORAGE_DIR),
|
|
70
|
+
writeQueue: false,
|
|
71
|
+
expiredInterval: undefined,
|
|
72
|
+
logging: false,
|
|
73
|
+
});
|
|
74
|
+
server.matterbridge.nodeContext = await server.matterbridge.nodeStorage.createStorage('matterbridge');
|
|
75
|
+
const plugins = new PluginManager(server.matterbridge);
|
|
76
|
+
await plugins.loadFromStorage();
|
|
77
|
+
for (const plugin of plugins.array().filter((p) => p.enabled)) {
|
|
78
|
+
await plugins.load(plugin, true, 'MatterWorker starting matter');
|
|
79
|
+
}
|
|
80
|
+
plugins.destroy();
|
|
81
|
+
}
|
|
82
|
+
await matter.startServerNode();
|
|
83
|
+
server.broadcast({ type: 'matter_start', src: 'matter', dst: 'all', id: msg.id, result: { storeId: matter.serverNode?.id || '', success: true } });
|
|
84
|
+
break;
|
|
85
|
+
case 'matter_stop':
|
|
86
|
+
await matter.stopServerNode();
|
|
87
|
+
server.broadcast({ type: 'matter_stop', src: 'matter', dst: 'all', id: msg.id, result: { storeId: matter.serverNode?.id || '', success: true } });
|
|
88
|
+
break;
|
|
89
|
+
default:
|
|
90
|
+
// Handle unknown message types
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
server.on('broadcast_message', (msg) => {
|
|
96
|
+
// Handle broadcast messages from other workers if needed
|
|
97
|
+
server.log.debug(`${server.name} received broadcast message: ${debugStringify(msg)}`);
|
|
98
|
+
switch (msg.type) {
|
|
99
|
+
default:
|
|
100
|
+
// Handle unknown message types
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=matterWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterWorker.js","sourceRoot":"","sources":["../../src/workers/matterWorker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterbridgeWorker.d.ts","sourceRoot":"","sources":["../../src/workers/matterbridgeWorker.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// matterbridgeWorker.ts
|
|
2
|
+
// Worker entry for matterbridge logic
|
|
3
|
+
import { parentPort, workerData } from 'node:worker_threads';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { debugStringify } from 'node-ansi-logger';
|
|
6
|
+
import { NodeStorageManager } from 'node-persist-manager';
|
|
7
|
+
import { NODE_STORAGE_DIR } from '@matterbridge/types';
|
|
8
|
+
import { Matterbridge } from '../matterbridge.js';
|
|
9
|
+
import { WorkerServer } from './workerServer.js';
|
|
10
|
+
let matterbridge;
|
|
11
|
+
const server = new WorkerServer('MatterbridgeWorker', parentPort, workerData);
|
|
12
|
+
process.argv.push('--homedir', './temp');
|
|
13
|
+
process.argv.push('--frontend', '0');
|
|
14
|
+
process.argv.push('--test');
|
|
15
|
+
server.on('control_message', async (msg) => {
|
|
16
|
+
// Handle control messages from manager if needed
|
|
17
|
+
if (msg.type !== 'ping')
|
|
18
|
+
server.log.debug(`${server.name} received control message: ${debugStringify(msg)}`);
|
|
19
|
+
switch (msg.type) {
|
|
20
|
+
case 'init':
|
|
21
|
+
// Initialization logic if needed
|
|
22
|
+
matterbridge = await Matterbridge.loadInstance(false);
|
|
23
|
+
matterbridge.nodeStorage = new NodeStorageManager({
|
|
24
|
+
dir: path.join(server.matterbridge.matterbridgeDirectory, NODE_STORAGE_DIR),
|
|
25
|
+
writeQueue: false,
|
|
26
|
+
expiredInterval: undefined,
|
|
27
|
+
logging: false,
|
|
28
|
+
});
|
|
29
|
+
matterbridge.nodeContext = await matterbridge.nodeStorage.createStorage('matterbridge');
|
|
30
|
+
await matterbridge.plugins.loadFromStorage();
|
|
31
|
+
server.parentPost({ ...msg, success: true });
|
|
32
|
+
break;
|
|
33
|
+
case 'ping':
|
|
34
|
+
// Ping handled in WorkerServer
|
|
35
|
+
break;
|
|
36
|
+
case 'exit':
|
|
37
|
+
// Cleanup logic if needed
|
|
38
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
39
|
+
await matterbridge.cleanup('MatterbridgeWorker exiting on request from manager', false, 0);
|
|
40
|
+
server.parentPost({ ...msg, success: true });
|
|
41
|
+
server.exit(0);
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
server.on('manager_message', (msg) => {
|
|
46
|
+
// Handle direct messages from manager if needed
|
|
47
|
+
server.log.debug(`${server.name} received manager message: ${debugStringify(msg)}`);
|
|
48
|
+
switch (msg.type) {
|
|
49
|
+
case 'matterbridge_initialize':
|
|
50
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
51
|
+
matterbridge.initialize();
|
|
52
|
+
break;
|
|
53
|
+
default:
|
|
54
|
+
// Handle unknown message types
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
server.on('broadcast_message', async (msg) => {
|
|
59
|
+
// Handle broadcast messages from other workers if needed
|
|
60
|
+
if (server.isWorkerRequest(msg)) {
|
|
61
|
+
server.log.debug(`${server.name} received broadcast message: ${debugStringify(msg)}`);
|
|
62
|
+
switch (msg.type) {
|
|
63
|
+
case 'get_log_level':
|
|
64
|
+
server.broadcast({ ...msg, result: { logLevel: await matterbridge.getLogLevel() } });
|
|
65
|
+
break;
|
|
66
|
+
case 'set_log_level':
|
|
67
|
+
await matterbridge.setLogLevel(msg.params.logLevel);
|
|
68
|
+
break;
|
|
69
|
+
default:
|
|
70
|
+
// Handle unknown message types
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
//# sourceMappingURL=matterbridgeWorker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterbridgeWorker.js","sourceRoot":"","sources":["../../src/workers/matterbridgeWorker.ts"],"names":[],"mappings":"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"}
|