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.
Files changed (127) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/dist/cli.d.ts +28 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +37 -2
  5. package/dist/cli.js.map +1 -0
  6. package/dist/cluster/export.d.ts.map +1 -0
  7. package/dist/cluster/export.js +2 -0
  8. package/dist/cluster/export.js.map +1 -0
  9. package/dist/defaultConfigSchema.d.ts.map +1 -0
  10. package/dist/defaultConfigSchema.js +23 -0
  11. package/dist/defaultConfigSchema.js.map +1 -0
  12. package/dist/deviceManager.d.ts +109 -0
  13. package/dist/deviceManager.d.ts.map +1 -0
  14. package/dist/deviceManager.js +94 -1
  15. package/dist/deviceManager.js.map +1 -0
  16. package/dist/frontend.d.ts +172 -0
  17. package/dist/frontend.d.ts.map +1 -0
  18. package/dist/frontend.js +265 -22
  19. package/dist/frontend.js.map +1 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +29 -2
  22. package/dist/index.js.map +1 -0
  23. package/dist/logger/export.d.ts.map +1 -0
  24. package/dist/logger/export.js +1 -0
  25. package/dist/logger/export.js.map +1 -0
  26. package/dist/matter/behaviors.d.ts.map +1 -0
  27. package/dist/matter/behaviors.js +2 -0
  28. package/dist/matter/behaviors.js.map +1 -0
  29. package/dist/matter/clusters.d.ts.map +1 -0
  30. package/dist/matter/clusters.js +2 -0
  31. package/dist/matter/clusters.js.map +1 -0
  32. package/dist/matter/devices.d.ts.map +1 -0
  33. package/dist/matter/devices.js +2 -0
  34. package/dist/matter/devices.js.map +1 -0
  35. package/dist/matter/endpoints.d.ts.map +1 -0
  36. package/dist/matter/endpoints.js +2 -0
  37. package/dist/matter/endpoints.js.map +1 -0
  38. package/dist/matter/export.d.ts.map +1 -0
  39. package/dist/matter/export.js +2 -0
  40. package/dist/matter/export.js.map +1 -0
  41. package/dist/matter/types.d.ts.map +1 -0
  42. package/dist/matter/types.js +3 -1
  43. package/dist/matter/types.js.map +1 -0
  44. package/dist/matterbridge.d.ts +410 -0
  45. package/dist/matterbridge.d.ts.map +1 -0
  46. package/dist/matterbridge.js +718 -47
  47. package/dist/matterbridge.js.map +1 -0
  48. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -0
  49. package/dist/matterbridgeAccessoryPlatform.js +33 -0
  50. package/dist/matterbridgeAccessoryPlatform.js.map +1 -0
  51. package/dist/matterbridgeBehaviors.d.ts +148 -0
  52. package/dist/matterbridgeBehaviors.d.ts.map +1 -0
  53. package/dist/matterbridgeBehaviors.js +32 -1
  54. package/dist/matterbridgeBehaviors.js.map +1 -0
  55. package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
  56. package/dist/matterbridgeDeviceTypes.js +112 -11
  57. package/dist/matterbridgeDeviceTypes.js.map +1 -0
  58. package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -0
  59. package/dist/matterbridgeDynamicPlatform.js +33 -0
  60. package/dist/matterbridgeDynamicPlatform.js.map +1 -0
  61. package/dist/matterbridgeEndpoint.d.ts +827 -0
  62. package/dist/matterbridgeEndpoint.d.ts.map +1 -0
  63. package/dist/matterbridgeEndpoint.js +690 -6
  64. package/dist/matterbridgeEndpoint.js.map +1 -0
  65. package/dist/matterbridgeEndpointHelpers.d.ts +123 -0
  66. package/dist/matterbridgeEndpointHelpers.d.ts.map +1 -0
  67. package/dist/matterbridgeEndpointHelpers.js +118 -9
  68. package/dist/matterbridgeEndpointHelpers.js.map +1 -0
  69. package/dist/matterbridgePlatform.d.ts +159 -0
  70. package/dist/matterbridgePlatform.d.ts.map +1 -0
  71. package/dist/matterbridgePlatform.js +162 -23
  72. package/dist/matterbridgePlatform.js.map +1 -0
  73. package/dist/matterbridgeTypes.d.ts.map +1 -0
  74. package/dist/matterbridgeTypes.js +24 -0
  75. package/dist/matterbridgeTypes.js.map +1 -0
  76. package/dist/pluginManager.d.ts +236 -0
  77. package/dist/pluginManager.d.ts.map +1 -0
  78. package/dist/pluginManager.js +229 -3
  79. package/dist/pluginManager.js.map +1 -0
  80. package/dist/shelly.d.ts.map +1 -0
  81. package/dist/shelly.js +131 -4
  82. package/dist/shelly.js.map +1 -0
  83. package/dist/storage/export.d.ts.map +1 -0
  84. package/dist/storage/export.js +1 -0
  85. package/dist/storage/export.js.map +1 -0
  86. package/dist/update.d.ts.map +1 -0
  87. package/dist/update.js +45 -0
  88. package/dist/update.js.map +1 -0
  89. package/dist/utils/colorUtils.d.ts.map +1 -0
  90. package/dist/utils/colorUtils.js +205 -2
  91. package/dist/utils/colorUtils.js.map +1 -0
  92. package/dist/utils/copyDirectory.d.ts.map +1 -0
  93. package/dist/utils/copyDirectory.js +37 -1
  94. package/dist/utils/copyDirectory.js.map +1 -0
  95. package/dist/utils/createZip.d.ts.map +1 -0
  96. package/dist/utils/createZip.js +42 -2
  97. package/dist/utils/createZip.js.map +1 -0
  98. package/dist/utils/deepCopy.d.ts.map +1 -0
  99. package/dist/utils/deepCopy.js +40 -0
  100. package/dist/utils/deepCopy.js.map +1 -0
  101. package/dist/utils/deepEqual.d.ts.map +1 -0
  102. package/dist/utils/deepEqual.js +65 -1
  103. package/dist/utils/deepEqual.js.map +1 -0
  104. package/dist/utils/export.d.ts.map +1 -0
  105. package/dist/utils/export.js +1 -0
  106. package/dist/utils/export.js.map +1 -0
  107. package/dist/utils/isvalid.d.ts.map +1 -0
  108. package/dist/utils/isvalid.js +86 -0
  109. package/dist/utils/isvalid.js.map +1 -0
  110. package/dist/utils/network.d.ts.map +1 -0
  111. package/dist/utils/network.js +77 -5
  112. package/dist/utils/network.js.map +1 -0
  113. package/dist/utils/parameter.d.ts.map +1 -0
  114. package/dist/utils/parameter.js +41 -0
  115. package/dist/utils/parameter.js.map +1 -0
  116. package/dist/utils/wait.d.ts +43 -0
  117. package/dist/utils/wait.d.ts.map +1 -0
  118. package/dist/utils/wait.js +48 -5
  119. package/dist/utils/wait.js.map +1 -0
  120. package/frontend/build/asset-manifest.json +3 -3
  121. package/frontend/build/index.html +1 -1
  122. package/frontend/build/static/js/{main.a462621b.js → main.f60aae10.js} +8 -8
  123. package/frontend/build/static/js/main.f60aae10.js.map +1 -0
  124. package/npm-shrinkwrap.json +44 -44
  125. package/package.json +2 -2
  126. package/frontend/build/static/js/main.a462621b.js.map +0 -1
  127. /package/frontend/build/static/js/{main.a462621b.js.LICENSE.txt → main.f60aae10.js.LICENSE.txt} +0 -0
