homebridge-virtual-accessories 3.9.1 → 3.9.2

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 CHANGED
@@ -22,6 +22,11 @@
22
22
 
23
23
  ## <!-- Thin separator line -->
24
24
 
25
+ > [!CAUTION]
26
+ > Virtual Accessories for Homebridge v3.9.2 is a breaking update for the Security System accessory. Please refer to the [wiki document](https://github.com/justjam2013/homebridge-virtual-accessories/wiki/Virtual-Accessories-For-Homebridge-v3.9.2-breaking-update-for-Security-System-accessory) for configuration changes.
27
+
28
+ ## <!-- Thin separator line -->
29
+
25
30
  <details>
26
31
  <summary>
27
32
 
@@ -48,6 +53,7 @@
48
53
  - [Lightbulb](#lightbulb)
49
54
  - [Lightbulb (color)](#lightbulb-color)
50
55
  - [Lock](#lock)
56
+ - [Microphone](#microphone)
51
57
  - [Security System](#security-system)
52
58
  - [Speaker](#speaker)
53
59
  - [Television](#television)
@@ -105,6 +111,7 @@ Currently, these are the implemented virtual accessories:
105
111
  - **Humidifier/Dehumidifier.** Allows you to create a virtual humidifier/dehumidifier. You can select humidifier only, dehumidifier only, or humidifier + dehumidifier combo. The humidifier/dehumidifier humidity sensor can be updated via a [webhook call](#webhook-service-configuration). Based on the threshold values, the accessory will switch to the appropriate operating state, according to the supported states.
106
112
  - **Lightbulb.** Allows you to create virtual white, white ambiance, color lightbulbs. In the Home app, this can be used as a dimmer switch.
107
113
  - **Lock.** Allows you to create a virtual lock. Generates a HomeKit notification when the accessory's state changes.
114
+ - **Microphone.** Allows you to create a virtual microphone.
108
115
  - **Security System.** Allows you to create a virtual security system. Generates a HomeKit notification when the accessory's state changes. The Security System can be put in a triggered state via a [webhook call](#webhook-service-configuration). A [webhook endpoint](#webhook-service-configuration) is also available for a panic alarm.
109
116
  - **Speaker.** Allows you to create a virtual speaker.
110
117
  - **Television.** Allows you to create a virtual television.
@@ -476,6 +483,25 @@ These are example configurations of the virtual accessories and provided for ref
476
483
  }
477
484
  ```
478
485
 
486
+ ### Microphone
487
+
488
+ ```json
489
+ {
490
+ "name": "Virtual Accessories Platform",
491
+ "devices": [
492
+ {
493
+ "accessoryID": "1234567",
494
+ "accessoryName": "My Microphone",
495
+ "accessoryType": "microphone",
496
+ "microphone": {
497
+ "volume": 100
498
+ }
499
+ }
500
+ ],
501
+ "platform": "VirtualAccessoriesForHomebridge"
502
+ }
503
+ ```
504
+
479
505
  ### Security System
480
506
 
481
507
  ```json
@@ -646,20 +646,10 @@
646
646
  "title": "Security System",
647
647
  "type": "object",
648
648
  "properties": {
649
- "armedModes": {
650
- "title": "Available Armed States *",
651
- "description": "Armed states available to this security system",
652
- "type": "array",
653
- "uniqueItems": true,
654
- "minItems": 1,
655
- "items": {
656
- "type": "string",
657
- "enum": [
658
- "Away",
659
- "Home",
660
- "Night"
661
- ]
662
- }
649
+ "hasNightMode": {
650
+ "title": "Has Night Mode",
651
+ "description": "Night mode is a custom armed mode",
652
+ "type": "boolean"
663
653
  },
664
654
  "defaultState": {
665
655
  "title": "Default State *",
@@ -668,13 +658,12 @@
668
658
  "oneOf": [
669
659
  { "title": "Armed - Away", "enum": ["armedaway"] },
670
660
  { "title": "Armed - Home", "enum": ["armedstay"] },
671
- { "title": "Armed - Night", "enum": ["armednight"] },
672
661
  { "title": "Disarmed", "enum": ["disarmed"] }
673
662
  ]
674
663
  },
675
- "armingDelay": {
676
- "title": "Arming Delay",
677
- "description": "Security System arming delay in seconds (default 0 = immediate)",
664
+ "awayArmingDelay": {
665
+ "title": "Away Arming Delay",
666
+ "description": "Security System away arming delay in seconds (default 0 = immediate)",
678
667
  "type": "integer",
679
668
  "minimum": 0,
680
669
  "maximum": 60
@@ -682,54 +671,7 @@
682
671
  },
683
672
  "condition": {
684
673
  "functionBody": "return model.devices[arrayIndices].accessoryType === 'securitysystem';"
685
- },
686
- "allOf": [
687
- {
688
- "if": {
689
- "properties": {
690
- "defaultState": { "const": "armedaway" }
691
- },
692
- "required": [ "defaultState" ]
693
- },
694
- "then": {
695
- "properties": {
696
- "armedModes": {
697
- "contains": { "const": "Away" }
698
- }
699
- }
700
- }
701
- },
702
- {
703
- "if": {
704
- "properties": {
705
- "defaultState": { "const": "armedstay" }
706
- },
707
- "required": [ "defaultState" ]
708
- },
709
- "then": {
710
- "properties": {
711
- "armedModes": {
712
- "contains": { "const": "Home" }
713
- }
714
- }
715
- }
716
- },
717
- {
718
- "if": {
719
- "properties": {
720
- "defaultState": { "const": "armednight" }
721
- },
722
- "required": [ "defaultState" ]
723
- },
724
- "then": {
725
- "properties": {
726
- "armedModes": {
727
- "contains": { "const": "Night" }
728
- }
729
- }
730
- }
731
- }
732
- ]
674
+ }
733
675
  },
734
676
  "speaker": {
735
677
  "title": "Speaker",
@@ -1415,7 +1357,7 @@
1415
1357
  "required": [ "securitySystem" ],
1416
1358
  "properties": {
1417
1359
  "securitySystem": {
1418
- "required": [ "armedModes", "defaultState" ]
1360
+ "required": [ "defaultState" ]
1419
1361
  }
1420
1362
  }
1421
1363
  }
@@ -14,7 +14,7 @@ export declare class SecuritySystem extends Accessory implements TriggerableAlar
14
14
  static readonly DISARMED: number;
15
15
  static readonly ALARM_TRIGGERED: number;
16
16
  private readonly stateStorageKey;
17
- private armingDelayTimer;
17
+ private awayArmingDelayTimer;
18
18
  private states;
19
19
  constructor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration);
20
20
  getSecuritySystemCurrentState(): Promise<CharacteristicValue>;
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable brace-style */
2
2
  import { Accessory } from './accessory.js';
3
3
  import { InvalidSensorValueType, SensorValueUpdateNotAllowed } from '../errors.js';
4
- import { SecuritySystemArmedMode, SecuritySystemState } from '../configuration/schema.js';
4
+ import { SecuritySystemState } from '../configuration/schema.js';
5
5
  import { Timer } from '../utils/timer.js';
6
6
  /**
7
7
  * SecuritySystem - Accessory implementation
@@ -14,7 +14,7 @@ export class SecuritySystem extends Accessory {
14
14
  static DISARMED = 3; // Characteristic.SecuritySystemCurrentState.DISARMED
15
15
  static ALARM_TRIGGERED = 4; // Characteristic.SecuritySystemCurrentState.ALARM_TRIGGERED
16
16
  stateStorageKey = 'SecuritySystemState';
17
- armingDelayTimer;
17
+ awayArmingDelayTimer;
18
18
  states = {
19
19
  SecuritySystemCurrentState: SecuritySystem.DISARMED,
20
20
  SecuritySystemTargetState: SecuritySystem.DISARMED,
@@ -44,7 +44,7 @@ export class SecuritySystem extends Accessory {
44
44
  this.states.SecuritySystemCurrentState = this.defaultState;
45
45
  // Timer is not resettable
46
46
  const timerIsResettable = false;
47
- this.armingDelayTimer = new Timer(this.accessoryConfiguration.accessoryName, this.log, timerIsResettable);
47
+ this.awayArmingDelayTimer = new Timer(this.accessoryConfiguration.accessoryName, this.log, timerIsResettable);
48
48
  // If the accessory is stateful retrieve stored state
49
49
  if (this.accessoryConfiguration.accessoryIsStateful) {
50
50
  const accessoryState = this.loadAccessoryState(this.storagePath);
@@ -79,11 +79,10 @@ export class SecuritySystem extends Accessory {
79
79
  this.states.SecuritySystemTargetState = value;
80
80
  this.log.info(`[${this.accessoryConfiguration.accessoryName}] Setting Target State: ${SecuritySystem.getStateName(this.states.SecuritySystemTargetState)}`);
81
81
  // No delay when disarming or switching betweem armed modes
82
- const delayTime = (this.states.SecuritySystemTargetState === SecuritySystem.DISARMED ||
83
- (this.states.SecuritySystemTargetState !== SecuritySystem.DISARMED && this.states.SecuritySystemCurrentState !== SecuritySystem.DISARMED)) ?
84
- 0 :
85
- this.accessoryConfiguration.securitySystem.armingDelay;
86
- this.armingDelayTimer.start(() => {
82
+ const delayTime = (this.states.SecuritySystemTargetState === SecuritySystem.AWAY_ARM) ?
83
+ this.accessoryConfiguration.securitySystem.awayArmingDelay :
84
+ 0;
85
+ this.awayArmingDelayTimer.start(() => {
87
86
  this.states.SecuritySystemCurrentState = this.states.SecuritySystemTargetState;
88
87
  this.service.setCharacteristic(this.platform.Characteristic.SecuritySystemCurrentState, (this.states.SecuritySystemCurrentState));
89
88
  // eslint-disable-next-line max-len
@@ -159,21 +158,10 @@ export class SecuritySystem extends Accessory {
159
158
  SecuritySystemTargetState.DISARM,
160
159
  // 4, ... 255 Reserved
161
160
  ]);
162
- const armedModes = this.accessoryConfiguration.securitySystem.armedModes;
163
- if (!armedModes.includes(SecuritySystemArmedMode.ArmedAway)) {
164
- currentStateValues.delete(SecuritySystemCurrentState.AWAY_ARM);
165
- targetStateValues.delete(SecuritySystemTargetState.AWAY_ARM);
166
- this.log.debug(`[${this.accessoryConfiguration.accessoryName}] Away is not in armed modes`);
167
- }
168
- if (!armedModes.includes(SecuritySystemArmedMode.ArmedNight)) {
161
+ if (!this.accessoryConfiguration.securitySystem.hasNightMode) {
169
162
  currentStateValues.delete(SecuritySystemCurrentState.NIGHT_ARM);
170
163
  targetStateValues.delete(SecuritySystemTargetState.NIGHT_ARM);
171
- this.log.debug(`[${this.accessoryConfiguration.accessoryName}] Night is not in armed modes`);
172
- }
173
- if (!armedModes.includes(SecuritySystemArmedMode.ArmedStay)) {
174
- currentStateValues.delete(SecuritySystemCurrentState.STAY_ARM);
175
- targetStateValues.delete(SecuritySystemTargetState.STAY_ARM);
176
- this.log.debug(`[${this.accessoryConfiguration.accessoryName}] Home is not in armed modes`);
164
+ this.log.debug(`[${this.accessoryConfiguration.accessoryName}] Night Arm is not an available armed mode`);
177
165
  }
178
166
  if (currentStateValues.size > 0) {
179
167
  this.log.debug(`[${this.accessoryConfiguration.accessoryName}] Setting Current State values: ${this.generatePropertyValueList(currentStateValues)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"virtualAccessorySecuritySystem.js","sourceRoot":"","sources":["../../src/accessories/virtualAccessorySecuritySystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtualAccessorySecuritySystem.js","sourceRoot":"","sources":["../../src/accessories/virtualAccessorySecuritySystem.ts"],"names":[],"mappings":"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"}
@@ -4,16 +4,9 @@ import { Validatable } from '../validatable.js';
4
4
  */
5
5
  export declare class SecuritySystemConfiguration implements Validatable {
6
6
  defaultState: string;
7
- armedModes: string[];
8
- armingDelay: number;
7
+ hasNightMode: boolean;
8
+ awayArmingDelay: number;
9
9
  private errorFields;
10
10
  readonly fieldNames: { [P in keyof this]?: P | undefined; };
11
11
  isValid(prefix: string): [boolean, string[]];
12
- /**
13
- * This method is necessary becasue the values for
14
- * states are: 'disarmed', 'armedaway', 'armednight', 'armedstay'
15
- * while values for
16
- * armed modes are: 'Away', 'Night', 'Home'
17
- */
18
- private armedModesContainsDefaultState;
19
12
  }
@@ -1,53 +1,28 @@
1
1
  /* eslint-disable curly */
2
- import { SecuritySystemArmedMode, SecuritySystemState } from '../schema.js';
3
2
  import { Utils } from '../../utils/utils.js';
4
3
  /**
5
4
  *
6
5
  */
7
6
  export class SecuritySystemConfiguration {
8
7
  defaultState;
9
- armedModes;
10
- armingDelay = 0;
8
+ hasNightMode = false;
9
+ awayArmingDelay = 0;
11
10
  errorFields = [];
12
11
  fieldNames = Utils.proxiedPropertiesOf(this);
13
12
  isValid(prefix) {
14
- const isValidDefaultState = (Utils.required(this.defaultState) &&
15
- SecuritySystemState.States.includes(this.defaultState) &&
16
- this.armedModesContainsDefaultState());
17
- const isValidArmedModes = (Utils.notEmpty(this.armedModes));
18
- const isValidArmingDelay = (Utils.required(this.armingDelay) &&
19
- (this.armingDelay >= 0 && this.armingDelay <= 60));
13
+ const isValidDefaultState = (Utils.required(this.defaultState));
14
+ const isValidAwayArmingDelay = (Utils.required(this.awayArmingDelay) &&
15
+ (this.awayArmingDelay >= 0 && this.awayArmingDelay <= 60));
20
16
  // Store fields failing validation
21
17
  if (!isValidDefaultState)
22
18
  this.errorFields.push(prefix + '.' + this.fieldNames.defaultState);
23
- if (!isValidArmedModes)
24
- this.errorFields.push(prefix + '.' + this.fieldNames.armedModes);
25
- if (!isValidArmingDelay)
26
- this.errorFields.push(prefix + '.' + this.fieldNames.armingDelay);
19
+ if (!isValidAwayArmingDelay)
20
+ this.errorFields.push(prefix + '.' + this.fieldNames.awayArmingDelay);
27
21
  return [
28
22
  (isValidDefaultState &&
29
- isValidArmedModes &&
30
- isValidArmingDelay),
23
+ isValidAwayArmingDelay),
31
24
  this.errorFields,
32
25
  ];
33
26
  }
34
- // TODO: remove this method once ng-formworks feature 'Feature request: Implement multi select using oneOf as set of checkboxes'
35
- // (https://github.com/zahmo/ng-formworks/issues/26) is complete
36
- /**
37
- * This method is necessary becasue the values for
38
- * states are: 'disarmed', 'armedaway', 'armednight', 'armedstay'
39
- * while values for
40
- * armed modes are: 'Away', 'Night', 'Home'
41
- */
42
- armedModesContainsDefaultState() {
43
- let armedModesContainsDefaultState = false;
44
- if ((this.defaultState === SecuritySystemState.ArmedAway && this.armedModes.includes(SecuritySystemArmedMode.ArmedAway)) ||
45
- (this.defaultState === SecuritySystemState.ArmedNight && this.armedModes.includes(SecuritySystemArmedMode.ArmedNight)) ||
46
- (this.defaultState === SecuritySystemState.ArmedStay && this.armedModes.includes(SecuritySystemArmedMode.ArmedStay)) ||
47
- (this.defaultState === SecuritySystemState.Disarmed)) {
48
- armedModesContainsDefaultState = true;
49
- }
50
- return armedModesContainsDefaultState;
51
- }
52
27
  }
53
28
  //# sourceMappingURL=configurationSecuritySystem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configurationSecuritySystem.js","sourceRoot":"","sources":["../../../src/configuration/accessories/configurationSecuritySystem.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAG1B,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C;;GAEG;AACH,MAAM,OAAO,2BAA2B;IACtC,YAAY,CAAU;IACtB,UAAU,CAAY;IACtB,WAAW,GAAW,CAAC,CAAC;IAEhB,WAAW,GAAa,EAAE,CAAC;IAE1B,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAEtD,OAAO,CAAC,MAAc;QACpB,MAAM,mBAAmB,GAAY,CACnC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;YACjC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;YACtD,IAAI,CAAC,8BAA8B,EAAE,CACtC,CAAC;QAEF,MAAM,iBAAiB,GAAY,CACjC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAChC,CAAC;QAEF,MAAM,kBAAkB,GAAY,CAClC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC;YAChC,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAClD,CAAC;QAEF,kCAAkC;QAClC,IAAI,CAAC,mBAAmB;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC7F,IAAI,CAAC,iBAAiB;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACzF,IAAI,CAAC,kBAAkB;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAE3F,OAAO;YACL,CAAC,mBAAmB;gBAClB,iBAAiB;gBACjB,kBAAkB,CAAC;YACrB,IAAI,CAAC,WAAW;SACjB,CAAC;IACJ,CAAC;IAED,gIAAgI;IAChI,gEAAgE;IAEhE;;;;;OAKG;IACK,8BAA8B;QACpC,IAAI,8BAA8B,GAAY,KAAK,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,mBAAmB,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACpH,CAAC,IAAI,CAAC,YAAY,KAAK,mBAAmB,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACtH,CAAC,IAAI,CAAC,YAAY,KAAK,mBAAmB,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACpH,CAAC,IAAI,CAAC,YAAY,KAAK,mBAAmB,CAAC,QAAQ,CAAC,EACtD,CAAC;YACD,8BAA8B,GAAG,IAAI,CAAC;QACxC,CAAC;QAED,OAAO,8BAA8B,CAAC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"configurationSecuritySystem.js","sourceRoot":"","sources":["../../../src/configuration/accessories/configurationSecuritySystem.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAI1B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C;;GAEG;AACH,MAAM,OAAO,2BAA2B;IACtC,YAAY,CAAU;IACtB,YAAY,GAAY,KAAK,CAAC;IAC9B,eAAe,GAAW,CAAC,CAAC;IAEpB,WAAW,GAAa,EAAE,CAAC;IAE1B,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAEtD,OAAO,CAAC,MAAc;QACpB,MAAM,mBAAmB,GAAY,CACnC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAClC,CAAC;QAEF,MAAM,sBAAsB,GAAY,CACtC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;YACpC,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAC1D,CAAC;QAEF,kCAAkC;QAClC,IAAI,CAAC,mBAAmB;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAC7F,IAAI,CAAC,sBAAsB;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAEnG,OAAO;YACL,CAAC,mBAAmB;gBAClB,sBAAsB,CAAC;YACzB,IAAI,CAAC,WAAW;SACjB,CAAC;IACJ,CAAC;CACF"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "homebridge-virtual-accessories",
3
3
  "displayName": "Virtual Accessories for Homebridge",
4
4
  "type": "module",
5
- "version": "3.9.1",
5
+ "version": "3.9.2",
6
6
  "description": "Virtual HomeKit accessories for Homebridge.",
7
7
  "author": "justjam2013",
8
8
  "license": "MIT",