@zwave-js/cc 15.10.0 → 15.11.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.
@@ -324,7 +324,16 @@ let CentralSceneCCNotification = (() => {
324
324
  if (!super.persistValues(ctx))
325
325
  return false;
326
326
  const sceneValue = import_CCValues_generated.CentralSceneCCValues.scene(this.sceneNumber);
327
- this.ensureMetadata(ctx, sceneValue);
327
+ const sceneConfig = ctx.getDeviceConfig?.(this.nodeId)?.scenes?.get(this.sceneNumber);
328
+ if (sceneConfig) {
329
+ this.ensureMetadata(ctx, sceneValue, {
330
+ ...sceneValue.meta,
331
+ label: sceneConfig.label,
332
+ description: sceneConfig.description
333
+ });
334
+ } else {
335
+ this.ensureMetadata(ctx, sceneValue);
336
+ }
328
337
  return true;
329
338
  }
330
339
  sequenceNumber;
@@ -404,10 +413,19 @@ let CentralSceneCCSupportedReport = (() => {
404
413
  persistValues(ctx) {
405
414
  if (!super.persistValues(ctx))
406
415
  return false;
416
+ const deviceConfig = ctx.getDeviceConfig?.(this.nodeId);
407
417
  for (let i = 1; i <= this.sceneCount; i++) {
408
418
  const sceneValue = import_CCValues_generated.CentralSceneCCValues.scene(i);
419
+ const sceneMetadata = { ...sceneValue.meta };
420
+ const sceneConfig = deviceConfig?.scenes?.get(i);
421
+ if (sceneConfig) {
422
+ sceneMetadata.label = sceneConfig.label;
423
+ }
424
+ if (sceneConfig?.description) {
425
+ sceneMetadata.description = sceneConfig.description;
426
+ }
409
427
  this.setMetadata(ctx, sceneValue, {
410
- ...sceneValue.meta,
428
+ ...sceneMetadata,
411
429
  states: (0, import_core.enumValuesToMetadataStates)(import_Types.CentralSceneKeys, this._supportedKeyAttributes.get(i))
412
430
  });
413
431
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/cc/CentralSceneCC.ts"],
4
- "sourcesContent": ["import type { CCEncodingContext, CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype MessageRecord,\n\ttype SupervisionResult,\n\tValueMetadata,\n\ttype WithAddress,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tenumValuesToMetadataStates,\n\tgetCCName,\n\tmaybeUnknownToString,\n\tparseBitMask,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, pick } from \"@zwave-js/shared\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\ttype SetValueImplementation,\n\tthrowUnsupportedProperty,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { CentralSceneCommand, CentralSceneKeys } from \"../lib/_Types.js\";\nimport * as ccUtils from \"../lib/utils.js\";\n\nexport const CentralSceneCCValues = V.defineCCValues(\n\tCommandClasses[\"Central Scene\"],\n\t{\n\t\t...V.staticProperty(\"sceneCount\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"supportsSlowRefresh\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"supportedKeyAttributes\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\n\t\t\t\"slowRefresh\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.Boolean,\n\t\t\t\tlabel: \"Send held down notifications at a slow rate\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"When this is true, KeyHeldDown notifications are sent every 55s. When this is false, the notifications are sent every 200ms.\",\n\t\t\t} as const,\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"scene\",\n\t\t\t\"scene\",\n\t\t\t(sceneNumber: number) => sceneNumber.toString().padStart(3, \"0\"),\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"scene\"\n\t\t\t\t&& typeof propertyKey === \"string\"\n\t\t\t\t&& /^\\d{3}$/.test(propertyKey),\n\t\t\t(sceneNumber: number) => ({\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: `Scene ${sceneNumber.toString().padStart(3, \"0\")}`,\n\t\t\t} as const),\n\t\t\t{ stateful: false } as const,\n\t\t),\n\t},\n);\n\n@API(CommandClasses[\"Central Scene\"])\nexport class CentralSceneCCAPI extends CCAPI {\n\tpublic supportsCommand(cmd: CentralSceneCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase CentralSceneCommand.SupportedGet:\n\t\t\t\treturn this.isSinglecast(); // this is mandatory\n\t\t\tcase CentralSceneCommand.ConfigurationGet:\n\t\t\t\treturn this.version >= 3 && this.isSinglecast();\n\t\t\tcase CentralSceneCommand.ConfigurationSet:\n\t\t\t\treturn this.version >= 3;\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getSupported() {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.SupportedGet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCSupportedGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tCentralSceneCCSupportedReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"sceneCount\",\n\t\t\t\t\"supportsSlowRefresh\",\n\t\t\t\t\"supportedKeyAttributes\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getConfiguration() {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.ConfigurationGet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCConfigurationGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tCentralSceneCCConfigurationReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"slowRefresh\"]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async setConfiguration(\n\t\tslowRefresh: boolean,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.ConfigurationSet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCConfigurationSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tslowRefresh,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(this: CentralSceneCCAPI, { property }, value) {\n\t\t\tif (property !== \"slowRefresh\") {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t\tif (typeof value !== \"boolean\") {\n\t\t\t\tthrowWrongValueType(\n\t\t\t\t\tthis.ccId,\n\t\t\t\t\tproperty,\n\t\t\t\t\t\"boolean\",\n\t\t\t\t\ttypeof value,\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn this.setConfiguration(value);\n\t\t};\n\t}\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(this: CentralSceneCCAPI, { property }) {\n\t\t\tif (property === \"slowRefresh\") {\n\t\t\t\treturn (await this.getConfiguration())?.[property];\n\t\t\t}\n\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t};\n\t}\n}\n\n@commandClass(CommandClasses[\"Central Scene\"])\n@implementedVersion(3)\n@ccValues(CentralSceneCCValues)\nexport class CentralSceneCC extends CommandClass {\n\tdeclare ccCommand: CentralSceneCommand;\n\n\tpublic determineRequiredCCInterviews(): readonly CommandClasses[] {\n\t\treturn [\n\t\t\t...super.determineRequiredCCInterviews(),\n\t\t\tCommandClasses.Association,\n\t\t\tCommandClasses[\"Multi Channel Association\"],\n\t\t\tCommandClasses[\"Association Group Information\"],\n\t\t];\n\t}\n\n\tpublic skipEndpointInterview(): boolean {\n\t\t// Central scene notifications are issued by the root device\n\t\treturn true;\n\t}\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Central Scene\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\t// If one Association group issues CentralScene notifications,\n\t\t// we must associate ourselves with that channel\n\t\ttry {\n\t\t\tawait ccUtils.assignLifelineIssueingCommand(\n\t\t\t\tctx,\n\t\t\t\tendpoint,\n\t\t\t\tthis.ccId,\n\t\t\t\tCentralSceneCommand.Notification,\n\t\t\t);\n\t\t} catch {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: endpoint.index,\n\t\t\t\tmessage: `Configuring associations to receive ${\n\t\t\t\t\tgetCCName(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t)\n\t\t\t\t} commands failed!`,\n\t\t\t\tlevel: \"warn\",\n\t\t\t});\n\t\t}\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: \"Querying supported scenes...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tconst ccSupported = await api.getSupported();\n\t\tif (ccSupported) {\n\t\t\tconst logMessage = `received supported scenes:\n# of scenes: ${ccSupported.sceneCount}\nsupports slow refresh: ${ccSupported.supportsSlowRefresh}`;\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: logMessage,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\t\t} else {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage:\n\t\t\t\t\t\"Querying supported scenes timed out, skipping interview...\",\n\t\t\t\tlevel: \"warn\",\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\t// The slow refresh capability should be enabled whenever possible\n\t\tif (api.version >= 3 && ccSupported?.supportsSlowRefresh) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"Enabling slow refresh capability...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tawait api.setConfiguration(true);\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface CentralSceneCCNotificationOptions {\n\tsequenceNumber: number;\n\tkeyAttribute: CentralSceneKeys;\n\tsceneNumber: number;\n\tslowRefresh?: boolean;\n}\n\n@CCCommand(CentralSceneCommand.Notification)\nexport class CentralSceneCCNotification extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCNotificationOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.keyAttribute = options.keyAttribute;\n\t\tthis.sceneNumber = options.sceneNumber;\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCNotification {\n\t\tvalidatePayload(raw.payload.length >= 3);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst keyAttribute: CentralSceneKeys = raw.payload[1] & 0b111;\n\t\tconst sceneNumber = raw.payload[2];\n\t\tlet slowRefresh: boolean | undefined;\n\t\tif (keyAttribute === CentralSceneKeys.KeyHeldDown) {\n\t\t\t// A receiving node MUST ignore this field if the command is not\n\t\t\t// carrying the Key Held Down key attribute.\n\t\t\tslowRefresh = !!(raw.payload[1] & 0b1000_0000);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\tkeyAttribute,\n\t\t\tsceneNumber,\n\t\t\tslowRefresh,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\t// In case the interview is not yet completed, we still create some basic metadata\n\t\tconst sceneValue = CentralSceneCCValues.scene(this.sceneNumber);\n\t\tthis.ensureMetadata(ctx, sceneValue);\n\n\t\t// The spec behavior is pretty complicated, so we cannot just store\n\t\t// the value and call it a day. Handling of these notifications will\n\t\t// happen in the receiving node class\n\n\t\treturn true;\n\t}\n\n\tpublic readonly sequenceNumber: number;\n\tpublic readonly keyAttribute: CentralSceneKeys;\n\tpublic readonly sceneNumber: number;\n\tpublic readonly slowRefresh: boolean | undefined;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {\n\t\t\t\"sequence number\": this.sequenceNumber,\n\t\t\t\"key attribute\": getEnumMemberName(\n\t\t\t\tCentralSceneKeys,\n\t\t\t\tthis.keyAttribute,\n\t\t\t),\n\t\t\t\"scene number\": this.sceneNumber,\n\t\t};\n\t\tif (this.slowRefresh != undefined) {\n\t\t\tmessage[\"slow refresh\"] = this.slowRefresh;\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface CentralSceneCCSupportedReportOptions {\n\tsceneCount: number;\n\tsupportsSlowRefresh: MaybeNotKnown<boolean>;\n\tsupportedKeyAttributes: Record<number, readonly CentralSceneKeys[]>;\n}\n\n@CCCommand(CentralSceneCommand.SupportedReport)\n@ccValueProperty(\"sceneCount\", CentralSceneCCValues.sceneCount)\n@ccValueProperty(\n\t\"supportsSlowRefresh\",\n\tCentralSceneCCValues.supportsSlowRefresh,\n)\n@ccValueProperty(\n\t\"supportedKeyAttributes\",\n\tCentralSceneCCValues.supportedKeyAttributes,\n)\nexport class CentralSceneCCSupportedReport extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCSupportedReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.sceneCount = options.sceneCount;\n\t\tthis.supportsSlowRefresh = options.supportsSlowRefresh;\n\t\tfor (\n\t\t\tconst [scene, keys] of Object.entries(\n\t\t\t\toptions.supportedKeyAttributes,\n\t\t\t)\n\t\t) {\n\t\t\tthis._supportedKeyAttributes.set(\n\t\t\t\tparseInt(scene),\n\t\t\t\tkeys,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCSupportedReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst sceneCount = raw.payload[0];\n\t\tconst supportsSlowRefresh: MaybeNotKnown<boolean> =\n\t\t\t!!(raw.payload[1] & 0b1000_0000);\n\t\tconst bitMaskBytes = (raw.payload[1] & 0b110) >>> 1;\n\t\tconst identicalKeyAttributes = !!(raw.payload[1] & 0b1);\n\t\tconst numEntries = identicalKeyAttributes ? 1 : sceneCount;\n\t\tvalidatePayload(raw.payload.length >= 2 + bitMaskBytes * numEntries);\n\t\tconst supportedKeyAttributes: Record<\n\t\t\tnumber,\n\t\t\treadonly CentralSceneKeys[]\n\t\t> = {};\n\t\tfor (let i = 0; i < numEntries; i++) {\n\t\t\tconst mask = raw.payload.subarray(\n\t\t\t\t2 + i * bitMaskBytes,\n\t\t\t\t2 + (i + 1) * bitMaskBytes,\n\t\t\t);\n\t\t\tsupportedKeyAttributes[i + 1] = parseBitMask(\n\t\t\t\tmask,\n\t\t\t\tCentralSceneKeys.KeyPressed,\n\t\t\t);\n\t\t}\n\n\t\tif (identicalKeyAttributes) {\n\t\t\t// The key attributes are only transmitted for scene 1, copy them to the others\n\t\t\tfor (let i = 2; i <= sceneCount; i++) {\n\t\t\t\tsupportedKeyAttributes[i] = supportedKeyAttributes[1];\n\t\t\t}\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsceneCount,\n\t\t\tsupportsSlowRefresh,\n\t\t\tsupportedKeyAttributes,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\t// Create/extend metadata for all scenes\n\t\tfor (let i = 1; i <= this.sceneCount; i++) {\n\t\t\tconst sceneValue = CentralSceneCCValues.scene(i);\n\t\t\tthis.setMetadata(ctx, sceneValue, {\n\t\t\t\t...sceneValue.meta,\n\t\t\t\tstates: enumValuesToMetadataStates(\n\t\t\t\t\tCentralSceneKeys,\n\t\t\t\t\tthis._supportedKeyAttributes.get(i),\n\t\t\t\t),\n\t\t\t});\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tpublic readonly sceneCount: number;\n\n\t// TODO: Only offer `slowRefresh` if this is true\n\n\tpublic readonly supportsSlowRefresh: MaybeNotKnown<boolean>;\n\n\tprivate _supportedKeyAttributes = new Map<\n\t\tnumber,\n\t\treadonly CentralSceneKeys[]\n\t>();\n\n\tpublic get supportedKeyAttributes(): ReadonlyMap<\n\t\tnumber,\n\t\treadonly CentralSceneKeys[]\n\t> {\n\t\treturn this._supportedKeyAttributes;\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {\n\t\t\t\"scene count\": this.sceneCount,\n\t\t\t\"supports slow refresh\": maybeUnknownToString(\n\t\t\t\tthis.supportsSlowRefresh,\n\t\t\t),\n\t\t};\n\t\tfor (const [scene, keys] of this.supportedKeyAttributes) {\n\t\t\tmessage[`supported attributes (scene #${scene})`] = keys\n\t\t\t\t.map((k) => `\\n\u00B7 ${getEnumMemberName(CentralSceneKeys, k)}`)\n\t\t\t\t.join(\"\");\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n@CCCommand(CentralSceneCommand.SupportedGet)\n@expectedCCResponse(CentralSceneCCSupportedReport)\nexport class CentralSceneCCSupportedGet extends CentralSceneCC {}\n\n// @publicAPI\nexport interface CentralSceneCCConfigurationReportOptions {\n\tslowRefresh: boolean;\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationReport)\n@ccValueProperty(\"slowRefresh\", CentralSceneCCValues.slowRefresh)\nexport class CentralSceneCCConfigurationReport extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCConfigurationReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCConfigurationReport {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst slowRefresh = !!(raw.payload[0] & 0b1000_0000);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tslowRefresh,\n\t\t});\n\t}\n\n\tpublic readonly slowRefresh: boolean;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"slow refresh\": this.slowRefresh },\n\t\t};\n\t}\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationGet)\n@expectedCCResponse(CentralSceneCCConfigurationReport)\nexport class CentralSceneCCConfigurationGet extends CentralSceneCC {}\n\n// @publicAPI\nexport interface CentralSceneCCConfigurationSetOptions {\n\tslowRefresh: boolean;\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationSet)\n@useSupervision()\nexport class CentralSceneCCConfigurationSet extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCConfigurationSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): CentralSceneCCConfigurationSet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new CentralSceneCCConfigurationSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic slowRefresh: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.slowRefresh ? 0b1000_0000 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"slow refresh\": this.slowRefresh },\n\t\t};\n\t}\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type { CCEncodingContext, CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype MessageRecord,\n\ttype SupervisionResult,\n\tValueMetadata,\n\ttype WithAddress,\n\tZWaveError,\n\tZWaveErrorCodes,\n\tenumValuesToMetadataStates,\n\tgetCCName,\n\tmaybeUnknownToString,\n\tparseBitMask,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, pick } from \"@zwave-js/shared\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\ttype SetValueImplementation,\n\tthrowUnsupportedProperty,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype PersistValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { CentralSceneCommand, CentralSceneKeys } from \"../lib/_Types.js\";\nimport * as ccUtils from \"../lib/utils.js\";\n\nexport const CentralSceneCCValues = V.defineCCValues(\n\tCommandClasses[\"Central Scene\"],\n\t{\n\t\t...V.staticProperty(\"sceneCount\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"supportsSlowRefresh\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"supportedKeyAttributes\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\n\t\t\t\"slowRefresh\",\n\t\t\t{\n\t\t\t\t...ValueMetadata.Boolean,\n\t\t\t\tlabel: \"Send held down notifications at a slow rate\",\n\t\t\t\tdescription:\n\t\t\t\t\t\"When this is true, KeyHeldDown notifications are sent every 55s. When this is false, the notifications are sent every 200ms.\",\n\t\t\t} as const,\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"scene\",\n\t\t\t\"scene\",\n\t\t\t(sceneNumber: number) => sceneNumber.toString().padStart(3, \"0\"),\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"scene\"\n\t\t\t\t&& typeof propertyKey === \"string\"\n\t\t\t\t&& /^\\d{3}$/.test(propertyKey),\n\t\t\t(sceneNumber: number) => ({\n\t\t\t\t...ValueMetadata.ReadOnlyUInt8,\n\t\t\t\tlabel: `Scene ${sceneNumber.toString().padStart(3, \"0\")}`,\n\t\t\t} as const),\n\t\t\t{ stateful: false } as const,\n\t\t),\n\t},\n);\n\n@API(CommandClasses[\"Central Scene\"])\nexport class CentralSceneCCAPI extends CCAPI {\n\tpublic supportsCommand(cmd: CentralSceneCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase CentralSceneCommand.SupportedGet:\n\t\t\t\treturn this.isSinglecast(); // this is mandatory\n\t\t\tcase CentralSceneCommand.ConfigurationGet:\n\t\t\t\treturn this.version >= 3 && this.isSinglecast();\n\t\t\tcase CentralSceneCommand.ConfigurationSet:\n\t\t\t\treturn this.version >= 3;\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getSupported() {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.SupportedGet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCSupportedGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tCentralSceneCCSupportedReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"sceneCount\",\n\t\t\t\t\"supportsSlowRefresh\",\n\t\t\t\t\"supportedKeyAttributes\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\tpublic async getConfiguration() {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.ConfigurationGet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCConfigurationGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tCentralSceneCCConfigurationReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"slowRefresh\"]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async setConfiguration(\n\t\tslowRefresh: boolean,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tCentralSceneCommand,\n\t\t\tCentralSceneCommand.ConfigurationSet,\n\t\t);\n\n\t\tconst cc = new CentralSceneCCConfigurationSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tslowRefresh,\n\t\t});\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(this: CentralSceneCCAPI, { property }, value) {\n\t\t\tif (property !== \"slowRefresh\") {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t\tif (typeof value !== \"boolean\") {\n\t\t\t\tthrowWrongValueType(\n\t\t\t\t\tthis.ccId,\n\t\t\t\t\tproperty,\n\t\t\t\t\t\"boolean\",\n\t\t\t\t\ttypeof value,\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn this.setConfiguration(value);\n\t\t};\n\t}\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(this: CentralSceneCCAPI, { property }) {\n\t\t\tif (property === \"slowRefresh\") {\n\t\t\t\treturn (await this.getConfiguration())?.[property];\n\t\t\t}\n\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t};\n\t}\n}\n\n@commandClass(CommandClasses[\"Central Scene\"])\n@implementedVersion(3)\n@ccValues(CentralSceneCCValues)\nexport class CentralSceneCC extends CommandClass {\n\tdeclare ccCommand: CentralSceneCommand;\n\n\tpublic determineRequiredCCInterviews(): readonly CommandClasses[] {\n\t\treturn [\n\t\t\t...super.determineRequiredCCInterviews(),\n\t\t\tCommandClasses.Association,\n\t\t\tCommandClasses[\"Multi Channel Association\"],\n\t\t\tCommandClasses[\"Association Group Information\"],\n\t\t];\n\t}\n\n\tpublic skipEndpointInterview(): boolean {\n\t\t// Central scene notifications are issued by the root device\n\t\treturn true;\n\t}\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Central Scene\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\t// If one Association group issues CentralScene notifications,\n\t\t// we must associate ourselves with that channel\n\t\ttry {\n\t\t\tawait ccUtils.assignLifelineIssueingCommand(\n\t\t\t\tctx,\n\t\t\t\tendpoint,\n\t\t\t\tthis.ccId,\n\t\t\t\tCentralSceneCommand.Notification,\n\t\t\t);\n\t\t} catch {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: endpoint.index,\n\t\t\t\tmessage: `Configuring associations to receive ${\n\t\t\t\t\tgetCCName(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t)\n\t\t\t\t} commands failed!`,\n\t\t\t\tlevel: \"warn\",\n\t\t\t});\n\t\t}\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: \"Querying supported scenes...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tconst ccSupported = await api.getSupported();\n\t\tif (ccSupported) {\n\t\t\tconst logMessage = `received supported scenes:\n# of scenes: ${ccSupported.sceneCount}\nsupports slow refresh: ${ccSupported.supportsSlowRefresh}`;\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: logMessage,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\t\t} else {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage:\n\t\t\t\t\t\"Querying supported scenes timed out, skipping interview...\",\n\t\t\t\tlevel: \"warn\",\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\t// The slow refresh capability should be enabled whenever possible\n\t\tif (api.version >= 3 && ccSupported?.supportsSlowRefresh) {\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: \"Enabling slow refresh capability...\",\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tawait api.setConfiguration(true);\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface CentralSceneCCNotificationOptions {\n\tsequenceNumber: number;\n\tkeyAttribute: CentralSceneKeys;\n\tsceneNumber: number;\n\tslowRefresh?: boolean;\n}\n\n@CCCommand(CentralSceneCommand.Notification)\nexport class CentralSceneCCNotification extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCNotificationOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.sequenceNumber = options.sequenceNumber;\n\t\tthis.keyAttribute = options.keyAttribute;\n\t\tthis.sceneNumber = options.sceneNumber;\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCNotification {\n\t\tvalidatePayload(raw.payload.length >= 3);\n\t\tconst sequenceNumber = raw.payload[0];\n\t\tconst keyAttribute: CentralSceneKeys = raw.payload[1] & 0b111;\n\t\tconst sceneNumber = raw.payload[2];\n\t\tlet slowRefresh: boolean | undefined;\n\t\tif (keyAttribute === CentralSceneKeys.KeyHeldDown) {\n\t\t\t// A receiving node MUST ignore this field if the command is not\n\t\t\t// carrying the Key Held Down key attribute.\n\t\t\tslowRefresh = !!(raw.payload[1] & 0b1000_0000);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsequenceNumber,\n\t\t\tkeyAttribute,\n\t\t\tsceneNumber,\n\t\t\tslowRefresh,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\t// In case the interview is not yet completed, we still create some basic metadata\n\t\tconst sceneValue = CentralSceneCCValues.scene(this.sceneNumber);\n\n\t\t// Get device configuration to check for custom scene labels\n\t\tconst sceneConfig = ctx.getDeviceConfig?.(this.nodeId as number)\n\t\t\t?.scenes?.get(this.sceneNumber);\n\n\t\tif (sceneConfig) {\n\t\t\t// Ensure metadata with custom label and description\n\t\t\tthis.ensureMetadata(ctx, sceneValue, {\n\t\t\t\t...sceneValue.meta,\n\t\t\t\tlabel: sceneConfig.label,\n\t\t\t\tdescription: sceneConfig.description,\n\t\t\t});\n\t\t} else {\n\t\t\t// Use default metadata\n\t\t\tthis.ensureMetadata(ctx, sceneValue);\n\t\t}\n\n\t\t// The spec behavior is pretty complicated, so we cannot just store\n\t\t// the value and call it a day. Handling of these notifications will\n\t\t// happen in the receiving node class\n\n\t\treturn true;\n\t}\n\n\tpublic readonly sequenceNumber: number;\n\tpublic readonly keyAttribute: CentralSceneKeys;\n\tpublic readonly sceneNumber: number;\n\tpublic readonly slowRefresh: boolean | undefined;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {\n\t\t\t\"sequence number\": this.sequenceNumber,\n\t\t\t\"key attribute\": getEnumMemberName(\n\t\t\t\tCentralSceneKeys,\n\t\t\t\tthis.keyAttribute,\n\t\t\t),\n\t\t\t\"scene number\": this.sceneNumber,\n\t\t};\n\t\tif (this.slowRefresh != undefined) {\n\t\t\tmessage[\"slow refresh\"] = this.slowRefresh;\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface CentralSceneCCSupportedReportOptions {\n\tsceneCount: number;\n\tsupportsSlowRefresh: MaybeNotKnown<boolean>;\n\tsupportedKeyAttributes: Record<number, readonly CentralSceneKeys[]>;\n}\n\n@CCCommand(CentralSceneCommand.SupportedReport)\n@ccValueProperty(\"sceneCount\", CentralSceneCCValues.sceneCount)\n@ccValueProperty(\n\t\"supportsSlowRefresh\",\n\tCentralSceneCCValues.supportsSlowRefresh,\n)\n@ccValueProperty(\n\t\"supportedKeyAttributes\",\n\tCentralSceneCCValues.supportedKeyAttributes,\n)\nexport class CentralSceneCCSupportedReport extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCSupportedReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.sceneCount = options.sceneCount;\n\t\tthis.supportsSlowRefresh = options.supportsSlowRefresh;\n\t\tfor (\n\t\t\tconst [scene, keys] of Object.entries(\n\t\t\t\toptions.supportedKeyAttributes,\n\t\t\t)\n\t\t) {\n\t\t\tthis._supportedKeyAttributes.set(\n\t\t\t\tparseInt(scene),\n\t\t\t\tkeys,\n\t\t\t);\n\t\t}\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCSupportedReport {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst sceneCount = raw.payload[0];\n\t\tconst supportsSlowRefresh: MaybeNotKnown<boolean> =\n\t\t\t!!(raw.payload[1] & 0b1000_0000);\n\t\tconst bitMaskBytes = (raw.payload[1] & 0b110) >>> 1;\n\t\tconst identicalKeyAttributes = !!(raw.payload[1] & 0b1);\n\t\tconst numEntries = identicalKeyAttributes ? 1 : sceneCount;\n\t\tvalidatePayload(raw.payload.length >= 2 + bitMaskBytes * numEntries);\n\t\tconst supportedKeyAttributes: Record<\n\t\t\tnumber,\n\t\t\treadonly CentralSceneKeys[]\n\t\t> = {};\n\t\tfor (let i = 0; i < numEntries; i++) {\n\t\t\tconst mask = raw.payload.subarray(\n\t\t\t\t2 + i * bitMaskBytes,\n\t\t\t\t2 + (i + 1) * bitMaskBytes,\n\t\t\t);\n\t\t\tsupportedKeyAttributes[i + 1] = parseBitMask(\n\t\t\t\tmask,\n\t\t\t\tCentralSceneKeys.KeyPressed,\n\t\t\t);\n\t\t}\n\n\t\tif (identicalKeyAttributes) {\n\t\t\t// The key attributes are only transmitted for scene 1, copy them to the others\n\t\t\tfor (let i = 2; i <= sceneCount; i++) {\n\t\t\t\tsupportedKeyAttributes[i] = supportedKeyAttributes[1];\n\t\t\t}\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsceneCount,\n\t\t\tsupportsSlowRefresh,\n\t\t\tsupportedKeyAttributes,\n\t\t});\n\t}\n\n\tpublic persistValues(ctx: PersistValuesContext): boolean {\n\t\tif (!super.persistValues(ctx)) return false;\n\n\t\t// Get device configuration to check for custom scene labels\n\t\tconst deviceConfig = ctx.getDeviceConfig?.(this.nodeId as number);\n\n\t\t// Create/extend metadata for all scenes\n\t\tfor (let i = 1; i <= this.sceneCount; i++) {\n\t\t\tconst sceneValue = CentralSceneCCValues.scene(i);\n\t\t\tconst sceneMetadata = { ...sceneValue.meta };\n\n\t\t\t// Check if there's a custom configuration for this scene\n\t\t\tconst sceneConfig = deviceConfig?.scenes?.get(i);\n\t\t\tif (sceneConfig) {\n\t\t\t\t// @ts-expect-error The label type is a literal\n\t\t\t\tsceneMetadata.label = sceneConfig.label;\n\t\t\t}\n\t\t\tif (sceneConfig?.description) {\n\t\t\t\t// @ts-expect-error The predefined metadata has no description\n\t\t\t\tsceneMetadata.description = sceneConfig.description;\n\t\t\t}\n\n\t\t\tthis.setMetadata(ctx, sceneValue, {\n\t\t\t\t...sceneMetadata,\n\t\t\t\tstates: enumValuesToMetadataStates(\n\t\t\t\t\tCentralSceneKeys,\n\t\t\t\t\tthis._supportedKeyAttributes.get(i),\n\t\t\t\t),\n\t\t\t});\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tpublic readonly sceneCount: number;\n\n\t// TODO: Only offer `slowRefresh` if this is true\n\n\tpublic readonly supportsSlowRefresh: MaybeNotKnown<boolean>;\n\n\tprivate _supportedKeyAttributes = new Map<\n\t\tnumber,\n\t\treadonly CentralSceneKeys[]\n\t>();\n\n\tpublic get supportedKeyAttributes(): ReadonlyMap<\n\t\tnumber,\n\t\treadonly CentralSceneKeys[]\n\t> {\n\t\treturn this._supportedKeyAttributes;\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {\n\t\t\t\"scene count\": this.sceneCount,\n\t\t\t\"supports slow refresh\": maybeUnknownToString(\n\t\t\t\tthis.supportsSlowRefresh,\n\t\t\t),\n\t\t};\n\t\tfor (const [scene, keys] of this.supportedKeyAttributes) {\n\t\t\tmessage[`supported attributes (scene #${scene})`] = keys\n\t\t\t\t.map((k) => `\\n\u00B7 ${getEnumMemberName(CentralSceneKeys, k)}`)\n\t\t\t\t.join(\"\");\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n@CCCommand(CentralSceneCommand.SupportedGet)\n@expectedCCResponse(CentralSceneCCSupportedReport)\nexport class CentralSceneCCSupportedGet extends CentralSceneCC {}\n\n// @publicAPI\nexport interface CentralSceneCCConfigurationReportOptions {\n\tslowRefresh: boolean;\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationReport)\n@ccValueProperty(\"slowRefresh\", CentralSceneCCValues.slowRefresh)\nexport class CentralSceneCCConfigurationReport extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCConfigurationReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): CentralSceneCCConfigurationReport {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst slowRefresh = !!(raw.payload[0] & 0b1000_0000);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tslowRefresh,\n\t\t});\n\t}\n\n\tpublic readonly slowRefresh: boolean;\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"slow refresh\": this.slowRefresh },\n\t\t};\n\t}\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationGet)\n@expectedCCResponse(CentralSceneCCConfigurationReport)\nexport class CentralSceneCCConfigurationGet extends CentralSceneCC {}\n\n// @publicAPI\nexport interface CentralSceneCCConfigurationSetOptions {\n\tslowRefresh: boolean;\n}\n\n@CCCommand(CentralSceneCommand.ConfigurationSet)\n@useSupervision()\nexport class CentralSceneCCConfigurationSet extends CentralSceneCC {\n\tpublic constructor(\n\t\toptions: WithAddress<CentralSceneCCConfigurationSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.slowRefresh = options.slowRefresh;\n\t}\n\n\tpublic static from(\n\t\t_raw: CCRaw,\n\t\t_ctx: CCParsingContext,\n\t): CentralSceneCCConfigurationSet {\n\t\tthrow new ZWaveError(\n\t\t\t`${this.name}: deserialization not implemented`,\n\t\t\tZWaveErrorCodes.Deserialization_NotImplemented,\n\t\t);\n\n\t\t// return new CentralSceneCCConfigurationSet({\n\t\t// \tnodeId: ctx.sourceNodeId,\n\t\t// });\n\t}\n\n\tpublic slowRefresh: boolean;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.slowRefresh ? 0b1000_0000 : 0]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: { \"slow refresh\": this.slowRefresh },\n\t\t};\n\t}\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CentralSceneCC.d.ts","sourceRoot":"","sources":["../../../src/cc/CentralSceneCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CentralSceneCC.d.ts","sourceRoot":"","sources":["../../../src/cc/CentralSceneCC.ts"],"names":[],"mappings":"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"}
@@ -274,7 +274,21 @@ let CentralSceneCCNotification = (() => {
274
274
  return false;
275
275
  // In case the interview is not yet completed, we still create some basic metadata
276
276
  const sceneValue = CentralSceneCCValues.scene(this.sceneNumber);
277
- this.ensureMetadata(ctx, sceneValue);
277
+ // Get device configuration to check for custom scene labels
278
+ const sceneConfig = ctx.getDeviceConfig?.(this.nodeId)
279
+ ?.scenes?.get(this.sceneNumber);
280
+ if (sceneConfig) {
281
+ // Ensure metadata with custom label and description
282
+ this.ensureMetadata(ctx, sceneValue, {
283
+ ...sceneValue.meta,
284
+ label: sceneConfig.label,
285
+ description: sceneConfig.description,
286
+ });
287
+ }
288
+ else {
289
+ // Use default metadata
290
+ this.ensureMetadata(ctx, sceneValue);
291
+ }
278
292
  // The spec behavior is pretty complicated, so we cannot just store
279
293
  // the value and call it a day. Handling of these notifications will
280
294
  // happen in the receiving node class
@@ -355,11 +369,24 @@ let CentralSceneCCSupportedReport = (() => {
355
369
  persistValues(ctx) {
356
370
  if (!super.persistValues(ctx))
357
371
  return false;
372
+ // Get device configuration to check for custom scene labels
373
+ const deviceConfig = ctx.getDeviceConfig?.(this.nodeId);
358
374
  // Create/extend metadata for all scenes
359
375
  for (let i = 1; i <= this.sceneCount; i++) {
360
376
  const sceneValue = CentralSceneCCValues.scene(i);
377
+ const sceneMetadata = { ...sceneValue.meta };
378
+ // Check if there's a custom configuration for this scene
379
+ const sceneConfig = deviceConfig?.scenes?.get(i);
380
+ if (sceneConfig) {
381
+ // @ts-expect-error The label type is a literal
382
+ sceneMetadata.label = sceneConfig.label;
383
+ }
384
+ if (sceneConfig?.description) {
385
+ // @ts-expect-error The predefined metadata has no description
386
+ sceneMetadata.description = sceneConfig.description;
387
+ }
361
388
  this.setMetadata(ctx, sceneValue, {
362
- ...sceneValue.meta,
389
+ ...sceneMetadata,
363
390
  states: enumValuesToMetadataStates(CentralSceneKeys, this._supportedKeyAttributes.get(i)),
364
391
  });
365
392
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CentralSceneCC.js","sourceRoot":"","sources":["../../../src/cc/CentralSceneCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CentralSceneCC.js","sourceRoot":"","sources":["../../../src/cc/CentralSceneCC.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zwave-js/cc",
3
- "version": "15.10.0",
3
+ "version": "15.11.0",
4
4
  "description": "zwave-js: Command Classes",
5
5
  "keywords": [],
6
6
  "publishConfig": {
@@ -70,9 +70,9 @@
70
70
  "test:dirty": "tsx ../maintenance/src/resolveDirtyTests.ts --run"
71
71
  },
72
72
  "dependencies": {
73
- "@zwave-js/core": "15.10.0",
74
- "@zwave-js/host": "15.10.0",
75
- "@zwave-js/shared": "15.9.0",
73
+ "@zwave-js/core": "15.11.0",
74
+ "@zwave-js/host": "15.11.0",
75
+ "@zwave-js/shared": "15.11.0",
76
76
  "alcalzone-shared": "^5.0.0",
77
77
  "ansi-colors": "^4.1.3",
78
78
  "reflect-metadata": "^0.2.2"
@@ -80,8 +80,8 @@
80
80
  "devDependencies": {
81
81
  "@alcalzone/esm2cjs": "^1.4.1",
82
82
  "@microsoft/api-extractor": "^7.52.8",
83
- "@types/node": "^20.19.2",
84
- "@zwave-js/maintenance": "15.10.0",
83
+ "@types/node": "^20.19.9",
84
+ "@zwave-js/maintenance": "15.11.0",
85
85
  "@zwave-js/transformers": "15.10.0",
86
86
  "del-cli": "^6.0.0",
87
87
  "es-main": "^1.3.0",