@@ -0,0 +1,159 @@
1
+ /**
2
+ * This file contains the class MatterbridgeAccessoryPlatform.
3
+ *
4
+ * @file matterbridgePlatform.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-03-21
7
+ * @version 1.1.0
8
+ *
9
+ * Copyright 2024, 2025, 2026 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
23
+ import { Matterbridge } from './matterbridge.js';
24
+ import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
25
+ import { AnsiLogger, LogLevel } from './logger/export.js';
26
+ import { NodeStorage, NodeStorageManager } from './storage/export.js';
27
+ export type PlatformConfigValue = string | number | boolean | bigint | object | undefined | null;
28
+ export type PlatformConfig = Record<string, PlatformConfigValue>;
29
+ export type PlatformSchemaValue = string | number | boolean | bigint | object | undefined | null;
30
+ export type PlatformSchema = Record<string, PlatformSchemaValue>;
31
+ /**
32
+ * Represents the base Matterbridge platform. It is extended by the MatterbridgeAccessoryPlatform and MatterbridgeServicePlatform classes.
33
+ *
34
+ */
35
+ export declare class MatterbridgePlatform {
36
+ matterbridge: Matterbridge;
37
+ log: AnsiLogger;
38
+ config: PlatformConfig;
39
+ name: string;
40
+ type: string;
41
+ version: string;
42
+ storage: NodeStorageManager;
43
+ context?: NodeStorage;
44
+ readonly selectDevice: any;
45
+ readonly selectEntity: any;
46
+ private _contextReady;
47
+ private _selectDeviceContextReady;
48
+ private _selectEntityContextReady;
49
+ ready: Promise<void>;
50
+ private readonly _registeredEndpoints;
51
+ private readonly _registeredEndpointsByName;
52
+ private readonly _storedDevices;
53
+ /**
54
+ * Creates an instance of the base MatterbridgePlatform. It is extended by the MatterbridgeAccessoryPlatform and MatterbridgeServicePlatform classes.
55
+ * @param {Matterbridge} matterbridge - The Matterbridge instance.
56
+ * @param {AnsiLogger} log - The logger instance.
57
+ * @param {PlatformConfig} config - The platform configuration.
58
+ */
59
+ constructor(matterbridge: Matterbridge, log: AnsiLogger, config: PlatformConfig);
60
+ /**
61
+ * This method must be overridden in the extended class.
62
+ * It is called when the platform is started.
63
+ * Use this method to create the MatterbridgeDevice and call this.registerDevice().
64
+ * @param {string} [reason] - The reason for starting.
65
+ * @throws {Error} - Throws an error if the method is not overridden.
66
+ */
67
+ onStart(reason?: string): any;
68
+ /**
69
+ * This method can be overridden in the extended class. Call super.onConfigure() to run checkEndpointNumbers().
70
+ * It is called after the platform has started.
71
+ * Use this method to perform any configuration of your devices.
72
+ */
73
+ onConfigure(): any;
74
+ /**
75
+ * This method can be overridden in the extended class. In this case always call super.onShutdown() to save the selects, run checkEndpointNumbers() and cleanup memory.
76
+ * It is called when the platform is shutting down.
77
+ * Use this method to clean up any resources.
78
+ * @param {string} [reason] - The reason for shutting down.
79
+ */
80
+ onShutdown(reason?: string): any;
81
+ /**
82
+ * Sets the logger level and logs a debug message indicating that the plugin doesn't override this method.
83
+ * @param {LogLevel} logLevel The new logger level.
84
+ */
85
+ onChangeLoggerLevel(logLevel: LogLevel): any;
86
+ /**
87
+ * Check if a device with this name is already registered in the platform.
88
+ * @param {string} deviceName - The device name to check.
89
+ * @returns {boolean} True if the device is already registered, false otherwise.
90
+ */
91
+ hasDeviceName(deviceName: string): boolean;
92
+ /**
93
+ * Registers a device with the Matterbridge platform.
94
+ * @param {MatterbridgeEndpoint} device - The device to register.
95
+ */
96
+ registerDevice(device: MatterbridgeEndpoint): any;
97
+ /**
98
+ * Unregisters a device registered with the Matterbridge platform.
99
+ * @param {MatterbridgeEndpoint} device - The device to unregister.
100
+ */
101
+ unregisterDevice(device: MatterbridgeEndpoint): any;
102
+ /**
103
+ * Unregisters all devices registered with the Matterbridge platform.
104
+ */
105
+ unregisterAllDevices(): any;
106
+ /**
107
+ * Store a device that will not be registered. To be used by the Devices page in the frontend.
108
+ * @param {string} serial - The serial number of the device to store.
109
+ * @param {string} name - The name of the device to store.
110
+ * @param {string} [configUrl] - The URL of the device configuration.
111
+ * @returns {Promise<void>} A promise that resolves when the device is stored.
112
+ */
113
+ storeDevice(serial: string, name: string, configUrl?: string): Promise<void>;
114
+ /**
115
+ * Verifies if the Matterbridge version meets the required version.
116
+ * @param {string} requiredVersion - The required version to compare against.
117
+ * @returns {boolean} True if the Matterbridge version meets or exceeds the required version, false otherwise.
118
+ */
119
+ verifyMatterbridgeVersion(requiredVersion: string): boolean;
120
+ /**
121
+ * @deprecated This method is deprecated and will be removed in future versions. Use validateDevice instead.
122
+ */
123
+ validateDeviceWhiteBlackList(device: string | string[], log?: boolean): boolean;
124
+ /**
125
+ * Validates if a device is allowed based on the whitelist and blacklist configurations.
126
+ * The blacklist has priority over the whitelist.
127
+ *
128
+ * @param {string | string[]} device - The device name(s) to validate.
129
+ * @param {boolean} [log=true] - Whether to log the validation result.
130
+ * @returns {boolean} - Returns true if the device is allowed, false otherwise.
131
+ *
132
+ */
133
+ validateDevice(device: string | string[], log?: boolean): boolean;
134
+ /**
135
+ * @deprecated This method is deprecated and will be removed in future versions. Use validateEntity instead.
136
+ */
137
+ validateEntityBlackList(device: string, entity: string, log?: boolean): boolean;
138
+ /**
139
+ * Validates if an entity is allowed based on the entity blacklist and device-entity blacklist configurations.
140
+ *
141
+ * @param {string} device - The device to which the entity belongs.
142
+ * @param {string} entity - The entity to validate.
143
+ * @param {boolean} [log=true] - Whether to log the validation result.
144
+ * @returns {boolean} - Returns true if the entity is allowed, false otherwise.
145
+ *
146
+ */
147
+ validateEntity(device: string, entity: string, log?: boolean): boolean;
148
+ /**
149
+ * Checks and updates the endpoint numbers for Matterbridge devices.
150
+ *
151
+ * This method retrieves the list of Matterbridge devices and their child endpoints,
152
+ * compares their current endpoint numbers with the stored ones, and updates the storage
153
+ * if there are any changes. It logs the changes and updates the endpoint numbers accordingly.
154
+ *
155
+ * @returns {Promise<number>} The size of the updated endpoint map, or -1 if storage is not available.
156
+ */
157
+ checkEndpointNumbers(): unknown;
158
+ }
159
+ //# sourceMappingURL=matterbridgePlatform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgePlatform.d.ts","sourceRoot":"","sources":["../src/matterbridgePlatform.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,71 @@
1
+ /**
2
+ * This file contains the class MatterbridgeAccessoryPlatform.
3
+ *
4
+ * @file matterbridgePlatform.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-03-21
7
+ * @version 1.1.0
8
+ *
9
+ * Copyright 2024, 2025, 2026 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
1
23
  import { checkNotLatinCharacters } from './matterbridgeEndpointHelpers.js';
2
24
  import { isValidArray, isValidObject, isValidString } from './utils/export.js';
25
+ // AnsiLogger module
3
26
  import { CYAN, db, er, nf, wr } from './logger/export.js';
27
+ // Storage module
4
28
  import { NodeStorageManager } from './storage/export.js';
29
+ // Node.js module
5
30
  import path from 'node:path';
31
+ /**
32
+ * Represents the base Matterbridge platform. It is extended by the MatterbridgeAccessoryPlatform and MatterbridgeServicePlatform classes.
33
+ *
34
+ */
6
35
  export class MatterbridgePlatform {
7
36
  matterbridge;
8
37
  log;
9
38
  config = {};
10
- name = '';
11
- type = '';
12
- version = '1.0.0';
39
+ name = ''; // Will be set by the loadPlugin() method using the package.json value.
40
+ type = ''; // Will be set by the extending classes.
41
+ version = '1.0.0'; // Will be set by the loadPlugin() method using the package.json value.
42
+ // Platform storage
13
43
  storage;
14
44
  context;
45
+ // Device and entity selection
15
46
  selectDevice = new Map();
16
47
  selectEntity = new Map();
17
- contextReady;
18
- selectDeviceContextReady;
19
- selectEntityContextReady;
48
+ // Promises for storage
49
+ _contextReady;
50
+ _selectDeviceContextReady;
51
+ _selectEntityContextReady;
20
52
  ready;
21
- registeredEndpoints = new Map();
22
- registeredEndpointsByName = new Map();
53
+ // Registered devices
54
+ _registeredEndpoints = new Map(); // uniqueId, MatterbridgeEndpoint
55
+ _registeredEndpointsByName = new Map(); // deviceName, MatterbridgeEndpoint
56
+ // Stored devices
57
+ _storedDevices = new Map(); // serial, { serial, name }
58
+ /**
59
+ * Creates an instance of the base MatterbridgePlatform. It is extended by the MatterbridgeAccessoryPlatform and MatterbridgeServicePlatform classes.
60
+ * @param {Matterbridge} matterbridge - The Matterbridge instance.
61
+ * @param {AnsiLogger} log - The logger instance.
62
+ * @param {PlatformConfig} config - The platform configuration.
63
+ */
23
64
  constructor(matterbridge, log, config) {
24
65
  this.matterbridge = matterbridge;
25
66
  this.log = log;
26
67
  this.config = config;
68
+ // create the NodeStorageManager for the plugin platform
27
69
  if (!isValidString(this.config.name) || this.config.name === '')
28
70
  throw new Error('Platform: the plugin name is missing or invalid.');
29
71
  this.log.debug(`Creating storage for plugin ${this.config.name} in ${path.join(this.matterbridge.matterbridgeDirectory, this.config.name)}`);
@@ -34,40 +76,63 @@ export class MatterbridgePlatform {
34
76
  logging: false,
35
77
  forgiveParseErrors: true,
36
78
  });
79
+ // create the context storage for the plugin platform
37
80
  this.log.debug(`Creating context for plugin ${this.config.name}`);
38
- this.contextReady = this.storage.createStorage('context').then((context) => {
81
+ this._contextReady = this.storage.createStorage('context').then((context) => {
39
82
  this.context = context;
40
- this.context.remove('endpointMap');
83
+ this.context.remove('endpointMap'); // Remove the old endpointMap TODO: remove in future versions
41
84
  this.log.debug(`Created context for plugin ${this.config.name}`);
42
85
  });
86
+ // create the selectDevice storage for the plugin platform
43
87
  this.log.debug(`Loading selectDevice for plugin ${this.config.name}`);
44
- this.selectDeviceContextReady = this.storage.createStorage('selectDevice').then(async (context) => {
88
+ this._selectDeviceContextReady = this.storage.createStorage('selectDevice').then(async (context) => {
45
89
  const selectDevice = await context.get('selectDevice', []);
46
90
  for (const device of selectDevice)
47
91
  this.selectDevice.set(device.serial, device);
48
92
  this.log.debug(`Loaded ${this.selectDevice.size} selectDevice for plugin ${this.config.name}`);
49
93
  });
94
+ // create the selectEntity storage for the plugin platform
50
95
  this.log.debug(`Loading selectEntity for plugin ${this.config.name}`);
51
- this.selectEntityContextReady = this.storage.createStorage('selectEntity').then(async (context) => {
96
+ this._selectEntityContextReady = this.storage.createStorage('selectEntity').then(async (context) => {
52
97
  const selectEntity = await context.get('selectEntity', []);
53
98
  for (const entity of selectEntity)
54
99
  this.selectEntity.set(entity.name, entity);
55
100
  this.log.debug(`Loaded ${this.selectEntity.size} selectEntity for plugin ${this.config.name}`);
56
101
  });
57
- this.ready = Promise.all([this.contextReady, this.selectDeviceContextReady, this.selectEntityContextReady]).then(() => {
102
+ // Create the `ready` promise for the platform
103
+ this.ready = Promise.all([this._contextReady, this._selectDeviceContextReady, this._selectEntityContextReady]).then(() => {
58
104
  this.log.debug(`MatterbridgePlatform for plugin ${this.config.name} is fully initialized`);
59
105
  });
60
106
  }
107
+ /**
108
+ * This method must be overridden in the extended class.
109
+ * It is called when the platform is started.
110
+ * Use this method to create the MatterbridgeDevice and call this.registerDevice().
111
+ * @param {string} [reason] - The reason for starting.
112
+ * @throws {Error} - Throws an error if the method is not overridden.
113
+ */
61
114
  async onStart(reason) {
62
115
  this.log.error('Plugins must override onStart.', reason);
63
116
  throw new Error('Plugins must override onStart.');
64
117
  }
118
+ /**
119
+ * This method can be overridden in the extended class. Call super.onConfigure() to run checkEndpointNumbers().
120
+ * It is called after the platform has started.
121
+ * Use this method to perform any configuration of your devices.
122
+ */
65
123
  async onConfigure() {
66
124
  this.log.debug(`Configuring platform ${this.name}`);
67
125
  await this.checkEndpointNumbers();
68
126
  }
127
+ /**
128
+ * This method can be overridden in the extended class. In this case always call super.onShutdown() to save the selects, run checkEndpointNumbers() and cleanup memory.
129
+ * It is called when the platform is shutting down.
130
+ * Use this method to clean up any resources.
131
+ * @param {string} [reason] - The reason for shutting down.
132
+ */
69
133
  async onShutdown(reason) {
70
134
  this.log.debug(`Shutting down platform ${this.name}`, reason);
135
+ // Save the selectDevice and selectEntity
71
136
  if (this.storage) {
72
137
  this.log.debug(`Saving ${this.selectDevice.size} selectDevice...`);
73
138
  const selectDevice = await this.storage.createStorage('selectDevice');
@@ -78,24 +143,41 @@ export class MatterbridgePlatform {
78
143
  await selectEntity.set('selectEntity', Array.from(this.selectEntity.values()));
79
144
  await selectEntity.close();
80
145
  }
146
+ // Check and update the endpoint numbers
81
147
  await this.checkEndpointNumbers();
148
+ // Cleanup memory
82
149
  this.selectDevice.clear();
83
150
  this.selectEntity.clear();
84
- this.registeredEndpoints.clear();
85
- this.registeredEndpointsByName.clear();
151
+ this._registeredEndpoints.clear();
152
+ this._registeredEndpointsByName.clear();
153
+ this._storedDevices.clear();
154
+ // Close the storage
86
155
  await this.context?.close();
87
156
  this.context = undefined;
88
157
  await this.storage?.close();
89
158
  }
159
+ /**
160
+ * Sets the logger level and logs a debug message indicating that the plugin doesn't override this method.
161
+ * @param {LogLevel} logLevel The new logger level.
162
+ */
90
163
  async onChangeLoggerLevel(logLevel) {
91
164
  this.log.debug(`The plugin doesn't override onChangeLoggerLevel. Logger level set to: ${logLevel}`);
92
165
  }
166
+ /**
167
+ * Check if a device with this name is already registered in the platform.
168
+ * @param {string} deviceName - The device name to check.
169
+ * @returns {boolean} True if the device is already registered, false otherwise.
170
+ */
93
171
  hasDeviceName(deviceName) {
94
- return this.registeredEndpointsByName.has(deviceName);
172
+ return this._registeredEndpointsByName.has(deviceName);
95
173
  }
174
+ /**
175
+ * Registers a device with the Matterbridge platform.
176
+ * @param {MatterbridgeEndpoint} device - The device to register.
177
+ */
96
178
  async registerDevice(device) {
97
179
  device.plugin = this.name;
98
- if (device.deviceName && this.registeredEndpointsByName.has(device.deviceName)) {
180
+ if (device.deviceName && this._registeredEndpointsByName.has(device.deviceName)) {
99
181
  this.log.error(`Device with name ${CYAN}${device.deviceName}${er} is already registered. The device will not be added. Please change the device name.`);
100
182
  return;
101
183
  }
@@ -104,22 +186,45 @@ export class MatterbridgePlatform {
104
186
  }
105
187
  await this.matterbridge.addBridgedEndpoint(this.name, device);
106
188
  if (device.uniqueId)
107
- this.registeredEndpoints.set(device.uniqueId, device);
189
+ this._registeredEndpoints.set(device.uniqueId, device);
108
190
  if (device.deviceName)
109
- this.registeredEndpointsByName.set(device.deviceName, device);
191
+ this._registeredEndpointsByName.set(device.deviceName, device);
110
192
  }
193
+ /**
194
+ * Unregisters a device registered with the Matterbridge platform.
195
+ * @param {MatterbridgeEndpoint} device - The device to unregister.
196
+ */
111
197
  async unregisterDevice(device) {
112
198
  await this.matterbridge.removeBridgedEndpoint(this.name, device);
113
199
  if (device.uniqueId)
114
- this.registeredEndpoints.delete(device.uniqueId);
200
+ this._registeredEndpoints.delete(device.uniqueId);
115
201
  if (device.deviceName)
116
- this.registeredEndpointsByName.delete(device.deviceName);
202
+ this._registeredEndpointsByName.delete(device.deviceName);
117
203
  }
204
+ /**
205
+ * Unregisters all devices registered with the Matterbridge platform.
206
+ */
118
207
  async unregisterAllDevices() {
119
208
  await this.matterbridge.removeAllBridgedEndpoints(this.name);
120
- this.registeredEndpoints.clear();
121
- this.registeredEndpointsByName.clear();
209
+ this._registeredEndpoints.clear();
210
+ this._registeredEndpointsByName.clear();
122
211
  }
212
+ /**
213
+ * Store a device that will not be registered. To be used by the Devices page in the frontend.
214
+ * @param {string} serial - The serial number of the device to store.
215
+ * @param {string} name - The name of the device to store.
216
+ * @param {string} [configUrl] - The URL of the device configuration.
217
+ * @returns {Promise<void>} A promise that resolves when the device is stored.
218
+ */
219
+ async storeDevice(serial, name, configUrl) {
220
+ this.log.debug(`Stored device with serial ${CYAN}${serial}${db} name ${CYAN}${name}${db}`);
221
+ this._storedDevices.set(serial, { serial, name, configUrl });
222
+ }
223
+ /**
224
+ * Verifies if the Matterbridge version meets the required version.
225
+ * @param {string} requiredVersion - The required version to compare against.
226
+ * @returns {boolean} True if the Matterbridge version meets or exceeds the required version, false otherwise.
227
+ */
123
228
  verifyMatterbridgeVersion(requiredVersion) {
124
229
  const compareVersions = (matterbridgeVersion, requiredVersion) => {
125
230
  const stripTag = (v) => {
@@ -144,9 +249,21 @@ export class MatterbridgePlatform {
144
249
  return false;
145
250
  return true;
146
251
  }
252
+ /**
253
+ * @deprecated This method is deprecated and will be removed in future versions. Use validateDevice instead.
254
+ */
147
255
  validateDeviceWhiteBlackList(device, log = true) {
148
256
  return this.validateDevice(device, log);
149
257
  }
258
+ /**
259
+ * Validates if a device is allowed based on the whitelist and blacklist configurations.
260
+ * The blacklist has priority over the whitelist.
261
+ *
262
+ * @param {string | string[]} device - The device name(s) to validate.
263
+ * @param {boolean} [log=true] - Whether to log the validation result.
264
+ * @returns {boolean} - Returns true if the device is allowed, false otherwise.
265
+ *
266
+ */
150
267
  validateDevice(device, log = true) {
151
268
  if (!Array.isArray(device))
152
269
  device = [device];
@@ -176,9 +293,21 @@ export class MatterbridgePlatform {
176
293
  this.log.info(`Skipping device ${CYAN}${device.join(', ')}${nf} because not in whitelist`);
177
294
  return false;
178
295
  }
296
+ /**
297
+ * @deprecated This method is deprecated and will be removed in future versions. Use validateEntity instead.
298
+ */
179
299
  validateEntityBlackList(device, entity, log = true) {
180
300
  return this.validateEntity(device, entity, log);
181
301
  }
302
+ /**
303
+ * Validates if an entity is allowed based on the entity blacklist and device-entity blacklist configurations.
304
+ *
305
+ * @param {string} device - The device to which the entity belongs.
306
+ * @param {string} entity - The entity to validate.
307
+ * @param {boolean} [log=true] - Whether to log the validation result.
308
+ * @returns {boolean} - Returns true if the entity is allowed, false otherwise.
309
+ *
310
+ */
182
311
  validateEntity(device, entity, log = true) {
183
312
  if (isValidArray(this.config.entityBlackList, 1) && this.config.entityBlackList.find((e) => e === entity)) {
184
313
  if (log)
@@ -197,6 +326,15 @@ export class MatterbridgePlatform {
197
326
  }
198
327
  return true;
199
328
  }
329
+ /**
330
+ * Checks and updates the endpoint numbers for Matterbridge devices.
331
+ *
332
+ * This method retrieves the list of Matterbridge devices and their child endpoints,
333
+ * compares their current endpoint numbers with the stored ones, and updates the storage
334
+ * if there are any changes. It logs the changes and updates the endpoint numbers accordingly.
335
+ *
336
+ * @returns {Promise<number>} The size of the updated endpoint map, or -1 if storage is not available.
337
+ */
200
338
  async checkEndpointNumbers() {
201
339
  if (!this.storage)
202
340
  return -1;
@@ -237,3 +375,4 @@ export class MatterbridgePlatform {
237
375
  return endpointMap.size;
238
376
  }
239
377
  }
378
+ //# sourceMappingURL=matterbridgePlatform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgePlatform.js","sourceRoot":"","sources":["../src/matterbridgePlatform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeTypes.d.ts","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,27 @@
1
+ /**
2
+ * This file contains the types for Matterbridge.
3
+ *
4
+ * @file matterbridgeTypes.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-07-12
7
+ * @version 1.0.2
8
+ *
9
+ * Copyright 2023, 2024, 2025 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
23
+ // Default colors
1
24
  export const plg = '\u001B[38;5;33m';
2
25
  export const dev = '\u001B[38;5;79m';
3
26
  export const typ = '\u001B[38;5;207m';
27
+ //# sourceMappingURL=matterbridgeTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeTypes.js","sourceRoot":"","sources":["../src/matterbridgeTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAeH,iBAAiB;AACjB,MAAM,CAAC,MAAM,GAAG,GAAG,iBAAiB,CAAC;AACrC,MAAM,CAAC,MAAM,GAAG,GAAG,iBAAiB,CAAC;AACrC,MAAM,CAAC,MAAM,GAAG,GAAG,kBAAkB,CAAC"}