@uboness/homebridge-mqtt 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +108 -1
  3. package/dist/Future.d.ts +12 -0
  4. package/dist/Future.d.ts.map +1 -0
  5. package/dist/Future.js +39 -0
  6. package/dist/Future.js.map +1 -0
  7. package/dist/Mqtt.d.ts +24 -2
  8. package/dist/Mqtt.d.ts.map +1 -1
  9. package/dist/Mqtt.js +108 -13
  10. package/dist/Mqtt.js.map +1 -1
  11. package/dist/common.d.ts +1 -0
  12. package/dist/common.d.ts.map +1 -1
  13. package/dist/common.js.map +1 -1
  14. package/dist/service/WindowCovering.d.ts +1 -1
  15. package/dist/service/WindowCovering.d.ts.map +1 -1
  16. package/dist/service/WindowCovering.js +16 -13
  17. package/dist/service/WindowCovering.js.map +1 -1
  18. package/dist/service/characteristic/action/Action.d.ts +21 -0
  19. package/dist/service/characteristic/action/Action.d.ts.map +1 -0
  20. package/dist/service/characteristic/action/Action.js +39 -0
  21. package/dist/service/characteristic/action/Action.js.map +1 -0
  22. package/dist/service/characteristic/action/CommonAction.d.ts +10 -0
  23. package/dist/service/characteristic/action/CommonAction.d.ts.map +1 -0
  24. package/dist/service/characteristic/action/CommonAction.js +15 -0
  25. package/dist/service/characteristic/action/CommonAction.js.map +1 -0
  26. package/dist/service/characteristic/action/MqttAction.d.ts +17 -0
  27. package/dist/service/characteristic/action/MqttAction.d.ts.map +1 -0
  28. package/dist/service/characteristic/action/MqttAction.js +23 -0
  29. package/dist/service/characteristic/action/MqttAction.js.map +1 -0
  30. package/dist/service/characteristic/action/index.d.ts +1 -0
  31. package/dist/service/characteristic/action/index.d.ts.map +1 -0
  32. package/dist/service/characteristic/action/index.js +2 -0
  33. package/dist/service/characteristic/action/index.js.map +1 -0
  34. package/dist/service/characteristic/archetype/BooleanValue.d.ts +2 -0
  35. package/dist/service/characteristic/archetype/BooleanValue.d.ts.map +1 -1
  36. package/dist/service/characteristic/archetype/BooleanValue.js +8 -2
  37. package/dist/service/characteristic/archetype/BooleanValue.js.map +1 -1
  38. package/dist/service/characteristic/archetype/EnumValue.d.ts +2 -0
  39. package/dist/service/characteristic/archetype/EnumValue.d.ts.map +1 -1
  40. package/dist/service/characteristic/archetype/EnumValue.js +8 -2
  41. package/dist/service/characteristic/archetype/EnumValue.js.map +1 -1
  42. package/dist/service/characteristic/archetype/NumericValue.d.ts +2 -0
  43. package/dist/service/characteristic/archetype/NumericValue.d.ts.map +1 -1
  44. package/dist/service/characteristic/archetype/NumericValue.js +8 -2
  45. package/dist/service/characteristic/archetype/NumericValue.js.map +1 -1
  46. package/dist/service/characteristic/archetype/Signal.d.ts.map +1 -1
  47. package/dist/service/characteristic/archetype/Signal.js +0 -2
  48. package/dist/service/characteristic/archetype/Signal.js.map +1 -1
  49. package/dist/service/characteristic/archetype/ZeroOneValue.d.ts +2 -0
  50. package/dist/service/characteristic/archetype/ZeroOneValue.d.ts.map +1 -1
  51. package/dist/service/characteristic/archetype/ZeroOneValue.js +8 -2
  52. package/dist/service/characteristic/archetype/ZeroOneValue.js.map +1 -1
  53. package/dist/service/characteristic/stickyOn.js +5 -5
  54. package/dist/service/characteristic/stickyOn.js.map +1 -1
  55. package/package.json +10 -8
@@ -4,6 +4,7 @@ exports.ZeroOneValue = void 0;
4
4
  const common_js_1 = require("../../../common.js");
5
5
  const common_js_2 = require("./common.js");
6
6
  const Converter_js_1 = require("./Converter.js");
7
+ const Action_1 = require("../action/Action");
7
8
  var ZeroOneValue;
