zwave-js 11.0.0 → 11.2.0
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/build/lib/controller/Controller.d.ts +86 -3
- package/build/lib/controller/Controller.d.ts.map +1 -1
- package/build/lib/controller/Controller.js +391 -164
- package/build/lib/controller/Controller.js.map +1 -1
- package/build/lib/controller/Features.js +1 -1
- package/build/lib/controller/Features.js.map +1 -1
- package/build/lib/controller/Inclusion.js +6 -6
- package/build/lib/controller/Inclusion.js.map +1 -1
- package/build/lib/controller/MockControllerBehaviors.d.ts.map +1 -1
- package/build/lib/controller/MockControllerBehaviors.js +3 -2
- package/build/lib/controller/MockControllerBehaviors.js.map +1 -1
- package/build/lib/controller/MockControllerState.js +2 -2
- package/build/lib/controller/MockControllerState.js.map +1 -1
- package/build/lib/controller/NodeInformationFrame.d.ts.map +1 -1
- package/build/lib/controller/NodeInformationFrame.js +6 -1
- package/build/lib/controller/NodeInformationFrame.js.map +1 -1
- package/build/lib/controller/ZWaveSDKVersions.js +1 -1
- package/build/lib/controller/ZWaveSDKVersions.js.map +1 -1
- package/build/lib/controller/_Types.js +1 -1
- package/build/lib/controller/_Types.js.map +1 -1
- package/build/lib/driver/Bootloader.js +1 -1
- package/build/lib/driver/Bootloader.js.map +1 -1
- package/build/lib/driver/Driver.d.ts +44 -12
- package/build/lib/driver/Driver.d.ts.map +1 -1
- package/build/lib/driver/Driver.js +495 -207
- package/build/lib/driver/Driver.js.map +1 -1
- package/build/lib/driver/MessageGenerators.d.ts.map +1 -1
- package/build/lib/driver/MessageGenerators.js +4 -11
- package/build/lib/driver/MessageGenerators.js.map +1 -1
- package/build/lib/driver/NetworkCache.d.ts +5 -0
- package/build/lib/driver/NetworkCache.d.ts.map +1 -1
- package/build/lib/driver/NetworkCache.js +5 -0
- package/build/lib/driver/NetworkCache.js.map +1 -1
- package/build/lib/driver/SerialAPICommandMachine.d.ts +17 -11
- package/build/lib/driver/SerialAPICommandMachine.d.ts.map +1 -1
- package/build/lib/driver/SerialAPICommandMachine.js +16 -6
- package/build/lib/driver/SerialAPICommandMachine.js.map +1 -1
- package/build/lib/driver/StateMachineShared.d.ts +27 -52
- package/build/lib/driver/StateMachineShared.d.ts.map +1 -1
- package/build/lib/driver/StateMachineShared.js +16 -48
- package/build/lib/driver/StateMachineShared.js.map +1 -1
- package/build/lib/node/Node.d.ts +11 -0
- package/build/lib/node/Node.d.ts.map +1 -1
- package/build/lib/node/Node.js +223 -8
- package/build/lib/node/Node.js.map +1 -1
- package/build/lib/node/NodeReadyMachine.d.ts +2 -2
- package/build/lib/node/NodeReadyMachine.d.ts.map +1 -1
- package/build/lib/node/NodeReadyMachine.js.map +1 -1
- package/build/lib/node/NodeStatusMachine.d.ts +2 -2
- package/build/lib/node/NodeStatusMachine.d.ts.map +1 -1
- package/build/lib/node/NodeStatusMachine.js.map +1 -1
- package/build/lib/serialapi/_Types.js +1 -1
- package/build/lib/serialapi/_Types.js.map +1 -1
- package/build/lib/serialapi/application/ApplicationCommandRequest.js +3 -4
- package/build/lib/serialapi/application/ApplicationCommandRequest.js.map +1 -1
- package/build/lib/serialapi/application/ApplicationUpdateRequest.js +13 -21
- package/build/lib/serialapi/application/ApplicationUpdateRequest.js.map +1 -1
- package/build/lib/serialapi/application/BridgeApplicationCommandRequest.js +2 -3
- package/build/lib/serialapi/application/BridgeApplicationCommandRequest.js.map +1 -1
- package/build/lib/serialapi/application/SerialAPIStartedRequest.js +3 -4
- package/build/lib/serialapi/application/SerialAPIStartedRequest.js.map +1 -1
- package/build/lib/serialapi/application/ShutdownMessages.js +4 -6
- package/build/lib/serialapi/application/ShutdownMessages.js.map +1 -1
- package/build/lib/serialapi/capability/GetControllerCapabilitiesMessages.js +4 -6
- package/build/lib/serialapi/capability/GetControllerCapabilitiesMessages.js.map +1 -1
- package/build/lib/serialapi/capability/GetControllerVersionMessages.js +4 -6
- package/build/lib/serialapi/capability/GetControllerVersionMessages.js.map +1 -1
- package/build/lib/serialapi/capability/GetProtocolVersionMessages.js +4 -6
- package/build/lib/serialapi/capability/GetProtocolVersionMessages.js.map +1 -1
- package/build/lib/serialapi/capability/GetSerialApiCapabilitiesMessages.js +4 -6
- package/build/lib/serialapi/capability/GetSerialApiCapabilitiesMessages.js.map +1 -1
- package/build/lib/serialapi/capability/GetSerialApiInitDataMessages.js +4 -6
- package/build/lib/serialapi/capability/GetSerialApiInitDataMessages.js.map +1 -1
- package/build/lib/serialapi/capability/HardResetRequest.js +4 -6
- package/build/lib/serialapi/capability/HardResetRequest.js.map +1 -1
- package/build/lib/serialapi/capability/SerialAPISetupMessages.js +59 -88
- package/build/lib/serialapi/capability/SerialAPISetupMessages.js.map +1 -1
- package/build/lib/serialapi/capability/SetApplicationNodeInformationRequest.js +2 -3
- package/build/lib/serialapi/capability/SetApplicationNodeInformationRequest.js.map +1 -1
- package/build/lib/serialapi/memory/GetControllerIdMessages.js +4 -6
- package/build/lib/serialapi/memory/GetControllerIdMessages.js.map +1 -1
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.js +4 -6
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.js.map +1 -1
- package/build/lib/serialapi/misc/SetRFReceiveModeMessages.js +4 -6
- package/build/lib/serialapi/misc/SetRFReceiveModeMessages.js.map +1 -1
- package/build/lib/serialapi/misc/SetSerialApiTimeoutsMessages.js +4 -6
- package/build/lib/serialapi/misc/SetSerialApiTimeoutsMessages.js.map +1 -1
- package/build/lib/serialapi/misc/SoftResetRequest.js +2 -3
- package/build/lib/serialapi/misc/SoftResetRequest.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/AddNodeToNetworkRequest.js +6 -8
- package/build/lib/serialapi/network-mgmt/AddNodeToNetworkRequest.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/AssignPriorityReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/AssignPriorityReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/AssignPrioritySUCReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/AssignPrioritySUCReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/AssignReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/AssignReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/AssignSUCReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/AssignSUCReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/DeleteReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/DeleteReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/DeleteSUCReturnRouteMessages.js +6 -9
- package/build/lib/serialapi/network-mgmt/DeleteSUCReturnRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/GetNodeProtocolInfoMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/GetNodeProtocolInfoMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/GetPriorityRouteMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/GetPriorityRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/GetRoutingInfoMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/GetRoutingInfoMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/GetSUCNodeIdMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/GetSUCNodeIdMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/IsFailedNodeMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/IsFailedNodeMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/RemoveFailedNodeMessages.js +8 -11
- package/build/lib/serialapi/network-mgmt/RemoveFailedNodeMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/RemoveNodeFromNetworkRequest.js +6 -8
- package/build/lib/serialapi/network-mgmt/RemoveNodeFromNetworkRequest.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/ReplaceFailedNodeRequest.js +8 -11
- package/build/lib/serialapi/network-mgmt/ReplaceFailedNodeRequest.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/RequestNodeInfoMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/RequestNodeInfoMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/RequestNodeNeighborUpdateMessages.js +5 -7
- package/build/lib/serialapi/network-mgmt/RequestNodeNeighborUpdateMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/SetPriorityRouteMessages.js +4 -6
- package/build/lib/serialapi/network-mgmt/SetPriorityRouteMessages.js.map +1 -1
- package/build/lib/serialapi/network-mgmt/SetSUCNodeIDMessages.js +7 -10
- package/build/lib/serialapi/network-mgmt/SetSUCNodeIDMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/ExtNVMReadLongBufferMessages.js +4 -6
- package/build/lib/serialapi/nvm/ExtNVMReadLongBufferMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/ExtNVMReadLongByteMessages.js +4 -6
- package/build/lib/serialapi/nvm/ExtNVMReadLongByteMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/ExtNVMWriteLongBufferMessages.js +4 -6
- package/build/lib/serialapi/nvm/ExtNVMWriteLongBufferMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/ExtNVMWriteLongByteMessages.js +4 -6
- package/build/lib/serialapi/nvm/ExtNVMWriteLongByteMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/FirmwareUpdateNVMMessages.js +29 -43
- package/build/lib/serialapi/nvm/FirmwareUpdateNVMMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/GetNVMIdMessages.js +6 -8
- package/build/lib/serialapi/nvm/GetNVMIdMessages.js.map +1 -1
- package/build/lib/serialapi/nvm/NVMOperationsMessages.js +6 -8
- package/build/lib/serialapi/nvm/NVMOperationsMessages.js.map +1 -1
- package/build/lib/serialapi/transport/SendDataBridgeMessages.js +12 -18
- package/build/lib/serialapi/transport/SendDataBridgeMessages.js.map +1 -1
- package/build/lib/serialapi/transport/SendDataMessages.js +14 -21
- package/build/lib/serialapi/transport/SendDataMessages.js.map +1 -1
- package/package.json +17 -16
- package/build/lib/driver/CommandQueueMachine.d.ts +0 -60
- package/build/lib/driver/CommandQueueMachine.d.ts.map +0 -1
- package/build/lib/driver/CommandQueueMachine.js +0 -259
- package/build/lib/driver/CommandQueueMachine.js.map +0 -1
- package/build/lib/driver/SendThreadMachine.d.ts +0 -97
- package/build/lib/driver/SendThreadMachine.d.ts.map +0 -1
- package/build/lib/driver/SendThreadMachine.js +0 -286
- package/build/lib/driver/SendThreadMachine.js.map +0 -1
- package/build/lib/driver/TransactionMachine.d.ts +0 -30
- package/build/lib/driver/TransactionMachine.d.ts.map +0 -1
- package/build/lib/driver/TransactionMachine.js +0 -250
- package/build/lib/driver/TransactionMachine.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateMachineShared.js","sourceRoot":"","sources":["../../../src/lib/driver/StateMachineShared.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"StateMachineShared.js","sourceRoot":"","sources":["../../../src/lib/driver/StateMachineShared.ts"],"names":[],"mappings":"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"}
|
package/build/lib/node/Node.d.ts
CHANGED
|
@@ -111,6 +111,7 @@ export declare class ZWaveNode extends Endpoint implements SecurityClassOwner, I
|
|
|
111
111
|
/** Whether a SUC return route was configured for this node */
|
|
112
112
|
get hasSUCReturnRoute(): boolean;
|
|
113
113
|
set hasSUCReturnRoute(value: boolean);
|
|
114
|
+
private set associations(value);
|
|
114
115
|
private _deviceConfig;
|
|
115
116
|
/**
|
|
116
117
|
* Contains additional information about this node, loaded from a config file
|
|
@@ -283,6 +284,15 @@ export declare class ZWaveNode extends Endpoint implements SecurityClassOwner, I
|
|
|
283
284
|
private handleZWavePlusGet;
|
|
284
285
|
private handleVersionGet;
|
|
285
286
|
private handleVersionCommandClassGet;
|
|
287
|
+
private handleAGINameGet;
|
|
288
|
+
private handleAGIInfoGet;
|
|
289
|
+
private handleAGICommandListGet;
|
|
290
|
+
private handleAssociationSupportedGroupingsGet;
|
|
291
|
+
private handleAssociationGet;
|
|
292
|
+
private handleAssociationSet;
|
|
293
|
+
private handleAssociationRemove;
|
|
294
|
+
private handleIndicatorSupportedGet;
|
|
295
|
+
private handleIndicatorSet;
|
|
286
296
|
private handleSecurityCommandsSupportedGet;
|
|
287
297
|
private handleSecurity2CommandsSupportedGet;
|
|
288
298
|
/**
|
|
@@ -381,5 +391,6 @@ export declare class ZWaveNode extends Endpoint implements SecurityClassOwner, I
|
|
|
381
391
|
* Returns whether the operation was successful.
|
|
382
392
|
*/
|
|
383
393
|
setDateAndTime(now?: Date): Promise<boolean>;
|
|
394
|
+
sendResetLocallyNotification(): Promise<void>;
|
|
384
395
|
}
|
|
385
396
|
//# sourceMappingURL=Node.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../../src/lib/node/Node.ts"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Node.d.ts","sourceRoot":"","sources":["../../../src/lib/node/Node.ts"],"names":[],"mappings":"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"}
|
package/build/lib/node/Node.js
CHANGED
|
@@ -32,6 +32,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
32
32
|
exports.ZWaveNode = void 0;
|
|
33
33
|
const cc_1 = require("@zwave-js/cc");
|
|
34
34
|
const AssociationCC_1 = require("@zwave-js/cc/AssociationCC");
|
|
35
|
+
const AssociationGroupInfoCC_1 = require("@zwave-js/cc/AssociationGroupInfoCC");
|
|
35
36
|
const BasicCC_1 = require("@zwave-js/cc/BasicCC");
|
|
36
37
|
const CentralSceneCC_1 = require("@zwave-js/cc/CentralSceneCC");
|
|
37
38
|
const ClockCC_1 = require("@zwave-js/cc/ClockCC");
|
|
@@ -78,11 +79,12 @@ const NodeStatistics_1 = require("./NodeStatistics");
|
|
|
78
79
|
const NodeStatusMachine_1 = require("./NodeStatusMachine");
|
|
79
80
|
const _Types_1 = require("./_Types");
|
|
80
81
|
const nodeUtils = __importStar(require("./utils"));
|
|
82
|
+
const MAX_ASSOCIATIONS = 1;
|
|
81
83
|
/**
|
|
82
84
|
* A ZWaveNode represents a node in a Z-Wave network. It is also an instance
|
|
83
85
|
* of its root endpoint (index 0)
|
|
84
86
|
*/
|
|
85
|
-
let ZWaveNode = class ZWaveNode extends Endpoint_1.Endpoint {
|
|
87
|
+
let ZWaveNode = exports.ZWaveNode = class ZWaveNode extends Endpoint_1.Endpoint {
|
|
86
88
|
constructor(id, driver, deviceClass, supportedCCs = [], controlledCCs = [], valueDB) {
|
|
87
89
|
// Define this node's intrinsic endpoint as the root device (0)
|
|
88
90
|
super(id, driver, 0, deviceClass, supportedCCs);
|
|
@@ -575,6 +577,13 @@ let ZWaveNode = class ZWaveNode extends Endpoint_1.Endpoint {
|
|
|
575
577
|
set hasSUCReturnRoute(value) {
|
|
576
578
|
this.driver.cacheSet(NetworkCache_1.cacheKeys.node(this.id).hasSUCReturnRoute, value);
|
|
577
579
|
}
|
|
580
|
+
/** @internal Which associations are currently configured */
|
|
581
|
+
get associations() {
|
|
582
|
+
return (this.driver.cacheGet(NetworkCache_1.cacheKeys.node(this.id).associations(1)) ?? []);
|
|
583
|
+
}
|
|
584
|
+
set associations(value) {
|
|
585
|
+
this.driver.cacheSet(NetworkCache_1.cacheKeys.node(this.id).associations(1), value);
|
|
586
|
+
}
|
|
578
587
|
/**
|
|
579
588
|
* Contains additional information about this node, loaded from a config file
|
|
580
589
|
*/
|
|
@@ -1490,25 +1499,31 @@ protocol version: ${this.protocolVersion}`;
|
|
|
1490
1499
|
// At this point we may need to make some changes to the CCs the device reports
|
|
1491
1500
|
this.applyCommandClassesCompatFlag();
|
|
1492
1501
|
}
|
|
1502
|
+
// The Wakeup interview should be done as early as possible
|
|
1503
|
+
if (this.supportsCC(core_1.CommandClasses["Wake Up"])) {
|
|
1504
|
+
this.driver.controllerLog.logNode(this.nodeId, "Root device interview: Wake Up", "silly");
|
|
1505
|
+
await interviewEndpoint(this, core_1.CommandClasses["Wake Up"]);
|
|
1506
|
+
}
|
|
1493
1507
|
// Don't offer or interview the Basic CC if any actuator CC is supported - except if the config files forbid us
|
|
1494
1508
|
// to map the Basic CC to other CCs or expose Basic Set as an event
|
|
1495
1509
|
this.modifySupportedCCBeforeInterview(this);
|
|
1496
1510
|
// We determine the correct interview order of the remaining CCs by topologically sorting two dependency graph
|
|
1497
1511
|
// In order to avoid emitting unnecessary value events for the root endpoint,
|
|
1498
1512
|
// we defer the application CC interview until after the other endpoints have been interviewed
|
|
1499
|
-
const
|
|
1513
|
+
const priorityCCs = [
|
|
1500
1514
|
core_1.CommandClasses.Security,
|
|
1501
1515
|
core_1.CommandClasses["Security 2"],
|
|
1502
1516
|
core_1.CommandClasses["Manufacturer Specific"],
|
|
1503
1517
|
core_1.CommandClasses.Version,
|
|
1518
|
+
core_1.CommandClasses["Wake Up"],
|
|
1519
|
+
];
|
|
1520
|
+
const rootInterviewGraphBeforeEndpoints = this.buildCCInterviewGraph([
|
|
1521
|
+
...priorityCCs,
|
|
1504
1522
|
...core_1.applicationCCs,
|
|
1505
1523
|
]);
|
|
1506
1524
|
let rootInterviewOrderBeforeEndpoints;
|
|
1507
1525
|
const rootInterviewGraphAfterEndpoints = this.buildCCInterviewGraph([
|
|
1508
|
-
|
|
1509
|
-
core_1.CommandClasses["Security 2"],
|
|
1510
|
-
core_1.CommandClasses["Manufacturer Specific"],
|
|
1511
|
-
core_1.CommandClasses.Version,
|
|
1526
|
+
...priorityCCs,
|
|
1512
1527
|
...core_1.nonApplicationCCs,
|
|
1513
1528
|
]);
|
|
1514
1529
|
let rootInterviewOrderAfterEndpoints;
|
|
@@ -2050,6 +2065,33 @@ protocol version: ${this.protocolVersion}`;
|
|
|
2050
2065
|
else if (command instanceof VersionCC_1.VersionCCCommandClassGet) {
|
|
2051
2066
|
return this.handleVersionCommandClassGet(command);
|
|
2052
2067
|
}
|
|
2068
|
+
else if (command instanceof AssociationGroupInfoCC_1.AssociationGroupInfoCCNameGet) {
|
|
2069
|
+
return this.handleAGINameGet(command);
|
|
2070
|
+
}
|
|
2071
|
+
else if (command instanceof AssociationGroupInfoCC_1.AssociationGroupInfoCCInfoGet) {
|
|
2072
|
+
return this.handleAGIInfoGet(command);
|
|
2073
|
+
}
|
|
2074
|
+
else if (command instanceof AssociationGroupInfoCC_1.AssociationGroupInfoCCCommandListGet) {
|
|
2075
|
+
return this.handleAGICommandListGet(command);
|
|
2076
|
+
}
|
|
2077
|
+
else if (command instanceof AssociationCC_1.AssociationCCSupportedGroupingsGet) {
|
|
2078
|
+
return this.handleAssociationSupportedGroupingsGet(command);
|
|
2079
|
+
}
|
|
2080
|
+
else if (command instanceof AssociationCC_1.AssociationCCGet) {
|
|
2081
|
+
return this.handleAssociationGet(command);
|
|
2082
|
+
}
|
|
2083
|
+
else if (command instanceof AssociationCC_1.AssociationCCSet) {
|
|
2084
|
+
return this.handleAssociationSet(command);
|
|
2085
|
+
}
|
|
2086
|
+
else if (command instanceof AssociationCC_1.AssociationCCRemove) {
|
|
2087
|
+
return this.handleAssociationRemove(command);
|
|
2088
|
+
}
|
|
2089
|
+
else if (command instanceof cc_1.IndicatorCCSupportedGet) {
|
|
2090
|
+
return this.handleIndicatorSupportedGet(command);
|
|
2091
|
+
}
|
|
2092
|
+
else if (command instanceof cc_1.IndicatorCCSet) {
|
|
2093
|
+
return this.handleIndicatorSet(command);
|
|
2094
|
+
}
|
|
2053
2095
|
else if (command instanceof cc_1.InclusionControllerCCInitiate) {
|
|
2054
2096
|
// Inclusion controller commands are handled by the controller class
|
|
2055
2097
|
if (command.step === cc_1.InclusionControllerStep.ProxyInclusionReplace) {
|
|
@@ -2614,6 +2656,175 @@ protocol version: ${this.protocolVersion}`;
|
|
|
2614
2656
|
});
|
|
2615
2657
|
await api.reportCCVersion(command.requestedCC);
|
|
2616
2658
|
}
|
|
2659
|
+
async handleAGINameGet(command) {
|
|
2660
|
+
if (command.groupId !== 1) {
|
|
2661
|
+
// We only "support" the lifeline group
|
|
2662
|
+
return;
|
|
2663
|
+
}
|
|
2664
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2665
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2666
|
+
// Using the commandClasses property would throw in that case
|
|
2667
|
+
const api = endpoint
|
|
2668
|
+
.createAPI(core_1.CommandClasses["Association Group Information"], false)
|
|
2669
|
+
.withOptions({
|
|
2670
|
+
// Answer with the same encapsulation as asked
|
|
2671
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2672
|
+
});
|
|
2673
|
+
await api.reportGroupName(1, "Lifeline");
|
|
2674
|
+
}
|
|
2675
|
+
async handleAGIInfoGet(command) {
|
|
2676
|
+
if (!command.listMode && command.groupId !== 1) {
|
|
2677
|
+
// We only "support" the lifeline group
|
|
2678
|
+
return;
|
|
2679
|
+
}
|
|
2680
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2681
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2682
|
+
// Using the commandClasses property would throw in that case
|
|
2683
|
+
const api = endpoint
|
|
2684
|
+
.createAPI(core_1.CommandClasses["Association Group Information"], false)
|
|
2685
|
+
.withOptions({
|
|
2686
|
+
// Answer with the same encapsulation as asked
|
|
2687
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2688
|
+
});
|
|
2689
|
+
await api.reportGroupInfo({
|
|
2690
|
+
isListMode: command.listMode ?? false,
|
|
2691
|
+
hasDynamicInfo: false,
|
|
2692
|
+
groups: [
|
|
2693
|
+
{
|
|
2694
|
+
groupId: 1,
|
|
2695
|
+
eventCode: 0,
|
|
2696
|
+
profile: cc_1.AssociationGroupInfoProfile["General: Lifeline"],
|
|
2697
|
+
mode: 0, // ignored anyways
|
|
2698
|
+
},
|
|
2699
|
+
],
|
|
2700
|
+
});
|
|
2701
|
+
}
|
|
2702
|
+
async handleAGICommandListGet(command) {
|
|
2703
|
+
if (command.groupId !== 1) {
|
|
2704
|
+
// We only "support" the lifeline group
|
|
2705
|
+
return;
|
|
2706
|
+
}
|
|
2707
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2708
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2709
|
+
// Using the commandClasses property would throw in that case
|
|
2710
|
+
const api = endpoint
|
|
2711
|
+
.createAPI(core_1.CommandClasses["Association Group Information"], false)
|
|
2712
|
+
.withOptions({
|
|
2713
|
+
// Answer with the same encapsulation as asked
|
|
2714
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2715
|
+
});
|
|
2716
|
+
await api.reportCommands(command.groupId, new Map([
|
|
2717
|
+
[
|
|
2718
|
+
core_1.CommandClasses["Device Reset Locally"],
|
|
2719
|
+
[cc_1.DeviceResetLocallyCommand.Notification],
|
|
2720
|
+
],
|
|
2721
|
+
]));
|
|
2722
|
+
}
|
|
2723
|
+
async handleAssociationSupportedGroupingsGet(command) {
|
|
2724
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2725
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2726
|
+
// Using the commandClasses property would throw in that case
|
|
2727
|
+
const api = endpoint
|
|
2728
|
+
.createAPI(core_1.CommandClasses.Association, false)
|
|
2729
|
+
.withOptions({
|
|
2730
|
+
// Answer with the same encapsulation as asked
|
|
2731
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2732
|
+
});
|
|
2733
|
+
// We only "support" the lifeline group
|
|
2734
|
+
await api.reportGroupCount(1);
|
|
2735
|
+
}
|
|
2736
|
+
async handleAssociationGet(command) {
|
|
2737
|
+
if (command.groupId !== 1) {
|
|
2738
|
+
// We only "support" the lifeline group
|
|
2739
|
+
return;
|
|
2740
|
+
}
|
|
2741
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2742
|
+
const controllerNode = this.driver.controller.nodes.get(this.driver.controller.ownNodeId);
|
|
2743
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2744
|
+
// Using the commandClasses property would throw in that case
|
|
2745
|
+
const api = endpoint
|
|
2746
|
+
.createAPI(core_1.CommandClasses.Association, false)
|
|
2747
|
+
.withOptions({
|
|
2748
|
+
// Answer with the same encapsulation as asked
|
|
2749
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2750
|
+
});
|
|
2751
|
+
await api.sendReport({
|
|
2752
|
+
groupId: command.groupId,
|
|
2753
|
+
maxNodes: MAX_ASSOCIATIONS,
|
|
2754
|
+
nodeIds: [...(controllerNode?.associations ?? [])],
|
|
2755
|
+
reportsToFollow: 0,
|
|
2756
|
+
});
|
|
2757
|
+
}
|
|
2758
|
+
handleAssociationSet(command) {
|
|
2759
|
+
if (command.groupId !== 1) {
|
|
2760
|
+
// We only "support" the lifeline group
|
|
2761
|
+
return;
|
|
2762
|
+
}
|
|
2763
|
+
const controllerNode = this.driver.controller.nodes.get(this.driver.controller.ownNodeId);
|
|
2764
|
+
if (!controllerNode)
|
|
2765
|
+
return;
|
|
2766
|
+
controllerNode.associations = [
|
|
2767
|
+
...controllerNode.associations,
|
|
2768
|
+
...command.nodeIds,
|
|
2769
|
+
].slice(0, MAX_ASSOCIATIONS);
|
|
2770
|
+
}
|
|
2771
|
+
handleAssociationRemove(command) {
|
|
2772
|
+
// Allow accessing the lifeline group or all groups (which is the same)
|
|
2773
|
+
if (!!command.groupId && command.groupId !== 1) {
|
|
2774
|
+
// We only "support" the lifeline group
|
|
2775
|
+
return;
|
|
2776
|
+
}
|
|
2777
|
+
const controllerNode = this.driver.controller.nodes.get(this.driver.controller.ownNodeId);
|
|
2778
|
+
if (!controllerNode)
|
|
2779
|
+
return;
|
|
2780
|
+
if (!command.nodeIds) {
|
|
2781
|
+
// clear
|
|
2782
|
+
controllerNode.associations = [];
|
|
2783
|
+
}
|
|
2784
|
+
else {
|
|
2785
|
+
controllerNode.associations = controllerNode.associations.filter((nodeId) => !command.nodeIds.includes(nodeId));
|
|
2786
|
+
}
|
|
2787
|
+
}
|
|
2788
|
+
handleIndicatorSupportedGet(command) {
|
|
2789
|
+
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2790
|
+
// We are being queried, so the device may actually not support the CC, just control it.
|
|
2791
|
+
// Using the commandClasses property would throw in that case
|
|
2792
|
+
const api = endpoint
|
|
2793
|
+
.createAPI(core_1.CommandClasses.Indicator, false)
|
|
2794
|
+
.withOptions({
|
|
2795
|
+
// Answer with the same encapsulation as asked
|
|
2796
|
+
encapsulationFlags: command.encapsulationFlags,
|
|
2797
|
+
});
|
|
2798
|
+
switch (command.indicatorId) {
|
|
2799
|
+
case 0:
|
|
2800
|
+
// 0 must be answered with the first supported indicator ID.
|
|
2801
|
+
// We only support identify (0x50)
|
|
2802
|
+
case 0x50:
|
|
2803
|
+
// Identify
|
|
2804
|
+
return api.reportSupported(0x50, [0x03, 0x04, 0x05], 0);
|
|
2805
|
+
default:
|
|
2806
|
+
// A supporting node receiving a non-zero Indicator ID that is
|
|
2807
|
+
// not supported MUST set all fields to 0x00 in the returned response.
|
|
2808
|
+
return api.reportSupported(0, [], 0);
|
|
2809
|
+
}
|
|
2810
|
+
}
|
|
2811
|
+
handleIndicatorSet(command) {
|
|
2812
|
+
// We only support "identify"
|
|
2813
|
+
if (command.values?.length !== 3)
|
|
2814
|
+
return;
|
|
2815
|
+
const [v1, v2, v3] = command.values;
|
|
2816
|
+
if (v1.indicatorId !== 0x50 || v1.propertyId !== 0x03)
|
|
2817
|
+
return;
|
|
2818
|
+
if (v2.indicatorId !== 0x50 || v2.propertyId !== 0x04)
|
|
2819
|
+
return;
|
|
2820
|
+
if (v3.indicatorId !== 0x50 || v3.propertyId !== 0x05)
|
|
2821
|
+
return;
|
|
2822
|
+
this.driver.controllerLog.logNode(this.id, {
|
|
2823
|
+
message: "Received identify command",
|
|
2824
|
+
direction: "inbound",
|
|
2825
|
+
});
|
|
2826
|
+
this.driver.controller.emit("identify");
|
|
2827
|
+
}
|
|
2617
2828
|
async handleSecurityCommandsSupportedGet(command) {
|
|
2618
2829
|
const endpoint = this.getEndpoint(command.endpointIndex) ?? this;
|
|
2619
2830
|
if (this.getHighestSecurityClass() === core_1.SecurityClass.S0_Legacy) {
|
|
@@ -4063,9 +4274,13 @@ ${(0, HealthCheck_1.formatRouteHealthCheckSummary)(this.id, otherNode.id, summar
|
|
|
4063
4274
|
}
|
|
4064
4275
|
return true;
|
|
4065
4276
|
}
|
|
4277
|
+
async sendResetLocallyNotification() {
|
|
4278
|
+
// We don't care if the CC is supported by the receiving node
|
|
4279
|
+
const api = this.createAPI(core_1.CommandClasses["Device Reset Locally"], false);
|
|
4280
|
+
await api.sendNotification();
|
|
4281
|
+
}
|
|
4066
4282
|
};
|
|
4067
|
-
ZWaveNode = __decorate([
|
|
4283
|
+
exports.ZWaveNode = ZWaveNode = __decorate([
|
|
4068
4284
|
(0, shared_1.Mixin)([events_1.EventEmitter, NodeStatistics_1.NodeStatisticsHost])
|
|
4069
4285
|
], ZWaveNode);
|
|
4070
|
-
exports.ZWaveNode = ZWaveNode;
|
|
4071
4286
|
//# sourceMappingURL=Node.js.map
|