matterbridge 2.1.0-dev.2 → 2.1.0-dev.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/CHANGELOG.md CHANGED
@@ -21,7 +21,7 @@ The legacy old api have been removed.
21
21
  The frontend has a new dark and light mode. The dark mode is now the default mode.
22
22
  It is possible to change the mode (Classic, Dark or Light) in Settings, Matterbridge settings.
23
23
 
24
- ## [2.1.0.dev.2] - 2025-01-26
24
+ ## [2.1.0.dev.3] - 2025-01-27
25
25
 
26
26
  ### Added
27
27
 
@@ -213,7 +213,7 @@ function getBehavior(endpoint, cluster) {
213
213
  function addRequiredClusterServers(endpoint) {
214
214
  const requiredServerList = [];
215
215
  endpoint.log.debug(`addRequiredClusterServers for ${CYAN}${endpoint.maybeId}${db}`);
216
- endpoint.deviceTypes.values().forEach((deviceType) => {
216
+ Array.from(endpoint.deviceTypes.values()).forEach((deviceType) => {
217
217
  endpoint.log.debug(`- for deviceType: ${zb}${'0x' + deviceType.code.toString(16).padStart(4, '0')}${db}-${zb}${deviceType.name}${db}`);
218
218
  deviceType.requiredServerClusters.forEach((clusterId) => {
219
219
  if (!requiredServerList.includes(clusterId) && !endpoint.hasClusterServer(clusterId)) {
@@ -227,7 +227,7 @@ function addRequiredClusterServers(endpoint) {
227
227
  function addOptionalClusterServers(endpoint) {
228
228
  const optionalServerList = [];
229
229
  endpoint.log.debug(`addOptionalClusterServers for ${CYAN}${endpoint.maybeId}${db}`);
230
- endpoint.deviceTypes.values().forEach((deviceType) => {
230
+ Array.from(endpoint.deviceTypes.values()).forEach((deviceType) => {
231
231
  endpoint.log.debug(`- for deviceType: ${zb}${'0x' + deviceType.code.toString(16).padStart(4, '0')}${db}-${zb}${deviceType.name}${db}`);
232
232
  deviceType.optionalServerClusters.forEach((clusterId) => {
233
233
  if (!optionalServerList.includes(clusterId) && !endpoint.hasClusterServer(clusterId)) {
@@ -547,6 +547,12 @@ export class MatterbridgeEndpoint extends Endpoint {
547
547
  addOptionalClusterServers(this);
548
548
  return this;
549
549
  }
550
+ getAllClusterServers() {
551
+ return Object.values(this.behaviors.supported);
552
+ }
553
+ getAllClusterServerNames() {
554
+ return Object.keys(this.behaviors.supported);
555
+ }
550
556
  addChildDeviceType(endpointName, definition, options = {}, debug = false) {
551
557
  this.log.debug(`addChildDeviceType: ${CYAN}${endpointName}${db}`);
552
558
  let alreadyAdded = false;
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "2.1.0-dev.2",
3
+ "version": "2.1.0-dev.3",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "matterbridge",
9
- "version": "2.1.0-dev.2",
9
+ "version": "2.1.0-dev.3",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
12
  "@matter/main": "0.12.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "matterbridge",
3
- "version": "2.1.0-dev.2",
3
+ "version": "2.1.0-dev.3",
4
4
  "description": "Matterbridge plugin manager for Matter",
5
5
  "author": "https://github.com/Luligu",
6
6
  "license": "Apache-2.0",