8
9
  (function (ZeroOneValue) {
9
10
  ZeroOneValue.readOnly = (name, charTypeFactory, options) => configurator(name, charTypeFactory, options);
@@ -11,6 +12,7 @@ var ZeroOneValue;
11
12
  ZeroOneValue.readWrite = (name, charTypeFactory, options) => configurator(name, charTypeFactory, options);
12
13
  const isRead = (config) => 'get' in config;
13
14
  const isWrite = (config) => 'set' in config;
15
+ const isPreSet = (config) => isWrite(config) && 'preSet' in config;
14
16
  const configurator = (name, charTypeFactory, options) => {
15
17
  var _a, _b;
16
18
  const onKey = (_a = options === null || options === void 0 ? void 0 : options.onKey) !== null && _a !== void 0 ? _a : 'on';
@@ -19,6 +21,7 @@ var ZeroOneValue;
19
21
  var _a, _b;
20
22
  const [setTopic, setCodec, fullSetTopic] = isWrite(config) ? (0, common_js_2.parseTopic)(config.set, serviceCtx) : [undefined, undefined];
21
23
  const [getTopic, getCodec, fullGetTopic] = isRead(config) ? (0, common_js_2.parseTopic)(config.get, serviceCtx) : [undefined, undefined];
24
+ const preSet = isPreSet(config) ? Action_1.Action.parseAll('preSet', config.preSet) : undefined;
22
25
  const converter = Converter_js_1.Converter.Boolean.resolve((_a = config.converter) !== null && _a !== void 0 ? _a : 'homekit', onKey, offKey);
23
26
  // we need to validate that if on/off converter is used and the `set` topic is configured, then both the 'on' and the 'off'
24
27
  // properties of the converter are set - otherwise, if only the 'on' or the 'off' properties are set, when setting the MQTT
@@ -33,13 +36,16 @@ var ZeroOneValue;
33
36
  const char = ((_b = service.getCharacteristic(charType)) !== null && _b !== void 0 ? _b : service.addCharacteristic(charType));
34
37
  if (setTopic) {
35
38
  const notify = (value, ctx) => setTimeout(() => serviceCtx.emitter.emit(`${name}.set`, value, ctx), 0);
36
- char.onSet((value, ctx) => {
39
+ char.onSet(async (value, ctx) => {
37
40
  var _a;
41
+ if (preSet && !(ctx === null || ctx === void 0 ? void 0 : ctx.fromMqtt)) {
42
+ await preSet.execute(platform, mqtt, accessory, service, serviceCtx);
43
+ }
38
44
  if (!(ctx === null || ctx === void 0 ? void 0 : ctx.fromMqtt) && converter) {
39
45
  const mqttValue = converter.fromHap(value === 1);
40
46
  const publishedValue = (_a = setCodec === null || setCodec === void 0 ? void 0 : setCodec.stringify(mqttValue)) !== null && _a !== void 0 ? _a : mqttValue;
41
47
  platform.logger.debug(`Publishing [${mqtt.id}][${accessory.displayName}][${service.displayName}][${name}] value [${publishedValue}] to topic [${fullSetTopic}]`);
42
- mqtt.publish(setTopic, publishedValue);
48
+ await mqtt.publish(setTopic, publishedValue);
43
49
  }
44
50
  notify(value, ctx);
45
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ZeroOneValue.js","sourceRoot":"","sources":["../../../../src/service/characteristic/archetype/ZeroOneValue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZeroOneValue.js","sourceRoot":"","sources":["../../../../src/service/characteristic/archetype/ZeroOneValue.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.stickyOn = void 0;
4
4
  const common_js_1 = require("../../common.js");
5
- const index_js_1 = require("./archetype/index.js");
5
+ const archetype_1 = require("./archetype");
6
6
  const stickyOn = async (platform, mqtt, accessory, service, config, ctx) => {
7
7
  var _a, _b;
8
- const [setTopic, setJson, fullSetTopic] = (0, index_js_1.parseTopic)(config.set, ctx);
9
- const [getTopic, getJson, fullGetTopic] = (0, index_js_1.parseTopic)(config.get, ctx);
8
+ const [setTopic, setJson, fullSetTopic] = (0, archetype_1.parseTopic)(config.set, ctx);
9
+ const [getTopic, getJson, fullGetTopic] = (0, archetype_1.parseTopic)(config.get, ctx);
10
10
  const publishedValue = (_a = setJson === null || setJson === void 0 ? void 0 : setJson.stringify(config.value)) !== null && _a !== void 0 ? _a : `${config.value}`;
11
11
  const on = ((_b = service.getCharacteristic(platform.Characteristic.On)) !== null && _b !== void 0 ? _b : service.addCharacteristic(platform.Characteristic.On))
12
12
  .onSet(value => {
@@ -18,12 +18,12 @@ const stickyOn = async (platform, mqtt, accessory, service, config, ctx) => {
18
18
  mqtt.publish(setTopic, publishedValue);
19
19
  });
20
20
  const detachable = await mqtt.subscribe(getTopic, value => {
21
- const mqttValue = !getJson ? (0, index_js_1.parseMqttValue)(value) : getJson.parse(value);
21
+ const mqttValue = !getJson ? (0, archetype_1.parseMqttValue)(value) : getJson.parse(value);
22
22
  const hapValue = `${mqttValue}` === `${config.value}`;
23
23
  platform.logger.debug(`Setting [${mqtt.id}][${accessory.displayName}][${service.displayName}][stickyOn][${config.value}] to [${hapValue}] with MQTT value [${mqttValue}] from topic [${fullGetTopic}]`);
24
24
  on.updateValue(hapValue);
25
25
  });
26
- return index_js_1.DetachableCharacteristic.mixin(on, detachable);
26
+ return archetype_1.DetachableCharacteristic.mixin(on, detachable);
27
27
  };
28
28
  exports.stickyOn = stickyOn;
29
29
  //# sourceMappingURL=stickyOn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stickyOn.js","sourceRoot":"","sources":["../../../src/service/characteristic/stickyOn.ts"],"names":[],"mappings":";;;AAAA,+CAA2C;AAC3C,mDAA4F;AAarF,MAAM,QAAQ,GAA+C,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAqC,EAAE;;IAC7J,MAAM,CAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAE,GAAG,IAAA,qBAAU,EAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,CAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAE,GAAG,IAAA,qBAAU,EAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE7E,MAAM,EAAE,GAAG,CAAC,MAAA,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,mCAAI,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;SACtH,KAAK,CAAC,KAAK,CAAC,EAAE;QACX,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAA,oBAAQ,EAAC,GAAG,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACrC,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,eAAe,MAAM,CAAC,KAAK,YAAY,cAAc,eAAe,YAAY,GAAG,CAAC,CAAC;QACnL,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QACtD,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,GAAG,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QACtD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,eAAe,MAAM,CAAC,KAAK,SAAS,QAAQ,sBAAsB,SAAS,iBAAiB,YAAY,GAAG,CAAC,CAAC;QACxM,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,OAAO,mCAAwB,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAC1D,CAAC,CAAC;AAvBW,QAAA,QAAQ,YAuBnB"}
1
+ {"version":3,"file":"stickyOn.js","sourceRoot":"","sources":["../../../src/service/characteristic/stickyOn.ts"],"names":[],"mappings":";;;AAAA,+CAA2C;AAC3C,2CAAmF;AAa5E,MAAM,QAAQ,GAA+C,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAqC,EAAE;;IAC7J,MAAM,CAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,CAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE7E,MAAM,EAAE,GAAG,CAAC,MAAA,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,mCAAI,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;SACtH,KAAK,CAAC,KAAK,CAAC,EAAE;QACX,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAA,oBAAQ,EAAC,GAAG,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACrC,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,eAAe,MAAM,CAAC,KAAK,YAAY,cAAc,eAAe,YAAY,GAAG,CAAC,CAAC;QACnL,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QACtD,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,0BAAc,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,GAAG,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;QACtD,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW,eAAe,MAAM,CAAC,KAAK,SAAS,QAAQ,sBAAsB,SAAS,iBAAiB,YAAY,GAAG,CAAC,CAAC;QACxM,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,OAAO,oCAAwB,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAC1D,CAAC,CAAC;AAvBW,QAAA,QAAQ,YAuBnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uboness/homebridge-mqtt",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "author": "uboness",
5
5
  "publishConfig": {
6
6
  "@uboness:registry": "https://registry.npmjs.org "
@@ -41,6 +41,7 @@
41
41
  "scripts": {
42
42
  "clean": "rimraf ./dist",
43
43
  "build": "pnpm run clean && tsc",
44
+ "cbuild": "pnpm run clean && pnpm run build",
44
45
  "watch": "pnpm run clean && tsc -w",
45
46
  "prepublishOnly": "pnpm run build",
46
47
  "release:bump": "pnpm run build && commit-and-tag-version",
@@ -54,15 +55,16 @@
54
55
  "release-major": "pnpm run release:bump-major && pnpm run release:push && pnpm run release:publish"
55
56
  },
56
57
  "devDependencies": {
57
- "@inquirer/prompts": "^3.3.2",
58
- "@types/node": "^24.2.1",
58
+ "@inquirer/prompts": "^8.3.0",
59
+ "@types/node": "^25.3.0",
59
60
  "commit-and-tag-version": "^12.5.2",
60
- "homebridge": "^1.11.0",
61
- "homebridge-config-ui-x": "^5.4.1",
62
- "rimraf": "^6.0.1",
63
- "typescript": "^5.9.2"
61
+ "homebridge": "^1.11.2",
62
+ "homebridge-config-ui-x": "^5.18.0",
63
+ "rimraf": "^6.1.3",
64
+ "typescript": "^5.9.3"
64
65
  },
65
66
  "dependencies": {
66
- "mqtt": "^5.14.0"
67
+ "mqtt": "^5.15.0",
68
+ "uuid": "^13.0.0"
67
69
  }
68
70
  }