@matterbridge/core 3.5.3 → 3.5.4-dev-20260211-c4f9359
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cli.d.ts +0 -24
- package/dist/cli.js +1 -97
- package/dist/cliEmitter.d.ts +0 -36
- package/dist/cliEmitter.js +0 -37
- package/dist/cliHistory.d.ts +0 -42
- package/dist/cliHistory.js +0 -38
- package/dist/clusters/export.d.ts +0 -1
- package/dist/clusters/export.js +0 -2
- package/dist/deviceManager.d.ts +0 -108
- package/dist/deviceManager.js +1 -114
- package/dist/devices/airConditioner.d.ts +0 -75
- package/dist/devices/airConditioner.js +0 -57
- package/dist/devices/basicVideoPlayer.d.ts +0 -58
- package/dist/devices/basicVideoPlayer.js +1 -56
- package/dist/devices/batteryStorage.d.ts +0 -43
- package/dist/devices/batteryStorage.js +1 -48
- package/dist/devices/castingVideoPlayer.d.ts +0 -63
- package/dist/devices/castingVideoPlayer.js +2 -65
- package/dist/devices/cooktop.d.ts +0 -55
- package/dist/devices/cooktop.js +0 -56
- package/dist/devices/dishwasher.d.ts +0 -55
- package/dist/devices/dishwasher.js +0 -57
- package/dist/devices/evse.d.ts +0 -57
- package/dist/devices/evse.js +10 -74
- package/dist/devices/export.d.ts +0 -1
- package/dist/devices/export.js +0 -5
- package/dist/devices/extractorHood.d.ts +0 -41
- package/dist/devices/extractorHood.js +0 -43
- package/dist/devices/heatPump.d.ts +0 -43
- package/dist/devices/heatPump.js +2 -50
- package/dist/devices/laundryDryer.d.ts +0 -58
- package/dist/devices/laundryDryer.js +3 -62
- package/dist/devices/laundryWasher.d.ts +0 -64
- package/dist/devices/laundryWasher.js +4 -70
- package/dist/devices/microwaveOven.d.ts +1 -77
- package/dist/devices/microwaveOven.js +5 -88
- package/dist/devices/oven.d.ts +0 -82
- package/dist/devices/oven.js +0 -85
- package/dist/devices/refrigerator.d.ts +0 -100
- package/dist/devices/refrigerator.js +0 -102
- package/dist/devices/roboticVacuumCleaner.d.ts +0 -83
- package/dist/devices/roboticVacuumCleaner.js +9 -100
- package/dist/devices/solarPower.d.ts +0 -36
- package/dist/devices/solarPower.js +0 -38
- package/dist/devices/speaker.d.ts +0 -79
- package/dist/devices/speaker.js +0 -84
- package/dist/devices/temperatureControl.d.ts +0 -21
- package/dist/devices/temperatureControl.js +3 -24
- package/dist/devices/waterHeater.d.ts +0 -74
- package/dist/devices/waterHeater.js +2 -82
- package/dist/dgram/export.d.ts +0 -1
- package/dist/dgram/export.js +0 -1
- package/dist/export.d.ts +0 -23
- package/dist/export.js +0 -28
- package/dist/frontend.d.ts +0 -187
- package/dist/frontend.js +38 -539
- package/dist/helpers.d.ts +0 -43
- package/dist/helpers.js +0 -86
- package/dist/jestutils/export.d.ts +0 -1
- package/dist/jestutils/export.js +0 -1
- package/dist/jestutils/jestHelpers.d.ts +0 -259
- package/dist/jestutils/jestHelpers.js +14 -395
- package/dist/matter/behaviors.d.ts +0 -1
- package/dist/matter/behaviors.js +0 -2
- package/dist/matter/clusters.d.ts +0 -1
- package/dist/matter/clusters.js +0 -2
- package/dist/matter/devices.d.ts +0 -1
- package/dist/matter/devices.js +0 -2
- package/dist/matter/endpoints.d.ts +0 -1
- package/dist/matter/endpoints.js +0 -2
- package/dist/matter/export.d.ts +0 -1
- package/dist/matter/export.js +0 -2
- package/dist/matter/types.d.ts +0 -1
- package/dist/matter/types.js +0 -2
- package/dist/matterNode.d.ts +0 -258
- package/dist/matterNode.js +8 -356
- package/dist/matterbridge.d.ts +0 -389
- package/dist/matterbridge.js +48 -878
- package/dist/matterbridgeAccessoryPlatform.d.ts +0 -42
- package/dist/matterbridgeAccessoryPlatform.js +0 -50
- package/dist/matterbridgeBehaviors.d.ts +0 -24
- package/dist/matterbridgeBehaviors.js +5 -65
- package/dist/matterbridgeDeviceTypes.d.ts +0 -649
- package/dist/matterbridgeDeviceTypes.js +6 -673
- package/dist/matterbridgeDynamicPlatform.d.ts +0 -42
- package/dist/matterbridgeDynamicPlatform.js +0 -50
- package/dist/matterbridgeEndpoint.d.ts +0 -1369
- package/dist/matterbridgeEndpoint.js +56 -1514
- package/dist/matterbridgeEndpointHelpers.d.ts +0 -425
- package/dist/matterbridgeEndpointHelpers.js +20 -483
- package/dist/matterbridgeEndpointTypes.d.ts +0 -70
- package/dist/matterbridgeEndpointTypes.js +0 -25
- package/dist/matterbridgePlatform.d.ts +0 -434
- package/dist/matterbridgePlatform.js +1 -473
- package/dist/mb_coap.d.ts +0 -23
- package/dist/mb_coap.js +3 -41
- package/dist/mb_health.d.ts +0 -67
- package/dist/mb_health.js +0 -70
- package/dist/mb_mdns.d.ts +0 -23
- package/dist/mb_mdns.js +36 -94
- package/dist/pluginManager.d.ts +0 -307
- package/dist/pluginManager.js +6 -346
- package/dist/spawn.d.ts +0 -32
- package/dist/spawn.js +1 -71
- package/dist/utils/export.d.ts +0 -1
- package/dist/utils/export.js +0 -1
- package/package.json +27 -6
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/cliEmitter.d.ts.map +0 -1
- package/dist/cliEmitter.js.map +0 -1
- package/dist/cliHistory.d.ts.map +0 -1
- package/dist/cliHistory.js.map +0 -1
- package/dist/clusters/export.d.ts.map +0 -1
- package/dist/clusters/export.js.map +0 -1
- package/dist/crypto/attestationDecoder.d.ts +0 -180
- package/dist/crypto/attestationDecoder.d.ts.map +0 -1
- package/dist/crypto/attestationDecoder.js +0 -176
- package/dist/crypto/attestationDecoder.js.map +0 -1
- package/dist/crypto/declarationDecoder.d.ts +0 -72
- package/dist/crypto/declarationDecoder.d.ts.map +0 -1
- package/dist/crypto/declarationDecoder.js +0 -241
- package/dist/crypto/declarationDecoder.js.map +0 -1
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.d.ts +0 -9
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.d.ts.map +0 -1
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.js +0 -120
- package/dist/crypto/extract/342/200/220cert/342/200/220extensions.js.map +0 -1
- package/dist/crypto/read-extensions.d.ts +0 -2
- package/dist/crypto/read-extensions.d.ts.map +0 -1
- package/dist/crypto/read-extensions.js +0 -81
- package/dist/crypto/read-extensions.js.map +0 -1
- package/dist/crypto/testData.d.ts +0 -31
- package/dist/crypto/testData.d.ts.map +0 -1
- package/dist/crypto/testData.js +0 -131
- package/dist/crypto/testData.js.map +0 -1
- package/dist/crypto/walk-der.d.ts +0 -2
- package/dist/crypto/walk-der.d.ts.map +0 -1
- package/dist/crypto/walk-der.js +0 -165
- package/dist/crypto/walk-der.js.map +0 -1
- package/dist/deviceManager.d.ts.map +0 -1
- package/dist/deviceManager.js.map +0 -1
- package/dist/devices/airConditioner.d.ts.map +0 -1
- package/dist/devices/airConditioner.js.map +0 -1
- package/dist/devices/basicVideoPlayer.d.ts.map +0 -1
- package/dist/devices/basicVideoPlayer.js.map +0 -1
- package/dist/devices/batteryStorage.d.ts.map +0 -1
- package/dist/devices/batteryStorage.js.map +0 -1
- package/dist/devices/castingVideoPlayer.d.ts.map +0 -1
- package/dist/devices/castingVideoPlayer.js.map +0 -1
- package/dist/devices/cooktop.d.ts.map +0 -1
- package/dist/devices/cooktop.js.map +0 -1
- package/dist/devices/dishwasher.d.ts.map +0 -1
- package/dist/devices/dishwasher.js.map +0 -1
- package/dist/devices/evse.d.ts.map +0 -1
- package/dist/devices/evse.js.map +0 -1
- package/dist/devices/export.d.ts.map +0 -1
- package/dist/devices/export.js.map +0 -1
- package/dist/devices/extractorHood.d.ts.map +0 -1
- package/dist/devices/extractorHood.js.map +0 -1
- package/dist/devices/heatPump.d.ts.map +0 -1
- package/dist/devices/heatPump.js.map +0 -1
- package/dist/devices/laundryDryer.d.ts.map +0 -1
- package/dist/devices/laundryDryer.js.map +0 -1
- package/dist/devices/laundryWasher.d.ts.map +0 -1
- package/dist/devices/laundryWasher.js.map +0 -1
- package/dist/devices/microwaveOven.d.ts.map +0 -1
- package/dist/devices/microwaveOven.js.map +0 -1
- package/dist/devices/oven.d.ts.map +0 -1
- package/dist/devices/oven.js.map +0 -1
- package/dist/devices/refrigerator.d.ts.map +0 -1
- package/dist/devices/refrigerator.js.map +0 -1
- package/dist/devices/roboticVacuumCleaner.d.ts.map +0 -1
- package/dist/devices/roboticVacuumCleaner.js.map +0 -1
- package/dist/devices/solarPower.d.ts.map +0 -1
- package/dist/devices/solarPower.js.map +0 -1
- package/dist/devices/speaker.d.ts.map +0 -1
- package/dist/devices/speaker.js.map +0 -1
- package/dist/devices/temperatureControl.d.ts.map +0 -1
- package/dist/devices/temperatureControl.js.map +0 -1
- package/dist/devices/waterHeater.d.ts.map +0 -1
- package/dist/devices/waterHeater.js.map +0 -1
- package/dist/dgram/export.d.ts.map +0 -1
- package/dist/dgram/export.js.map +0 -1
- package/dist/export.d.ts.map +0 -1
- package/dist/export.js.map +0 -1
- package/dist/frontend.d.ts.map +0 -1
- package/dist/frontend.js.map +0 -1
- package/dist/helpers.d.ts.map +0 -1
- package/dist/helpers.js.map +0 -1
- package/dist/jestutils/export.d.ts.map +0 -1
- package/dist/jestutils/export.js.map +0 -1
- package/dist/jestutils/jestHelpers.d.ts.map +0 -1
- package/dist/jestutils/jestHelpers.js.map +0 -1
- package/dist/matter/behaviors.d.ts.map +0 -1
- package/dist/matter/behaviors.js.map +0 -1
- package/dist/matter/clusters.d.ts.map +0 -1
- package/dist/matter/clusters.js.map +0 -1
- package/dist/matter/devices.d.ts.map +0 -1
- package/dist/matter/devices.js.map +0 -1
- package/dist/matter/endpoints.d.ts.map +0 -1
- package/dist/matter/endpoints.js.map +0 -1
- package/dist/matter/export.d.ts.map +0 -1
- package/dist/matter/export.js.map +0 -1
- package/dist/matter/types.d.ts.map +0 -1
- package/dist/matter/types.js.map +0 -1
- package/dist/matterNode.d.ts.map +0 -1
- package/dist/matterNode.js.map +0 -1
- package/dist/matterbridge.d.ts.map +0 -1
- package/dist/matterbridge.js.map +0 -1
- package/dist/matterbridgeAccessoryPlatform.d.ts.map +0 -1
- package/dist/matterbridgeAccessoryPlatform.js.map +0 -1
- package/dist/matterbridgeBehaviors.d.ts.map +0 -1
- package/dist/matterbridgeBehaviors.js.map +0 -1
- package/dist/matterbridgeDeviceTypes.d.ts.map +0 -1
- package/dist/matterbridgeDeviceTypes.js.map +0 -1
- package/dist/matterbridgeDynamicPlatform.d.ts.map +0 -1
- package/dist/matterbridgeDynamicPlatform.js.map +0 -1
- package/dist/matterbridgeEndpoint.d.ts.map +0 -1
- package/dist/matterbridgeEndpoint.js.map +0 -1
- package/dist/matterbridgeEndpointHelpers.d.ts.map +0 -1
- package/dist/matterbridgeEndpointHelpers.js.map +0 -1
- package/dist/matterbridgeEndpointTypes.d.ts.map +0 -1
- package/dist/matterbridgeEndpointTypes.js.map +0 -1
- package/dist/matterbridgePlatform.d.ts.map +0 -1
- package/dist/matterbridgePlatform.js.map +0 -1
- package/dist/mb_coap.d.ts.map +0 -1
- package/dist/mb_coap.js.map +0 -1
- package/dist/mb_health.d.ts.map +0 -1
- package/dist/mb_health.js.map +0 -1
- package/dist/mb_mdns.d.ts.map +0 -1
- package/dist/mb_mdns.js.map +0 -1
- package/dist/pluginManager.d.ts.map +0 -1
- package/dist/pluginManager.js.map +0 -1
- package/dist/spawn.d.ts.map +0 -1
- package/dist/spawn.js.map +0 -1
- package/dist/utils/export.d.ts.map +0 -1
- package/dist/utils/export.js.map +0 -1
- package/dist/workers/brand.d.ts +0 -25
- package/dist/workers/brand.d.ts.map +0 -1
- package/dist/workers/brand.extend.d.ts +0 -10
- package/dist/workers/brand.extend.d.ts.map +0 -1
- package/dist/workers/brand.extend.js +0 -15
- package/dist/workers/brand.extend.js.map +0 -1
- package/dist/workers/brand.invalid.d.ts +0 -9
- package/dist/workers/brand.invalid.d.ts.map +0 -1
- package/dist/workers/brand.invalid.js +0 -19
- package/dist/workers/brand.invalid.js.map +0 -1
- package/dist/workers/brand.js +0 -67
- package/dist/workers/brand.js.map +0 -1
- package/dist/workers/clusterTypes.d.ts +0 -47
- package/dist/workers/clusterTypes.d.ts.map +0 -1
- package/dist/workers/clusterTypes.js +0 -57
- package/dist/workers/clusterTypes.js.map +0 -1
- package/dist/workers/frontendWorker.d.ts +0 -2
- package/dist/workers/frontendWorker.d.ts.map +0 -1
- package/dist/workers/frontendWorker.js +0 -90
- package/dist/workers/frontendWorker.js.map +0 -1
- package/dist/workers/helloWorld.d.ts +0 -2
- package/dist/workers/helloWorld.d.ts.map +0 -1
- package/dist/workers/helloWorld.js +0 -135
- package/dist/workers/helloWorld.js.map +0 -1
- package/dist/workers/matterWorker.d.ts +0 -2
- package/dist/workers/matterWorker.d.ts.map +0 -1
- package/dist/workers/matterWorker.js +0 -104
- package/dist/workers/matterWorker.js.map +0 -1
- package/dist/workers/matterbridgeWorker.d.ts +0 -2
- package/dist/workers/matterbridgeWorker.d.ts.map +0 -1
- package/dist/workers/matterbridgeWorker.js +0 -75
- package/dist/workers/matterbridgeWorker.js.map +0 -1
- package/dist/workers/messageLab.d.ts +0 -134
- package/dist/workers/messageLab.d.ts.map +0 -1
- package/dist/workers/messageLab.js +0 -129
- package/dist/workers/messageLab.js.map +0 -1
- package/dist/workers/testWorker.d.ts +0 -2
- package/dist/workers/testWorker.d.ts.map +0 -1
- package/dist/workers/testWorker.js +0 -45
- package/dist/workers/testWorker.js.map +0 -1
- package/dist/workers/usage.d.ts +0 -19
- package/dist/workers/usage.d.ts.map +0 -1
- package/dist/workers/usage.js +0 -140
- package/dist/workers/usage.js.map +0 -1
- package/dist/workers/workerManager.d.ts +0 -115
- package/dist/workers/workerManager.d.ts.map +0 -1
- package/dist/workers/workerManager.js +0 -464
- package/dist/workers/workerManager.js.map +0 -1
- package/dist/workers/workerServer.d.ts +0 -126
- package/dist/workers/workerServer.d.ts.map +0 -1
- package/dist/workers/workerServer.js +0 -340
- package/dist/workers/workerServer.js.map +0 -1
- package/dist/workers/workerTypes.d.ts +0 -23
- package/dist/workers/workerTypes.d.ts.map +0 -1
- package/dist/workers/workerTypes.js +0 -3
- package/dist/workers/workerTypes.js.map +0 -1
|
@@ -1,49 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file contains the class MatterbridgeAccessoryPlatform.
|
|
3
|
-
*
|
|
4
|
-
* @file matterbridgeAccessoryPlatform.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @created 2023-12-29
|
|
7
|
-
* @version 1.0.6
|
|
8
|
-
* @license Apache-2.0
|
|
9
|
-
*
|
|
10
|
-
* Copyright 2023, 2024, 2025 Luca Liguori.
|
|
11
|
-
*
|
|
12
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
-
* you may not use this file except in compliance with the License.
|
|
14
|
-
* You may obtain a copy of the License at
|
|
15
|
-
*
|
|
16
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
-
*
|
|
18
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
-
* See the License for the specific language governing permissions and
|
|
22
|
-
* limitations under the License.
|
|
23
|
-
*/
|
|
24
1
|
import { AnsiLogger } from 'node-ansi-logger';
|
|
25
2
|
import type { PlatformConfig, PlatformMatterbridge } from '@matterbridge/types';
|
|
26
3
|
import { MatterbridgePlatform } from './matterbridgePlatform.js';
|
|
27
|
-
/**
|
|
28
|
-
* Type guard to check whether a value is a MatterbridgeAccessoryPlatform instance.
|
|
29
|
-
*
|
|
30
|
-
* @param {unknown} value - the value to check
|
|
31
|
-
* @returns { value is MatterbridgeAccessoryPlatform } - true if the value is a MatterbridgeAccessoryPlatform instance
|
|
32
|
-
*/
|
|
33
4
|
export declare function isMatterbridgeAccessoryPlatform(value: unknown): value is MatterbridgeAccessoryPlatform;
|
|
34
|
-
/**
|
|
35
|
-
* Represents a Matterbridge accessory platform.
|
|
36
|
-
*
|
|
37
|
-
* This class extends the MatterbridgePlatform class.
|
|
38
|
-
*/
|
|
39
5
|
export declare class MatterbridgeAccessoryPlatform extends MatterbridgePlatform {
|
|
40
|
-
/**
|
|
41
|
-
* Creates an instance of MatterbridgeAccessoryPlatform.
|
|
42
|
-
*
|
|
43
|
-
* @param {PlatformMatterbridge} matterbridge - The PlatformMatterbridge instance.
|
|
44
|
-
* @param {AnsiLogger} log - The logger instance.
|
|
45
|
-
* @param {PlatformConfig} config - The platform configuration.
|
|
46
|
-
*/
|
|
47
6
|
constructor(matterbridge: PlatformMatterbridge, log: AnsiLogger, config: PlatformConfig);
|
|
48
7
|
}
|
|
49
|
-
//# sourceMappingURL=matterbridgeAccessoryPlatform.d.ts.map
|
|
@@ -1,71 +1,22 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file contains the class MatterbridgeAccessoryPlatform.
|
|
3
|
-
*
|
|
4
|
-
* @file matterbridgeAccessoryPlatform.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @created 2023-12-29
|
|
7
|
-
* @version 1.0.6
|
|
8
|
-
* @license Apache-2.0
|
|
9
|
-
*
|
|
10
|
-
* Copyright 2023, 2024, 2025 Luca Liguori.
|
|
11
|
-
*
|
|
12
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
-
* you may not use this file except in compliance with the License.
|
|
14
|
-
* You may obtain a copy of the License at
|
|
15
|
-
*
|
|
16
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
-
*
|
|
18
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
-
* See the License for the specific language governing permissions and
|
|
22
|
-
* limitations under the License.
|
|
23
|
-
*/
|
|
24
|
-
// eslint-disable-next-line no-console
|
|
25
1
|
if (process.argv.includes('--loader') || process.argv.includes('-loader'))
|
|
26
2
|
console.log('\u001B[32mMatterbridgeAccessoryPlatform loaded.\u001B[40;0m');
|
|
27
|
-
// Matterbridge
|
|
28
3
|
import { MatterbridgePlatform } from './matterbridgePlatform.js';
|
|
29
|
-
// Module-private brand
|
|
30
4
|
const MATTERBRIDGE_ACCESSORY_PLATFORM_BRAND = Symbol('MatterbridgeAccessoryPlatform.brand');
|
|
31
|
-
/**
|
|
32
|
-
* Type guard to check whether a value is a MatterbridgeAccessoryPlatform instance.
|
|
33
|
-
*
|
|
34
|
-
* @param {unknown} value - the value to check
|
|
35
|
-
* @returns { value is MatterbridgeAccessoryPlatform } - true if the value is a MatterbridgeAccessoryPlatform instance
|
|
36
|
-
*/
|
|
37
5
|
export function isMatterbridgeAccessoryPlatform(value) {
|
|
38
6
|
if (!value || typeof value !== 'object')
|
|
39
7
|
return false;
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
8
|
const v = value;
|
|
42
|
-
// 1. Brand: must be branded by *this* module instance.
|
|
43
9
|
if (v[MATTERBRIDGE_ACCESSORY_PLATFORM_BRAND] !== true)
|
|
44
10
|
return false;
|
|
45
|
-
// 2. instanceof: strengthen guarantee when there aren't multiple copies of the package.
|
|
46
11
|
if (!(v instanceof MatterbridgeAccessoryPlatform))
|
|
47
12
|
return false;
|
|
48
|
-
// 3. Shape checks: basic sanity for API surface.
|
|
49
13
|
if (typeof v.name !== 'string' || typeof v.type !== 'string' || typeof v.version !== 'string' || typeof v.config !== 'object')
|
|
50
14
|
return false;
|
|
51
15
|
return true;
|
|
52
16
|
}
|
|
53
|
-
/**
|
|
54
|
-
* Represents a Matterbridge accessory platform.
|
|
55
|
-
*
|
|
56
|
-
* This class extends the MatterbridgePlatform class.
|
|
57
|
-
*/
|
|
58
17
|
export class MatterbridgeAccessoryPlatform extends MatterbridgePlatform {
|
|
59
|
-
/**
|
|
60
|
-
* Creates an instance of MatterbridgeAccessoryPlatform.
|
|
61
|
-
*
|
|
62
|
-
* @param {PlatformMatterbridge} matterbridge - The PlatformMatterbridge instance.
|
|
63
|
-
* @param {AnsiLogger} log - The logger instance.
|
|
64
|
-
* @param {PlatformConfig} config - The platform configuration.
|
|
65
|
-
*/
|
|
66
18
|
constructor(matterbridge, log, config) {
|
|
67
19
|
super(matterbridge, log, config);
|
|
68
|
-
// Set the brand
|
|
69
20
|
Object.defineProperty(this, MATTERBRIDGE_ACCESSORY_PLATFORM_BRAND, {
|
|
70
21
|
value: true,
|
|
71
22
|
writable: false,
|
|
@@ -77,4 +28,3 @@ export class MatterbridgeAccessoryPlatform extends MatterbridgePlatform {
|
|
|
77
28
|
this.log.debug(`Matterbridge${this.type} loaded`);
|
|
78
29
|
}
|
|
79
30
|
}
|
|
80
|
-
//# sourceMappingURL=matterbridgeAccessoryPlatform.js.map
|
|
@@ -1,26 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file contains the behavior classes of Matterbridge.
|
|
3
|
-
*
|
|
4
|
-
* @file matterbridgeBehaviors.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @created 2024-11-07
|
|
7
|
-
* @version 1.3.0
|
|
8
|
-
* @license Apache-2.0
|
|
9
|
-
*
|
|
10
|
-
* Copyright 2024, 2025, 2026 Luca Liguori.
|
|
11
|
-
*
|
|
12
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
-
* you may not use this file except in compliance with the License.
|
|
14
|
-
* You may obtain a copy of the License at
|
|
15
|
-
*
|
|
16
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
-
*
|
|
18
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
-
* See the License for the specific language governing permissions and
|
|
22
|
-
* limitations under the License.
|
|
23
|
-
*/
|
|
24
1
|
import { AnsiLogger } from 'node-ansi-logger';
|
|
25
2
|
import { MaybePromise, NamedHandler } from '@matter/general';
|
|
26
3
|
import { Behavior } from '@matter/node';
|
|
@@ -2425,4 +2402,3 @@ export declare class MatterbridgeDeviceEnergyManagementModeServer extends Device
|
|
|
2425
2402
|
changeToMode(request: ModeBase.ChangeToModeRequest): MaybePromise<ModeBase.ChangeToModeResponse>;
|
|
2426
2403
|
}
|
|
2427
2404
|
export {};
|
|
2428
|
-
//# sourceMappingURL=matterbridgeBehaviors.d.ts.map
|
|
@@ -1,28 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file contains the behavior classes of Matterbridge.
|
|
3
|
-
*
|
|
4
|
-
* @file matterbridgeBehaviors.ts
|
|
5
|
-
* @author Luca Liguori
|
|
6
|
-
* @created 2024-11-07
|
|
7
|
-
* @version 1.3.0
|
|
8
|
-
* @license Apache-2.0
|
|
9
|
-
*
|
|
10
|
-
* Copyright 2024, 2025, 2026 Luca Liguori.
|
|
11
|
-
*
|
|
12
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13
|
-
* you may not use this file except in compliance with the License.
|
|
14
|
-
* You may obtain a copy of the License at
|
|
15
|
-
*
|
|
16
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
17
|
-
*
|
|
18
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
19
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
20
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
21
|
-
* See the License for the specific language governing permissions and
|
|
22
|
-
* limitations under the License.
|
|
23
|
-
*/
|
|
24
1
|
import { Behavior } from '@matter/node';
|
|
25
|
-
// @matter clusters
|
|
26
2
|
import { BooleanStateConfiguration } from '@matter/types/clusters/boolean-state-configuration';
|
|
27
3
|
import { ColorControl } from '@matter/types/clusters/color-control';
|
|
28
4
|
import { FanControl } from '@matter/types/clusters/fan-control';
|
|
@@ -36,7 +12,6 @@ import { ServiceArea } from '@matter/types/clusters/service-area';
|
|
|
36
12
|
import { DeviceEnergyManagement } from '@matter/types/clusters/device-energy-management';
|
|
37
13
|
import { ResourceMonitoring } from '@matter/types/clusters/resource-monitoring';
|
|
38
14
|
import { DeviceEnergyManagementMode } from '@matter/types/clusters/device-energy-management-mode';
|
|
39
|
-
// @matter behaviors
|
|
40
15
|
import { IdentifyServer } from '@matter/node/behaviors/identify';
|
|
41
16
|
import { OnOffServer } from '@matter/node/behaviors/on-off';
|
|
42
17
|
import { LevelControlServer } from '@matter/node/behaviors/level-control';
|
|
@@ -262,7 +237,6 @@ export class MatterbridgeLiftWindowCoveringServer extends WindowCoveringServer.w
|
|
|
262
237
|
super.goToLiftPercentage(request);
|
|
263
238
|
}
|
|
264
239
|
async handleMovement(type, reversed, direction, targetPercent100ths) {
|
|
265
|
-
// Do nothing here, as the device will handle the movement
|
|
266
240
|
}
|
|
267
241
|
}
|
|
268
242
|
export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServer.with(WindowCovering.Feature.Lift, WindowCovering.Feature.PositionAwareLift, WindowCovering.Feature.Tilt, WindowCovering.Feature.PositionAwareTilt) {
|
|
@@ -302,7 +276,6 @@ export class MatterbridgeLiftTiltWindowCoveringServer extends WindowCoveringServ
|
|
|
302
276
|
super.goToTiltPercentage(request);
|
|
303
277
|
}
|
|
304
278
|
async handleMovement(type, reversed, direction, targetPercent100ths) {
|
|
305
|
-
// Do nothing here, as the device will handle the movement
|
|
306
279
|
}
|
|
307
280
|
}
|
|
308
281
|
export class MatterbridgeDoorLockServer extends DoorLockServer {
|
|
@@ -344,8 +317,6 @@ export class MatterbridgeFanControlServer extends FanControlServer.with(FanContr
|
|
|
344
317
|
this.state.percentCurrent = Math.max(this.state.percentCurrent - 10, request.lowestOff ? 0 : 10);
|
|
345
318
|
}
|
|
346
319
|
device.log.debug('Set percentCurrent to:', this.state.percentCurrent);
|
|
347
|
-
// step is not implemented in matter.js
|
|
348
|
-
// super.step(request);
|
|
349
320
|
}
|
|
350
321
|
}
|
|
351
322
|
export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode) {
|
|
@@ -369,10 +340,8 @@ export class MatterbridgeThermostatServer extends ThermostatServer.with(Thermost
|
|
|
369
340
|
this.state.occupiedCoolingSetpoint = setpoint * 100;
|
|
370
341
|
device.log.debug(`Set occupiedCoolingSetpoint to ${setpoint}`);
|
|
371
342
|
}
|
|
372
|
-
// super.setpointRaiseLower(request);
|
|
373
343
|
}
|
|
374
344
|
}
|
|
375
|
-
// istanbul ignore next
|
|
376
345
|
export class MatterbridgePresetThermostatServer extends ThermostatServer.with(Thermostat.Feature.Presets, Thermostat.Feature.Cooling, Thermostat.Feature.Heating, Thermostat.Feature.AutoMode) {
|
|
377
346
|
setpointRaiseLower(request) {
|
|
378
347
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
@@ -394,14 +363,12 @@ export class MatterbridgePresetThermostatServer extends ThermostatServer.with(Th
|
|
|
394
363
|
this.state.occupiedCoolingSetpoint = setpoint * 100;
|
|
395
364
|
device.log.debug(`Set occupiedCoolingSetpoint to ${setpoint}`);
|
|
396
365
|
}
|
|
397
|
-
// super.setpointRaiseLower(request);
|
|
398
366
|
}
|
|
399
367
|
setActivePresetRequest(request) {
|
|
400
368
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
401
369
|
device.log.info(`Setting preset to ${request.presetHandle} (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
402
370
|
device.commandHandler.executeHandler('setActivePresetRequest', { request, cluster: ThermostatServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
403
371
|
device.log.debug(`MatterbridgePresetThermostatServer: setActivePresetRequest called with presetHandle: ${request.presetHandle}`);
|
|
404
|
-
// super.setActivePresetRequest(request);
|
|
405
372
|
}
|
|
406
373
|
}
|
|
407
374
|
export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigurationAndControlServer.with(ValveConfigurationAndControl.Feature.Level) {
|
|
@@ -417,8 +384,6 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
|
|
|
417
384
|
this.state.openDuration = request.openDuration ?? this.state.defaultOpenDuration;
|
|
418
385
|
if (this.state.openDuration === null)
|
|
419
386
|
this.state.remainingDuration = null;
|
|
420
|
-
// open is not implemented in matter.js
|
|
421
|
-
// super.open(request);
|
|
422
387
|
}
|
|
423
388
|
close() {
|
|
424
389
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
@@ -431,8 +396,6 @@ export class MatterbridgeValveConfigurationAndControlServer extends ValveConfigu
|
|
|
431
396
|
this.state.currentLevel = 0;
|
|
432
397
|
this.state.openDuration = null;
|
|
433
398
|
this.state.remainingDuration = null;
|
|
434
|
-
// close is not implemented in matter.js
|
|
435
|
-
// super.close();
|
|
436
399
|
}
|
|
437
400
|
}
|
|
438
401
|
export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(SmokeCoAlarm.Feature.SmokeAlarm, SmokeCoAlarm.Feature.CoAlarm) {
|
|
@@ -441,8 +404,6 @@ export class MatterbridgeSmokeCoAlarmServer extends SmokeCoAlarmServer.with(Smok
|
|
|
441
404
|
device.log.info(`Testing SmokeCOAlarm (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
442
405
|
device.commandHandler.executeHandler('selfTestRequest', { request: {}, cluster: SmokeCoAlarmServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
443
406
|
device.log.debug(`MatterbridgeSmokeCoAlarmServer: selfTestRequest called`);
|
|
444
|
-
// selfTestRequest is not implemented in matter.js
|
|
445
|
-
// super.selfTestRequest();
|
|
446
407
|
}
|
|
447
408
|
}
|
|
448
409
|
export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateConfigurationServer.with(BooleanStateConfiguration.Feature.Visual, BooleanStateConfiguration.Feature.Audible, BooleanStateConfiguration.Feature.SensitivityLevel) {
|
|
@@ -451,13 +412,10 @@ export class MatterbridgeBooleanStateConfigurationServer extends BooleanStateCon
|
|
|
451
412
|
device.log.info(`Enabling/disabling alarm ${request.alarmsToEnableDisable} (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
452
413
|
device.commandHandler.executeHandler('enableDisableAlarm', { request, cluster: BooleanStateConfigurationServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
453
414
|
device.log.debug(`MatterbridgeBooleanStateConfigurationServer: enableDisableAlarm called`);
|
|
454
|
-
// enableDisableAlarm is not implemented in matter.js
|
|
455
|
-
// super.enableDisableAlarm(request);
|
|
456
415
|
}
|
|
457
416
|
}
|
|
458
417
|
export class MatterbridgeSwitchServer extends SwitchServer {
|
|
459
418
|
initialize() {
|
|
460
|
-
// Do nothing here, as the device will handle the switch logic: we need to convert something like "single" into the appropriate sequence of state changes and events
|
|
461
419
|
}
|
|
462
420
|
}
|
|
463
421
|
export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
@@ -466,7 +424,7 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
|
466
424
|
device.log.debug('MatterbridgeOperationalStateServer initialized: setting operational state to Stopped');
|
|
467
425
|
this.state.operationalState = OperationalState.OperationalStateEnum.Stopped;
|
|
468
426
|
this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' };
|
|
469
|
-
super.initialize();
|
|
427
|
+
super.initialize();
|
|
470
428
|
}
|
|
471
429
|
pause() {
|
|
472
430
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
@@ -475,8 +433,6 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
|
475
433
|
device.log.debug('MatterbridgeOperationalStateServer: pause called setting operational state to Paused');
|
|
476
434
|
this.state.operationalState = OperationalState.OperationalStateEnum.Paused;
|
|
477
435
|
this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' };
|
|
478
|
-
// pause is not implemented in matter.js
|
|
479
|
-
// return super.pause();
|
|
480
436
|
return {
|
|
481
437
|
commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' },
|
|
482
438
|
};
|
|
@@ -488,8 +444,6 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
|
488
444
|
device.log.debug('MatterbridgeOperationalStateServer: stop called setting operational state to Stopped');
|
|
489
445
|
this.state.operationalState = OperationalState.OperationalStateEnum.Stopped;
|
|
490
446
|
this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' };
|
|
491
|
-
// stop is not implemented in matter.js
|
|
492
|
-
// return super.stop();
|
|
493
447
|
return {
|
|
494
448
|
commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' },
|
|
495
449
|
};
|
|
@@ -501,8 +455,6 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
|
501
455
|
device.log.debug('MatterbridgeOperationalStateServer: start called setting operational state to Running');
|
|
502
456
|
this.state.operationalState = OperationalState.OperationalStateEnum.Running;
|
|
503
457
|
this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' };
|
|
504
|
-
// start is not implemented in matter.js
|
|
505
|
-
// return super.start();
|
|
506
458
|
return {
|
|
507
459
|
commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' },
|
|
508
460
|
};
|
|
@@ -514,8 +466,6 @@ export class MatterbridgeOperationalStateServer extends OperationalStateServer {
|
|
|
514
466
|
device.log.debug('MatterbridgeOperationalStateServer: resume called setting operational state to Running');
|
|
515
467
|
this.state.operationalState = OperationalState.OperationalStateEnum.Running;
|
|
516
468
|
this.state.operationalError = { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' };
|
|
517
|
-
// resume is not implemented in matter.js
|
|
518
|
-
// return super.resume();
|
|
519
469
|
return {
|
|
520
470
|
commandResponseState: { errorStateId: OperationalState.ErrorState.NoError, errorStateDetails: 'Fully operational' },
|
|
521
471
|
};
|
|
@@ -536,7 +486,6 @@ export class MatterbridgeServiceAreaServer extends ServiceAreaServer {
|
|
|
536
486
|
this.state.selectedAreas = request.newAreas;
|
|
537
487
|
device.log.debug(`MatterbridgeServiceAreaServer selectAreas called with: ${request.newAreas.map((area) => area.toString()).join(', ')}`);
|
|
538
488
|
return super.selectAreas(request);
|
|
539
|
-
// return { status: ServiceArea.SelectAreasStatus.Success, statusText: 'Succesfully selected new areas' };
|
|
540
489
|
}
|
|
541
490
|
}
|
|
542
491
|
export class MatterbridgeModeSelectServer extends ModeSelectServer {
|
|
@@ -553,8 +502,8 @@ export class MatterbridgeHepaFilterMonitoringServer extends HepaFilterMonitoring
|
|
|
553
502
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
554
503
|
device.log.info(`Resetting condition (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
555
504
|
device.commandHandler.executeHandler('resetCondition', { cluster: MatterbridgeHepaFilterMonitoringServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
556
|
-
this.state.condition = 100;
|
|
557
|
-
this.state.lastChangedTime = Math.floor(new Date().getTime() / 1000);
|
|
505
|
+
this.state.condition = 100;
|
|
506
|
+
this.state.lastChangedTime = Math.floor(new Date().getTime() / 1000);
|
|
558
507
|
device.log.debug(`MatterbridgeHepaFilterMonitoringServer: resetCondition called`);
|
|
559
508
|
}
|
|
560
509
|
}
|
|
@@ -563,8 +512,8 @@ export class MatterbridgeActivatedCarbonFilterMonitoringServer extends Activated
|
|
|
563
512
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
564
513
|
device.log.info(`Resetting condition (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
565
514
|
device.commandHandler.executeHandler('resetCondition', { cluster: MatterbridgeActivatedCarbonFilterMonitoringServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
566
|
-
this.state.condition = 100;
|
|
567
|
-
this.state.lastChangedTime = Math.floor(new Date().getTime() / 1000);
|
|
515
|
+
this.state.condition = 100;
|
|
516
|
+
this.state.lastChangedTime = Math.floor(new Date().getTime() / 1000);
|
|
568
517
|
device.log.debug(`MatterbridgeActivatedCarbonFilterMonitoringServer: resetCondition called`);
|
|
569
518
|
}
|
|
570
519
|
}
|
|
@@ -574,18 +523,12 @@ export class MatterbridgeDeviceEnergyManagementServer extends DeviceEnergyManage
|
|
|
574
523
|
device.log.info(`Adjusting power to ${request.power} duration ${request.duration} cause ${request.cause} (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
575
524
|
device.commandHandler.executeHandler('powerAdjustRequest', { request, cluster: DeviceEnergyManagementServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
576
525
|
device.log.debug(`MatterbridgeDeviceEnergyManagementServer powerAdjustRequest called with power ${request.power} duration ${request.duration} cause ${request.cause}`);
|
|
577
|
-
// The implementation is responsible for setting the device accordingly with the powerAdjustRequest command
|
|
578
|
-
// powerAdjustRequest is not implemented in matter.js
|
|
579
|
-
// return super.powerAdjustRequest();
|
|
580
526
|
}
|
|
581
527
|
cancelPowerAdjustRequest() {
|
|
582
528
|
const device = this.endpoint.stateOf(MatterbridgeServer);
|
|
583
529
|
device.log.info(`Cancelling power adjustment (endpoint ${this.endpoint.maybeId}.${this.endpoint.maybeNumber})`);
|
|
584
530
|
device.commandHandler.executeHandler('cancelPowerAdjustRequest', { cluster: DeviceEnergyManagementServer.id, attributes: this.state, endpoint: this.endpoint });
|
|
585
531
|
device.log.debug(`MatterbridgeDeviceEnergyManagementServer cancelPowerAdjustRequest called`);
|
|
586
|
-
// The implementation is responsible for setting the device accordingly with the cancelPowerAdjustRequest command
|
|
587
|
-
// cancelPowerAdjustRequest is not implemented in matter.js
|
|
588
|
-
// return super.cancelPowerAdjustRequest();
|
|
589
532
|
}
|
|
590
533
|
}
|
|
591
534
|
export class MatterbridgeDeviceEnergyManagementModeServer extends DeviceEnergyManagementModeServer {
|
|
@@ -599,7 +542,6 @@ export class MatterbridgeDeviceEnergyManagementModeServer extends DeviceEnergyMa
|
|
|
599
542
|
return { status: ModeBase.ModeChangeStatus.UnsupportedMode, statusText: 'Unsupported mode' };
|
|
600
543
|
}
|
|
601
544
|
this.state.currentMode = request.newMode;
|
|
602
|
-
// The implementation is responsible for setting the device accordingly with the new mode if this logic is not enough
|
|
603
545
|
if (supported.modeTags.find((tag) => tag.value === DeviceEnergyManagementMode.ModeTag.NoOptimization)) {
|
|
604
546
|
if (this.endpoint.behaviors.has(DeviceEnergyManagementServer))
|
|
605
547
|
this.endpoint.setStateOf(DeviceEnergyManagementServer.with(DeviceEnergyManagement.Feature.PowerForecastReporting, DeviceEnergyManagement.Feature.PowerAdjustment), {
|
|
@@ -614,7 +556,5 @@ export class MatterbridgeDeviceEnergyManagementModeServer extends DeviceEnergyMa
|
|
|
614
556
|
}
|
|
615
557
|
device.log.debug(`MatterbridgeDeviceEnergyManagementModeServer changeToMode called with newMode ${request.newMode} => ${supported.label}`);
|
|
616
558
|
return super.changeToMode(request);
|
|
617
|
-
// return { status: ModeBase.ModeChangeStatus.Success, statusText: 'Success' };
|
|
618
559
|
}
|
|
619
560
|
}
|
|
620
|
-
//# sourceMappingURL=matterbridgeBehaviors.js.map
|