matterbridge 2.2.0-dev.3 → 2.2.0-dev.5
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/CHANGELOG.md +3 -1
- package/dist/cli.d.ts +28 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +37 -2
- package/dist/cli.js.map +1 -0
- package/dist/cluster/export.d.ts.map +1 -0
- package/dist/cluster/export.js +2 -0
- package/dist/cluster/export.js.map +1 -0
- package/dist/defaultConfigSchema.d.ts.map +1 -0
- package/dist/defaultConfigSchema.js +23 -0
- package/dist/defaultConfigSchema.js.map +1 -0
- package/dist/deviceManager.d.ts +109 -0
- package/dist/deviceManager.d.ts.map +1 -0
- package/dist/deviceManager.js +94 -1
- package/dist/deviceManager.js.map +1 -0
- package/dist/frontend.d.ts +172 -0
- package/dist/frontend.d.ts.map +1 -0
- package/dist/frontend.js +265 -22
- package/dist/frontend.js.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +29 -2
- package/dist/index.js.map +1 -0
- package/dist/logger/export.d.ts.map +1 -0
- package/dist/logger/export.js +1 -0
- package/dist/logger/export.js.map +1 -0
- package/dist/matter/behaviors.d.ts.map +1 -0
- package/dist/matter/behaviors.js +2 -0
- package/dist/matter/behaviors.js.map +1 -0
- package/dist/matter/clusters.d.ts.map +1 -0
- package/dist/matter/clusters.js +2 -0
- package/dist/matter/clusters.js.map +1 -0
- package/dist/matter/devices.d.ts.map +1 -0
- package/dist/matter/devices.js +2 -0
- package/dist/matter/devices.js.map +1 -0
- package/dist/matter/endpoints.d.ts.map +1 -0
- package/dist/matter/endpoints.js +2 -0
- package/dist/matter/endpoints.js.map +1 -0
- package/dist/matter/export.d.ts.map +1 -0
- package/dist/matter/export.js +2 -0
- package/dist/matter/export.js.map +1 -0
- package/dist/matter/types.d.ts.map +1 -0
- package/dist/matter/types.js +3 -1
- package/dist/matter/types.js.map +1 -0
- package/dist/matterbridge.d.ts +410 -0
- package/dist/matterbridge.d.ts.map +1 -0
- package/dist/matterbridge.js +718 -47
- package/dist/matterbridge.js.map +1 -0
- package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -0
- package/dist/matterbridgeAccessoryPlatform.js +33 -0
- package/dist/matterbridgeAccessoryPlatform.js.map +1 -0
- package/dist/matterbridgeBehaviors.d.ts +148 -0
- package/dist/matterbridgeBehaviors.d.ts.map +1 -0
- package/dist/matterbridgeBehaviors.js +32 -1
- package/dist/matterbridgeBehaviors.js.map +1 -0
- package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
- package/dist/matterbridgeDeviceTypes.js +112 -11
- package/dist/matterbridgeDeviceTypes.js.map +1 -0
- package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -0
- package/dist/matterbridgeDynamicPlatform.js +33 -0
- package/dist/matterbridgeDynamicPlatform.js.map +1 -0
- package/dist/matterbridgeEndpoint.d.ts +827 -0
- package/dist/matterbridgeEndpoint.d.ts.map +1 -0
- package/dist/matterbridgeEndpoint.js +690 -6
- package/dist/matterbridgeEndpoint.js.map +1 -0
- package/dist/matterbridgeEndpointHelpers.d.ts +123 -0
- package/dist/matterbridgeEndpointHelpers.d.ts.map +1 -0
- package/dist/matterbridgeEndpointHelpers.js +118 -9
- package/dist/matterbridgeEndpointHelpers.js.map +1 -0
- package/dist/matterbridgePlatform.d.ts +159 -0
- package/dist/matterbridgePlatform.d.ts.map +1 -0
- package/dist/matterbridgePlatform.js +162 -23
- package/dist/matterbridgePlatform.js.map +1 -0
- package/dist/matterbridgeTypes.d.ts.map +1 -0
- package/dist/matterbridgeTypes.js +24 -0
- package/dist/matterbridgeTypes.js.map +1 -0
- package/dist/pluginManager.d.ts +236 -0
- package/dist/pluginManager.d.ts.map +1 -0
- package/dist/pluginManager.js +229 -3
- package/dist/pluginManager.js.map +1 -0
- package/dist/shelly.d.ts.map +1 -0
- package/dist/shelly.js +131 -4
- package/dist/shelly.js.map +1 -0
- package/dist/storage/export.d.ts.map +1 -0
- package/dist/storage/export.js +1 -0
- package/dist/storage/export.js.map +1 -0
- package/dist/update.d.ts.map +1 -0
- package/dist/update.js +45 -0
- package/dist/update.js.map +1 -0
- package/dist/utils/colorUtils.d.ts.map +1 -0
- package/dist/utils/colorUtils.js +205 -2
- package/dist/utils/colorUtils.js.map +1 -0
- package/dist/utils/copyDirectory.d.ts.map +1 -0
- package/dist/utils/copyDirectory.js +37 -1
- package/dist/utils/copyDirectory.js.map +1 -0
- package/dist/utils/createZip.d.ts.map +1 -0
- package/dist/utils/createZip.js +42 -2
- package/dist/utils/createZip.js.map +1 -0
- package/dist/utils/deepCopy.d.ts.map +1 -0
- package/dist/utils/deepCopy.js +40 -0
- package/dist/utils/deepCopy.js.map +1 -0
- package/dist/utils/deepEqual.d.ts.map +1 -0
- package/dist/utils/deepEqual.js +65 -1
- package/dist/utils/deepEqual.js.map +1 -0
- package/dist/utils/export.d.ts.map +1 -0
- package/dist/utils/export.js +1 -0
- package/dist/utils/export.js.map +1 -0
- package/dist/utils/isvalid.d.ts.map +1 -0
- package/dist/utils/isvalid.js +86 -0
- package/dist/utils/isvalid.js.map +1 -0
- package/dist/utils/network.d.ts.map +1 -0
- package/dist/utils/network.js +77 -5
- package/dist/utils/network.js.map +1 -0
- package/dist/utils/parameter.d.ts.map +1 -0
- package/dist/utils/parameter.js +41 -0
- package/dist/utils/parameter.js.map +1 -0
- package/dist/utils/wait.d.ts +43 -0
- package/dist/utils/wait.d.ts.map +1 -0
- package/dist/utils/wait.js +48 -5
- package/dist/utils/wait.js.map +1 -0
- package/frontend/build/asset-manifest.json +3 -3
- package/frontend/build/index.html +1 -1
- package/frontend/build/static/js/{main.a462621b.js → main.f60aae10.js} +8 -8
- package/frontend/build/static/js/main.f60aae10.js.map +1 -0
- package/npm-shrinkwrap.json +44 -44
- package/package.json +2 -2
- package/frontend/build/static/js/main.a462621b.js.map +0 -1
- /package/frontend/build/static/js/{main.a462621b.js.LICENSE.txt → main.f60aae10.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterbridgeEndpoint.js","sourceRoot":"","sources":["../src/matterbridgeEndpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { AnsiLogger } from './logger/export.js';
|
|
2
|
+
import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
|
|
3
|
+
import { Behavior, ClusterId, Endpoint } from '@matter/main';
|
|
4
|
+
import { ClusterType } from '@matter/main/types';
|
|
5
|
+
export declare function capitalizeFirstLetter(name: string): string;
|
|
6
|
+
export declare function lowercaseFirstLetter(name: string): string;
|
|
7
|
+
export declare function checkNotLatinCharacters(deviceName: string): boolean;
|
|
8
|
+
export declare function generateUniqueId(deviceName: string): string;
|
|
9
|
+
export declare function createUniqueId(param1: string, param2: string, param3: string, param4: string): any;
|
|
10
|
+
export declare function getBehaviourTypesFromClusterServerIds(clusterServerList: ClusterId[]): {};
|
|
11
|
+
export declare function getBehaviourTypesFromClusterClientIds(clusterClientList: ClusterId[]): {};
|
|
12
|
+
export declare function getBehaviourTypeFromClusterServerId(clusterId: ClusterId): any;
|
|
13
|
+
export declare function getBehaviourTypeFromClusterClientId(clusterId: ClusterId): void;
|
|
14
|
+
export declare function getBehavior(endpoint: MatterbridgeEndpoint, cluster: Behavior.Type | ClusterType | ClusterId | string): any;
|
|
15
|
+
export declare function addRequiredClusterServers(endpoint: MatterbridgeEndpoint): void;
|
|
16
|
+
export declare function addOptionalClusterServers(endpoint: MatterbridgeEndpoint): void;
|
|
17
|
+
/**
|
|
18
|
+
* Adds cluster servers to the specified endpoint based on the provided server list.
|
|
19
|
+
*
|
|
20
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
21
|
+
* @param {ClusterId[]} serverList - The list of cluster IDs to add.
|
|
22
|
+
* @returns void
|
|
23
|
+
*/
|
|
24
|
+
export declare function addClusterServers(endpoint: MatterbridgeEndpoint, serverList: ClusterId[]): void;
|
|
25
|
+
/**
|
|
26
|
+
* Adds a fixed label to the FixedLabel cluster. The FixedLabel cluster is created if it does not exist.
|
|
27
|
+
*
|
|
28
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
29
|
+
* @param {string} label - The label to add.
|
|
30
|
+
* @param {string} value - The value of the label.
|
|
31
|
+
*/
|
|
32
|
+
export declare function addFixedLabel(endpoint: MatterbridgeEndpoint, label: string, value: string): any;
|
|
33
|
+
/**
|
|
34
|
+
* Adds a user label to the UserLabel cluster. The UserLabel cluster is created if it does not exist.
|
|
35
|
+
*
|
|
36
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
37
|
+
* @param {string} label - The label to add.
|
|
38
|
+
* @param {string} value - The value of the label.
|
|
39
|
+
*/
|
|
40
|
+
export declare function addUserLabel(endpoint: MatterbridgeEndpoint, label: string, value: string): any;
|
|
41
|
+
export declare function optionsFor<T extends Behavior.Type>(type: T, options: Behavior.Options<T>): Behavior.Options<T>;
|
|
42
|
+
export declare function getClusterId(endpoint: Endpoint, cluster: string): any;
|
|
43
|
+
export declare function getAttributeId(endpoint: Endpoint, cluster: string, attribute: string): any;
|
|
44
|
+
/**
|
|
45
|
+
* Retrieves the value of the provided attribute from the given cluster.
|
|
46
|
+
*
|
|
47
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to retrieve the attribute from.
|
|
48
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to retrieve the attribute from.
|
|
49
|
+
* @param {string} attribute - The name of the attribute to retrieve.
|
|
50
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the retrieve. Errors are logged to the endpoint logger.
|
|
51
|
+
* @returns {any} The value of the attribute, or undefined if the attribute is not found.
|
|
52
|
+
*/
|
|
53
|
+
export declare function getAttribute(endpoint: MatterbridgeEndpoint, cluster: Behavior.Type | ClusterType | ClusterId | string, attribute: string, log?: AnsiLogger): any;
|
|
54
|
+
/**
|
|
55
|
+
* Sets the value of an attribute on a cluster server.
|
|
56
|
+
*
|
|
57
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to set the attribute on.
|
|
58
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to set the attribute on.
|
|
59
|
+
* @param {string} attribute - The name of the attribute.
|
|
60
|
+
* @param {boolean | number | bigint | string | object | null} value - The value to set for the attribute.
|
|
61
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the set. Errors are logged to the endpoint logger.
|
|
62
|
+
* @returns {Promise<boolean>} - A promise that resolves to a boolean indicating whether the attribute was successfully set.
|
|
63
|
+
*/
|
|
64
|
+
export declare function setAttribute(endpoint: MatterbridgeEndpoint, cluster: Behavior.Type | ClusterType | ClusterId | string, attribute: string, value: boolean | number | bigint | string | object | null, log?: AnsiLogger): Promise<boolean>;
|
|
65
|
+
/**
|
|
66
|
+
* Sets the value of an attribute on a cluster server.
|
|
67
|
+
*
|
|
68
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to update the attribute on.
|
|
69
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to update the attribute on.
|
|
70
|
+
* @param {string} attribute - The name of the attribute.
|
|
71
|
+
* @param {boolean | number | bigint | string | object | null} value - The value to set for the attribute.
|
|
72
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the update. Errors are logged to the endpoint logger.
|
|
73
|
+
* @returns {Promise<boolean>} - A promise that resolves to a boolean indicating whether the attribute was successfully set.
|
|
74
|
+
*/
|
|
75
|
+
export declare function updateAttribute(endpoint: MatterbridgeEndpoint, cluster: Behavior.Type | ClusterType | ClusterId | string, attribute: string, value: boolean | number | bigint | string | object | null, log?: AnsiLogger): Promise<boolean>;
|
|
76
|
+
/**
|
|
77
|
+
* Subscribes to the provided attribute on a cluster.
|
|
78
|
+
*
|
|
79
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to subscribe the attribute to.
|
|
80
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to subscribe the attribute to.
|
|
81
|
+
* @param {string} attribute - The name of the attribute to subscribe to.
|
|
82
|
+
* @param {(newValue: any, oldValue: any) => void} listener - A callback function that will be called when the attribute value changes.
|
|
83
|
+
* @param {AnsiLogger} [log] - Optional logger for logging errors and information.
|
|
84
|
+
* @returns {boolean} - A boolean indicating whether the subscription was successful.
|
|
85
|
+
*/
|
|
86
|
+
export declare function subscribeAttribute(endpoint: MatterbridgeEndpoint, cluster: Behavior.Type | ClusterType | ClusterId | string, attribute: string, listener: (newValue: any, oldValue: any) => void, log?: AnsiLogger): Promise<boolean>;
|
|
87
|
+
/**
|
|
88
|
+
* Get the default TemperatureMeasurement cluster server options.
|
|
89
|
+
*
|
|
90
|
+
* @param {number} measuredValue - The measured value of the temperature x 100.
|
|
91
|
+
*/
|
|
92
|
+
export declare function getDefaultTemperatureMeasurementClusterServer(measuredValue?: number): Behavior.Options<T>;
|
|
93
|
+
/**
|
|
94
|
+
* Get the default RelativeHumidityMeasurement cluster server options.
|
|
95
|
+
*
|
|
96
|
+
* @param {number} measuredValue - The measured value of the relative humidity x 100.
|
|
97
|
+
*/
|
|
98
|
+
export declare function getDefaultRelativeHumidityMeasurementClusterServer(measuredValue?: number): Behavior.Options<T>;
|
|
99
|
+
/**
|
|
100
|
+
* Get the default PressureMeasurement cluster server options.
|
|
101
|
+
*
|
|
102
|
+
* @param {number} measuredValue - The measured value for the pressure.
|
|
103
|
+
*/
|
|
104
|
+
export declare function getDefaultPressureMeasurementClusterServer(measuredValue?: number): Behavior.Options<T>;
|
|
105
|
+
/**
|
|
106
|
+
* Get the default IlluminanceMeasurement cluster server options.
|
|
107
|
+
*
|
|
108
|
+
* @param {number} measuredValue - The measured value of illuminance.
|
|
109
|
+
*/
|
|
110
|
+
export declare function getDefaultIlluminanceMeasurementClusterServer(measuredValue?: number): Behavior.Options<T>;
|
|
111
|
+
/**
|
|
112
|
+
* Get the default FlowMeasurement cluster server options.
|
|
113
|
+
*
|
|
114
|
+
* @param {number} measuredValue - The measured value of the flow in 10 x m3/h.
|
|
115
|
+
*/
|
|
116
|
+
export declare function getDefaultFlowMeasurementClusterServer(measuredValue?: number): Behavior.Options<T>;
|
|
117
|
+
/**
|
|
118
|
+
* Get the default OccupancySensing cluster server options.
|
|
119
|
+
*
|
|
120
|
+
* @param {boolean} occupied - A boolean indicating whether the occupancy is occupied or not. Default is false.
|
|
121
|
+
*/
|
|
122
|
+
export declare function getDefaultOccupancySensingClusterServer(occupied?: boolean): Behavior.Options<T>;
|
|
123
|
+
//# sourceMappingURL=matterbridgeEndpointHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterbridgeEndpointHelpers.d.ts","sourceRoot":"","sources":["../src/matterbridgeEndpointHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
2
|
+
// Node.js modules
|
|
1
3
|
import { createHash } from 'node:crypto';
|
|
4
|
+
// AnsiLogger module
|
|
2
5
|
import { BLUE, CYAN, db, debugStringify, er, hk, or, YELLOW, zb } from './logger/export.js';
|
|
6
|
+
// Matterbridge
|
|
3
7
|
import { deepCopy, deepEqual, isValidArray } from './utils/export.js';
|
|
4
8
|
import { MatterbridgeIdentifyServer, MatterbridgeOnOffServer, MatterbridgeLevelControlServer, MatterbridgeColorControlServer, MatterbridgeWindowCoveringServer, MatterbridgeThermostatServer, MatterbridgeFanControlServer, MatterbridgeDoorLockServer, MatterbridgeModeSelectServer, MatterbridgeValveConfigurationAndControlServer, MatterbridgeSmokeCoAlarmServer, MatterbridgeBooleanStateConfigurationServer, } from './matterbridgeBehaviors.js';
|
|
9
|
+
// @matter
|
|
5
10
|
import { Lifecycle } from '@matter/main';
|
|
6
11
|
import { getClusterNameById } from '@matter/main/types';
|
|
12
|
+
// @matter clusters
|
|
7
13
|
import { PowerSource } from '@matter/main/clusters/power-source';
|
|
8
14
|
import { UserLabel } from '@matter/main/clusters/user-label';
|
|
9
15
|
import { FixedLabel } from '@matter/main/clusters/fixed-label';
|
|
@@ -45,6 +51,7 @@ import { Pm25ConcentrationMeasurement } from '@matter/main/clusters/pm25-concent
|
|
|
45
51
|
import { Pm10ConcentrationMeasurement } from '@matter/main/clusters/pm10-concentration-measurement';
|
|
46
52
|
import { RadonConcentrationMeasurement } from '@matter/main/clusters/radon-concentration-measurement';
|
|
47
53
|
import { TotalVolatileOrganicCompoundsConcentrationMeasurement } from '@matter/main/clusters/total-volatile-organic-compounds-concentration-measurement';
|
|
54
|
+
// @matter behaviors
|
|
48
55
|
import { PowerSourceServer } from '@matter/main/behaviors/power-source';
|
|
49
56
|
import { UserLabelServer } from '@matter/main/behaviors/user-label';
|
|
50
57
|
import { FixedLabelServer } from '@matter/main/behaviors/fixed-label';
|
|
@@ -86,19 +93,19 @@ export function lowercaseFirstLetter(name) {
|
|
|
86
93
|
}
|
|
87
94
|
export function checkNotLatinCharacters(deviceName) {
|
|
88
95
|
const nonLatinRegexList = [
|
|
89
|
-
/[\u0400-\u04FF\u0500-\u052F]/,
|
|
90
|
-
/[\u2E80-\u9FFF]/,
|
|
91
|
-
/[\uAC00-\uD7AF]/,
|
|
92
|
-
/[\u0600-\u06FF\u0750-\u077F]/,
|
|
93
|
-
/[\u0590-\u05FF]/,
|
|
94
|
-
/[\u0900-\u097F]/,
|
|
95
|
-
/[\u0E00-\u0E7F]/,
|
|
96
|
-
/[\u1200-\u137F]/,
|
|
96
|
+
/[\u0400-\u04FF\u0500-\u052F]/, // Cyrillic
|
|
97
|
+
/[\u2E80-\u9FFF]/, // CJK (Chinese, Japanese, Korean)
|
|
98
|
+
/[\uAC00-\uD7AF]/, // Korean Hangul
|
|
99
|
+
/[\u0600-\u06FF\u0750-\u077F]/, // Arabic, Persian
|
|
100
|
+
/[\u0590-\u05FF]/, // Hebrew
|
|
101
|
+
/[\u0900-\u097F]/, // Devanagari (Hindi, Sanskrit)
|
|
102
|
+
/[\u0E00-\u0E7F]/, // Thai
|
|
103
|
+
/[\u1200-\u137F]/, // Ethiopic (Amharic, Tigrinya)
|
|
97
104
|
];
|
|
98
105
|
return nonLatinRegexList.some((regex) => regex.test(deviceName));
|
|
99
106
|
}
|
|
100
107
|
export function generateUniqueId(deviceName) {
|
|
101
|
-
return createHash('md5').update(deviceName).digest('hex');
|
|
108
|
+
return createHash('md5').update(deviceName).digest('hex'); // MD5 hash of the device name
|
|
102
109
|
}
|
|
103
110
|
export function createUniqueId(param1, param2, param3, param4) {
|
|
104
111
|
const hash = createHash('md5');
|
|
@@ -106,6 +113,7 @@ export function createUniqueId(param1, param2, param3, param4) {
|
|
|
106
113
|
return hash.digest('hex');
|
|
107
114
|
}
|
|
108
115
|
export function getBehaviourTypesFromClusterServerIds(clusterServerList) {
|
|
116
|
+
// Map Server ClusterId to Behavior.Type
|
|
109
117
|
const behaviorTypes = [];
|
|
110
118
|
clusterServerList.forEach((clusterId) => {
|
|
111
119
|
behaviorTypes.push(getBehaviourTypeFromClusterServerId(clusterId));
|
|
@@ -113,12 +121,15 @@ export function getBehaviourTypesFromClusterServerIds(clusterServerList) {
|
|
|
113
121
|
return behaviorTypes;
|
|
114
122
|
}
|
|
115
123
|
export function getBehaviourTypesFromClusterClientIds(clusterClientList) {
|
|
124
|
+
// Map Client ClusterId to Behavior.Type
|
|
116
125
|
const behaviorTypes = [];
|
|
117
126
|
clusterClientList.forEach((clusterId) => {
|
|
127
|
+
// behaviorTypes.push(getBehaviourTypeFromClusterClientId(clusterId));
|
|
118
128
|
});
|
|
119
129
|
return behaviorTypes;
|
|
120
130
|
}
|
|
121
131
|
export function getBehaviourTypeFromClusterServerId(clusterId) {
|
|
132
|
+
// Map ClusterId to Server Behavior.Type
|
|
122
133
|
if (clusterId === PowerSource.Cluster.id)
|
|
123
134
|
return PowerSourceServer.with(PowerSource.Feature.Wired);
|
|
124
135
|
if (clusterId === UserLabel.Cluster.id)
|
|
@@ -204,6 +215,8 @@ export function getBehaviourTypeFromClusterServerId(clusterId) {
|
|
|
204
215
|
return MatterbridgeIdentifyServer;
|
|
205
216
|
}
|
|
206
217
|
export function getBehaviourTypeFromClusterClientId(clusterId) {
|
|
218
|
+
// Map ClusterId to Client Behavior.Type
|
|
219
|
+
// return IdentifyClient;
|
|
207
220
|
}
|
|
208
221
|
export function getBehavior(endpoint, cluster) {
|
|
209
222
|
let behavior;
|
|
@@ -249,6 +262,13 @@ export function addOptionalClusterServers(endpoint) {
|
|
|
249
262
|
});
|
|
250
263
|
addClusterServers(endpoint, optionalServerList);
|
|
251
264
|
}
|
|
265
|
+
/**
|
|
266
|
+
* Adds cluster servers to the specified endpoint based on the provided server list.
|
|
267
|
+
*
|
|
268
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
269
|
+
* @param {ClusterId[]} serverList - The list of cluster IDs to add.
|
|
270
|
+
* @returns void
|
|
271
|
+
*/
|
|
252
272
|
export function addClusterServers(endpoint, serverList) {
|
|
253
273
|
if (serverList.includes(PowerSource.Cluster.id))
|
|
254
274
|
endpoint.createDefaultPowerSourceWiredClusterServer();
|
|
@@ -322,7 +342,16 @@ export function addClusterServers(endpoint, serverList) {
|
|
|
322
342
|
endpoint.createDefaultRadonConcentrationMeasurementClusterServer();
|
|
323
343
|
if (serverList.includes(TotalVolatileOrganicCompoundsConcentrationMeasurement.Cluster.id))
|
|
324
344
|
endpoint.createDefaultTvocMeasurementClusterServer();
|
|
345
|
+
// if (serverList.includes(DeviceEnergyManagement.Cluster.id)) endpoint.createDefaultDeviceEnergyManagementClusterServer();
|
|
346
|
+
// if (serverList.includes(DeviceEnergyManagementMode.Cluster.id)) endpoint.createDefaultDeviceEnergyManagementModeClusterServer();
|
|
325
347
|
}
|
|
348
|
+
/**
|
|
349
|
+
* Adds a fixed label to the FixedLabel cluster. The FixedLabel cluster is created if it does not exist.
|
|
350
|
+
*
|
|
351
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
352
|
+
* @param {string} label - The label to add.
|
|
353
|
+
* @param {string} value - The value of the label.
|
|
354
|
+
*/
|
|
326
355
|
export async function addFixedLabel(endpoint, label, value) {
|
|
327
356
|
if (!endpoint.hasClusterServer(FixedLabel.Cluster.id)) {
|
|
328
357
|
endpoint.log.debug(`addFixedLabel: add cluster ${hk}FixedLabel${db}:${hk}fixedLabel${db} with label ${CYAN}${label}${db} value ${CYAN}${value}${db}`);
|
|
@@ -339,6 +368,13 @@ export async function addFixedLabel(endpoint, label, value) {
|
|
|
339
368
|
await endpoint.setAttribute(FixedLabel.Cluster.id, 'labelList', labelList, endpoint.log);
|
|
340
369
|
}
|
|
341
370
|
}
|
|
371
|
+
/**
|
|
372
|
+
* Adds a user label to the UserLabel cluster. The UserLabel cluster is created if it does not exist.
|
|
373
|
+
*
|
|
374
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to add the cluster servers to.
|
|
375
|
+
* @param {string} label - The label to add.
|
|
376
|
+
* @param {string} value - The value of the label.
|
|
377
|
+
*/
|
|
342
378
|
export async function addUserLabel(endpoint, label, value) {
|
|
343
379
|
if (!endpoint.hasClusterServer(UserLabel.Cluster.id)) {
|
|
344
380
|
endpoint.log.debug(`addUserLabel: add cluster ${hk}UserLabel${db}:${hk}userLabel${db} with label ${CYAN}${label}${db} value ${CYAN}${value}${db}`);
|
|
@@ -402,6 +438,16 @@ export function getAttributeId(endpoint, cluster, attribute) {
|
|
|
402
438
|
return endpoint.behaviors.supported[lowercaseFirstLetter(cluster)]?.schema?.children?.find((child) => child.name === capitalizeFirstLetter(attribute))?.id;
|
|
403
439
|
}
|
|
404
440
|
}
|
|
441
|
+
/**
|
|
442
|
+
* Retrieves the value of the provided attribute from the given cluster.
|
|
443
|
+
*
|
|
444
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to retrieve the attribute from.
|
|
445
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to retrieve the attribute from.
|
|
446
|
+
* @param {string} attribute - The name of the attribute to retrieve.
|
|
447
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the retrieve. Errors are logged to the endpoint logger.
|
|
448
|
+
* @returns {any} The value of the attribute, or undefined if the attribute is not found.
|
|
449
|
+
*/
|
|
450
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
405
451
|
export function getAttribute(endpoint, cluster, attribute, log) {
|
|
406
452
|
const clusterName = getBehavior(endpoint, cluster)?.id;
|
|
407
453
|
if (!clusterName) {
|
|
@@ -424,6 +470,16 @@ export function getAttribute(endpoint, cluster, attribute, log) {
|
|
|
424
470
|
log?.info(`${db}Get endpoint ${or}${endpoint.id}${db}:${or}${endpoint.number}${db} attribute ${hk}${capitalizeFirstLetter(clusterName)}${db}.${hk}${attribute}${db} value ${YELLOW}${value !== null && typeof value === 'object' ? debugStringify(value) : value}${db}`);
|
|
425
471
|
return value;
|
|
426
472
|
}
|
|
473
|
+
/**
|
|
474
|
+
* Sets the value of an attribute on a cluster server.
|
|
475
|
+
*
|
|
476
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to set the attribute on.
|
|
477
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to set the attribute on.
|
|
478
|
+
* @param {string} attribute - The name of the attribute.
|
|
479
|
+
* @param {boolean | number | bigint | string | object | null} value - The value to set for the attribute.
|
|
480
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the set. Errors are logged to the endpoint logger.
|
|
481
|
+
* @returns {Promise<boolean>} - A promise that resolves to a boolean indicating whether the attribute was successfully set.
|
|
482
|
+
*/
|
|
427
483
|
export async function setAttribute(endpoint, cluster, attribute, value, log) {
|
|
428
484
|
const clusterName = getBehavior(endpoint, cluster)?.id;
|
|
429
485
|
if (!clusterName) {
|
|
@@ -449,6 +505,16 @@ export async function setAttribute(endpoint, cluster, attribute, value, log) {
|
|
|
449
505
|
`to ${YELLOW}${value !== null && typeof value === 'object' ? debugStringify(value) : value}${db}`);
|
|
450
506
|
return true;
|
|
451
507
|
}
|
|
508
|
+
/**
|
|
509
|
+
* Sets the value of an attribute on a cluster server.
|
|
510
|
+
*
|
|
511
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to update the attribute on.
|
|
512
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to update the attribute on.
|
|
513
|
+
* @param {string} attribute - The name of the attribute.
|
|
514
|
+
* @param {boolean | number | bigint | string | object | null} value - The value to set for the attribute.
|
|
515
|
+
* @param {AnsiLogger} [log] - (Optional) The logger to use for logging the update. Errors are logged to the endpoint logger.
|
|
516
|
+
* @returns {Promise<boolean>} - A promise that resolves to a boolean indicating whether the attribute was successfully set.
|
|
517
|
+
*/
|
|
452
518
|
export async function updateAttribute(endpoint, cluster, attribute, value, log) {
|
|
453
519
|
const clusterName = getBehavior(endpoint, cluster)?.id;
|
|
454
520
|
if (!clusterName) {
|
|
@@ -479,6 +545,17 @@ export async function updateAttribute(endpoint, cluster, attribute, value, log)
|
|
|
479
545
|
`to ${YELLOW}${value !== null && typeof value === 'object' ? debugStringify(value) : value}${db}`);
|
|
480
546
|
return true;
|
|
481
547
|
}
|
|
548
|
+
/**
|
|
549
|
+
* Subscribes to the provided attribute on a cluster.
|
|
550
|
+
*
|
|
551
|
+
* @param {MatterbridgeEndpoint} endpoint - The endpoint to subscribe the attribute to.
|
|
552
|
+
* @param {Behavior.Type | ClusterType | ClusterId | string} cluster - The cluster to subscribe the attribute to.
|
|
553
|
+
* @param {string} attribute - The name of the attribute to subscribe to.
|
|
554
|
+
* @param {(newValue: any, oldValue: any) => void} listener - A callback function that will be called when the attribute value changes.
|
|
555
|
+
* @param {AnsiLogger} [log] - Optional logger for logging errors and information.
|
|
556
|
+
* @returns {boolean} - A boolean indicating whether the subscription was successful.
|
|
557
|
+
*/
|
|
558
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
482
559
|
export async function subscribeAttribute(endpoint, cluster, attribute, listener, log) {
|
|
483
560
|
const clusterName = getBehavior(endpoint, cluster)?.id;
|
|
484
561
|
if (!clusterName) {
|
|
@@ -489,6 +566,7 @@ export async function subscribeAttribute(endpoint, cluster, attribute, listener,
|
|
|
489
566
|
endpoint.log.debug(`subscribeAttribute ${hk}${clusterName}.${attribute}${db}: Endpoint ${or}${endpoint.maybeId}${db}:${or}${endpoint.maybeNumber}${db} is in the ${BLUE}${endpoint.construction.status}${db} state`);
|
|
490
567
|
await endpoint.construction.ready;
|
|
491
568
|
}
|
|
569
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
492
570
|
const events = endpoint.events;
|
|
493
571
|
attribute = lowercaseFirstLetter(attribute) + '$Changed';
|
|
494
572
|
if (!(clusterName in events) || !(attribute in events[clusterName])) {
|
|
@@ -499,6 +577,11 @@ export async function subscribeAttribute(endpoint, cluster, attribute, listener,
|
|
|
499
577
|
log?.info(`${db}Subscribed endpoint ${or}${endpoint.id}${db}:${or}${endpoint.number}${db} attribute ${hk}${capitalizeFirstLetter(clusterName)}${db}.${hk}${attribute}${db}`);
|
|
500
578
|
return true;
|
|
501
579
|
}
|
|
580
|
+
/**
|
|
581
|
+
* Get the default TemperatureMeasurement cluster server options.
|
|
582
|
+
*
|
|
583
|
+
* @param {number} measuredValue - The measured value of the temperature x 100.
|
|
584
|
+
*/
|
|
502
585
|
export function getDefaultTemperatureMeasurementClusterServer(measuredValue = 0) {
|
|
503
586
|
return optionsFor(TemperatureMeasurementServer, {
|
|
504
587
|
measuredValue,
|
|
@@ -507,6 +590,11 @@ export function getDefaultTemperatureMeasurementClusterServer(measuredValue = 0)
|
|
|
507
590
|
tolerance: 0,
|
|
508
591
|
});
|
|
509
592
|
}
|
|
593
|
+
/**
|
|
594
|
+
* Get the default RelativeHumidityMeasurement cluster server options.
|
|
595
|
+
*
|
|
596
|
+
* @param {number} measuredValue - The measured value of the relative humidity x 100.
|
|
597
|
+
*/
|
|
510
598
|
export function getDefaultRelativeHumidityMeasurementClusterServer(measuredValue = 0) {
|
|
511
599
|
return optionsFor(RelativeHumidityMeasurementServer, {
|
|
512
600
|
measuredValue,
|
|
@@ -515,6 +603,11 @@ export function getDefaultRelativeHumidityMeasurementClusterServer(measuredValue
|
|
|
515
603
|
tolerance: 0,
|
|
516
604
|
});
|
|
517
605
|
}
|
|
606
|
+
/**
|
|
607
|
+
* Get the default PressureMeasurement cluster server options.
|
|
608
|
+
*
|
|
609
|
+
* @param {number} measuredValue - The measured value for the pressure.
|
|
610
|
+
*/
|
|
518
611
|
export function getDefaultPressureMeasurementClusterServer(measuredValue = 1000) {
|
|
519
612
|
return optionsFor(PressureMeasurementServer, {
|
|
520
613
|
measuredValue,
|
|
@@ -523,6 +616,11 @@ export function getDefaultPressureMeasurementClusterServer(measuredValue = 1000)
|
|
|
523
616
|
tolerance: 0,
|
|
524
617
|
});
|
|
525
618
|
}
|
|
619
|
+
/**
|
|
620
|
+
* Get the default IlluminanceMeasurement cluster server options.
|
|
621
|
+
*
|
|
622
|
+
* @param {number} measuredValue - The measured value of illuminance.
|
|
623
|
+
*/
|
|
526
624
|
export function getDefaultIlluminanceMeasurementClusterServer(measuredValue = 0) {
|
|
527
625
|
return optionsFor(IlluminanceMeasurementServer, {
|
|
528
626
|
measuredValue,
|
|
@@ -531,6 +629,11 @@ export function getDefaultIlluminanceMeasurementClusterServer(measuredValue = 0)
|
|
|
531
629
|
tolerance: 0,
|
|
532
630
|
});
|
|
533
631
|
}
|
|
632
|
+
/**
|
|
633
|
+
* Get the default FlowMeasurement cluster server options.
|
|
634
|
+
*
|
|
635
|
+
* @param {number} measuredValue - The measured value of the flow in 10 x m3/h.
|
|
636
|
+
*/
|
|
534
637
|
export function getDefaultFlowMeasurementClusterServer(measuredValue = 0) {
|
|
535
638
|
return optionsFor(FlowMeasurementServer, {
|
|
536
639
|
measuredValue,
|
|
@@ -539,6 +642,11 @@ export function getDefaultFlowMeasurementClusterServer(measuredValue = 0) {
|
|
|
539
642
|
tolerance: 0,
|
|
540
643
|
});
|
|
541
644
|
}
|
|
645
|
+
/**
|
|
646
|
+
* Get the default OccupancySensing cluster server options.
|
|
647
|
+
*
|
|
648
|
+
* @param {boolean} occupied - A boolean indicating whether the occupancy is occupied or not. Default is false.
|
|
649
|
+
*/
|
|
542
650
|
export function getDefaultOccupancySensingClusterServer(occupied = false) {
|
|
543
651
|
return optionsFor(OccupancySensingServer, {
|
|
544
652
|
occupancy: { occupied },
|
|
@@ -547,3 +655,4 @@ export function getDefaultOccupancySensingClusterServer(occupied = false) {
|
|
|
547
655
|
pirOccupiedToUnoccupiedDelay: 30,
|
|
548
656
|
});
|
|
549
657
|
}
|
|
658
|
+
//# sourceMappingURL=matterbridgeEndpointHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matterbridgeEndpointHelpers.js","sourceRoot":"","sources":["../src/matterbridgeEndpointHelpers.ts"],"names":[],"mappings":"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"}
|