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 +26 -0
- package/config.schema.json +9 -67
- package/dist/accessories/virtualAccessorySecuritySystem.d.ts +1 -1
- package/dist/accessories/virtualAccessorySecuritySystem.js +9 -21
- package/dist/accessories/virtualAccessorySecuritySystem.js.map +1 -1
- package/dist/configuration/accessories/configurationSecuritySystem.d.ts +2 -9
- package/dist/configuration/accessories/configurationSecuritySystem.js +8 -33
- package/dist/configuration/accessories/configurationSecuritySystem.js.map +1 -1
- package/package.json +1 -1
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
|
package/config.schema.json
CHANGED
|
@@ -646,20 +646,10 @@
|
|
|
646
646
|
"title": "Security System",
|
|
647
647
|
"type": "object",
|
|
648
648
|
"properties": {
|
|
649
|
-
"
|
|
650
|
-
"title": "
|
|
651
|
-
"description": "
|
|
652
|
-
"type": "
|
|
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
|
-
"
|
|
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": [ "
|
|
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
|
|
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 {
|
|
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
|
-
|
|
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.
|
|
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.
|
|
83
|
-
|
|
84
|
-
0
|
|
85
|
-
|
|
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
|
-
|
|
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
|
|
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
|
-
|
|
8
|
-
|
|
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
|
-
|
|
10
|
-
|
|
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
|
-
|
|
16
|
-
this.
|
|
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 (!
|
|
24
|
-
this.errorFields.push(prefix + '.' + this.fieldNames.
|
|
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
|
-
|
|
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;
|
|
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.
|
|
5
|
+
"version": "3.9.2",
|
|
6
6
|
"description": "Virtual HomeKit accessories for Homebridge.",
|
|
7
7
|
"author": "justjam2013",
|
|
8
8
|
"license": "MIT",
|