@marcel2215/homebridge-supla-plugin 2.1.10 → 2.1.11

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.
@@ -82,6 +82,17 @@
82
82
  "type": "string",
83
83
  "default": "toggle"
84
84
  },
85
+ "gatePartialHiMode": {
86
+ "title": "Gate Partial Hi Mode",
87
+ "type": "string",
88
+ "default": "moving",
89
+ "enum": [
90
+ "moving",
91
+ "open_endstop",
92
+ "pedestrian_endstop",
93
+ "ignore"
94
+ ]
95
+ },
85
96
  "gateLockControlMode": {
86
97
  "title": "Gate Lock Control Mode",
87
98
  "type": "string",
@@ -9,13 +9,29 @@ export declare class GateAccessory {
9
9
  private currentState;
10
10
  private targetState;
11
11
  private connected;
12
- private hi;
13
- private partialHi;
12
+ private hasFault;
13
+ private obstructionDetected;
14
+ private isClosedSensorActive;
15
+ private isPartialSensorActive;
16
+ private pendingTarget?;
17
+ private transitionTimer?;
18
+ private readonly transitionTimeoutMs;
19
+ private readonly partialHiMode;
14
20
  constructor(platform: SuplaPlatform, accessory: PlatformAccessory, context: SuplaChannelContext);
15
21
  handleCurrentDoorStateGet(): Promise<CharacteristicValue>;
16
22
  handleTargetDoorStateGet(): Promise<CharacteristicValue>;
17
23
  handleTargetDoorStateSet(value: CharacteristicValue): Promise<void>;
18
24
  handleObstructionDetectedGet(): Promise<CharacteristicValue>;
19
- private updateStates;
25
+ private updateStatesFromSensors;
26
+ private isAtTarget;
27
+ private applyDoorState;
28
+ private setCurrentState;
29
+ private setTargetState;
30
+ private updateStatusFault;
31
+ private clearFaults;
32
+ private armTransitionTimer;
33
+ private clearTransitionTimer;
34
+ private touchTransitionTimer;
35
+ private resolveMovingState;
20
36
  }
21
37
  //# sourceMappingURL=GateAccessory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GateAccessory.d.ts","sourceRoot":"","sources":["../../src/Accesories/GateAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE,qBAAa,aAAa;IAStB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAV1B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAwD;IAC5E,OAAO,CAAC,WAAW,CAAuD;IAC1E,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,SAAS,CAAS;gBAGP,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB;IAqDzC,yBAAyB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIzD,wBAAwB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIxD,wBAAwB,CAAC,KAAK,EAAE,mBAAmB;IAiCnD,4BAA4B,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIlE,OAAO,CAAC,YAAY;CAgBrB"}
1
+ {"version":3,"file":"GateAccessory.d.ts","sourceRoot":"","sources":["../../src/Accesories/GateAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,qBAAa,aAAa;IAetB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAhB1B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAwD;IAC5E,OAAO,CAAC,WAAW,CAAuD;IAC1E,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;gBAG3B,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB;IAgEzC,yBAAyB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIzD,wBAAwB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIxD,wBAAwB,CAAC,KAAK,EAAE,mBAAmB;IAiDnD,4BAA4B,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIlE,OAAO,CAAC,uBAAuB;IAyE/B,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,oBAAoB;IAO5B,OAAO,CAAC,kBAAkB;CAS3B"}
@@ -9,8 +9,11 @@ class GateAccessory {
9
9
  this.currentState = this.platform.Characteristic.CurrentDoorState.CLOSED;
10
10
  this.targetState = this.platform.Characteristic.TargetDoorState.CLOSED;
11
11
  this.connected = true;
12
- this.hi = false;
13
- this.partialHi = false;
12
+ this.hasFault = false;
13
+ this.obstructionDetected = false;
14
+ this.isClosedSensorActive = false;
15
+ this.isPartialSensorActive = false;
16
+ this.transitionTimeoutMs = 60000;
14
17
  this.accessory.getService(this.platform.Service.AccessoryInformation)
15
18
  .setCharacteristic(this.platform.Characteristic.Manufacturer, 'Supla')
16
19
  .setCharacteristic(this.platform.Characteristic.Model, 'GateController');
@@ -28,18 +31,28 @@ class GateAccessory {
28
31
  .onSet(this.handleTargetDoorStateSet.bind(this));
29
32
  this.service.getCharacteristic(this.platform.Characteristic.ObstructionDetected)
30
33
  .onGet(this.handleObstructionDetectedGet.bind(this));
34
+ this.service.setCharacteristic(this.platform.Characteristic.ObstructionDetected, false);
35
+ this.platform.registerOwnerCleanup(this.accessory.UUID, () => {
36
+ this.clearTransitionTimer();
37
+ });
38
+ this.partialHiMode = this.platform.getGatePartialHiMode();
31
39
  this.platform.registerMqttHandler(`${this.context.topic}/state/hi`, (message) => {
32
- this.hi = this.platform.parseBoolean(message.toString());
33
- this.updateStates();
40
+ this.isClosedSensorActive = this.platform.parseBoolean(message.toString());
41
+ this.updateStatesFromSensors();
34
42
  }, this.accessory.UUID);
35
43
  this.platform.registerMqttHandler(`${this.context.topic}/state/partial_hi`, (message) => {
36
- this.partialHi = this.platform.parseBoolean(message.toString());
37
- this.updateStates();
44
+ this.isPartialSensorActive = this.platform.parseBoolean(message.toString());
45
+ this.updateStatesFromSensors();
38
46
  }, this.accessory.UUID);
39
47
  this.platform.registerMqttHandler(`${this.context.topic}/state/connected`, (message) => {
40
48
  this.connected = this.platform.parseBoolean(message.toString());
41
- this.service.updateCharacteristic(this.platform.Characteristic.StatusFault, this.connected ? 0 : 1);
49
+ this.updateStatusFault();
50
+ if (!this.connected) {
51
+ this.pendingTarget = undefined;
52
+ this.clearTransitionTimer();
53
+ }
42
54
  }, this.accessory.UUID);
55
+ this.updateStatusFault();
43
56
  }
44
57
  async handleCurrentDoorStateGet() {
45
58
  return this.currentState;
@@ -49,8 +62,20 @@ class GateAccessory {
49
62
  }
50
63
  async handleTargetDoorStateSet(value) {
51
64
  const target = value;
52
- this.targetState = target;
53
- this.service.updateCharacteristic(this.platform.Characteristic.TargetDoorState, this.targetState);
65
+ const previousTarget = this.targetState;
66
+ this.setTargetState(target);
67
+ if (!this.connected) {
68
+ this.platform.log.warn(`Gate ${this.accessory.displayName} is offline; ignoring command.`);
69
+ this.setTargetState(previousTarget);
70
+ this.updateStatusFault();
71
+ return;
72
+ }
73
+ if (this.isAtTarget(target)) {
74
+ return;
75
+ }
76
+ if (this.pendingTarget === target) {
77
+ return;
78
+ }
54
79
  const mode = this.platform.getGateControlMode();
55
80
  let action = '';
56
81
  if (mode === 'toggle') {
@@ -63,36 +88,160 @@ class GateAccessory {
63
88
  }
64
89
  if (!action) {
65
90
  this.platform.log.warn(`Gate action not configured for ${this.accessory.displayName}`);
91
+ this.setTargetState(previousTarget);
66
92
  return;
67
93
  }
68
94
  this.platform.log.debug(`Publishing ${this.context.topic}/execute_action = ${action}`);
69
95
  this.platform.publishCommand(`${this.context.topic}/execute_action`, action);
70
- this.currentState = target === this.platform.Characteristic.TargetDoorState.OPEN
96
+ this.clearFaults();
97
+ this.pendingTarget = target;
98
+ this.armTransitionTimer();
99
+ const nextState = target === this.platform.Characteristic.TargetDoorState.OPEN
71
100
  ? this.platform.Characteristic.CurrentDoorState.OPENING
72
101
  : this.platform.Characteristic.CurrentDoorState.CLOSING;
73
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentDoorState, this.currentState);
102
+ this.setCurrentState(nextState);
74
103
  }
75
104
  async handleObstructionDetectedGet() {
76
- return 0;
105
+ return this.obstructionDetected;
77
106
  }
78
- updateStates() {
79
- if (this.partialHi) {
80
- this.currentState = this.platform.Characteristic.CurrentDoorState.STOPPED;
81
- this.targetState = this.hi
82
- ? this.platform.Characteristic.TargetDoorState.CLOSED
83
- : this.platform.Characteristic.TargetDoorState.OPEN;
107
+ updateStatesFromSensors() {
108
+ this.clearFaults();
109
+ this.touchTransitionTimer();
110
+ if (this.isClosedSensorActive) {
111
+ this.pendingTarget = undefined;
112
+ this.clearTransitionTimer();
113
+ this.applyDoorState(this.platform.Characteristic.CurrentDoorState.CLOSED, this.platform.Characteristic.TargetDoorState.CLOSED);
114
+ return;
84
115
  }
85
- else if (this.hi) {
86
- this.currentState = this.platform.Characteristic.CurrentDoorState.CLOSED;
87
- this.targetState = this.platform.Characteristic.TargetDoorState.CLOSED;
116
+ if (this.partialHiMode === 'moving') {
117
+ if (this.isPartialSensorActive) {
118
+ this.setCurrentState(this.resolveMovingState());
119
+ return;
120
+ }
121
+ this.pendingTarget = undefined;
122
+ this.clearTransitionTimer();
123
+ this.applyDoorState(this.platform.Characteristic.CurrentDoorState.OPEN, this.platform.Characteristic.TargetDoorState.OPEN);
124
+ return;
88
125
  }
89
- else {
90
- this.currentState = this.platform.Characteristic.CurrentDoorState.OPEN;
91
- this.targetState = this.platform.Characteristic.TargetDoorState.OPEN;
126
+ if (this.partialHiMode === 'open_endstop') {
127
+ if (this.isPartialSensorActive) {
128
+ this.pendingTarget = undefined;
129
+ this.clearTransitionTimer();
130
+ this.applyDoorState(this.platform.Characteristic.CurrentDoorState.OPEN, this.platform.Characteristic.TargetDoorState.OPEN);
131
+ return;
132
+ }
133
+ if (this.pendingTarget !== undefined) {
134
+ this.setCurrentState(this.resolveMovingState());
135
+ return;
136
+ }
137
+ this.setCurrentState(this.platform.Characteristic.CurrentDoorState.STOPPED);
138
+ return;
139
+ }
140
+ if (this.partialHiMode === 'pedestrian_endstop') {
141
+ if (this.isPartialSensorActive) {
142
+ this.pendingTarget = undefined;
143
+ this.clearTransitionTimer();
144
+ this.setCurrentState(this.platform.Characteristic.CurrentDoorState.STOPPED);
145
+ return;
146
+ }
147
+ if (this.pendingTarget !== undefined) {
148
+ this.setCurrentState(this.resolveMovingState());
149
+ return;
150
+ }
151
+ this.pendingTarget = undefined;
152
+ this.clearTransitionTimer();
153
+ this.applyDoorState(this.platform.Characteristic.CurrentDoorState.OPEN, this.platform.Characteristic.TargetDoorState.OPEN);
154
+ return;
155
+ }
156
+ this.pendingTarget = undefined;
157
+ this.clearTransitionTimer();
158
+ this.applyDoorState(this.platform.Characteristic.CurrentDoorState.OPEN, this.platform.Characteristic.TargetDoorState.OPEN);
159
+ }
160
+ isAtTarget(target) {
161
+ if (target === this.platform.Characteristic.TargetDoorState.CLOSED) {
162
+ return this.isClosedSensorActive;
163
+ }
164
+ if (target === this.platform.Characteristic.TargetDoorState.OPEN) {
165
+ if (this.partialHiMode === 'open_endstop') {
166
+ return this.isPartialSensorActive;
167
+ }
168
+ if (this.partialHiMode === 'moving' || this.partialHiMode === 'pedestrian_endstop') {
169
+ return !this.isClosedSensorActive && !this.isPartialSensorActive;
170
+ }
171
+ return !this.isClosedSensorActive;
172
+ }
173
+ return false;
174
+ }
175
+ applyDoorState(current, target) {
176
+ this.setCurrentState(current);
177
+ this.setTargetState(target);
178
+ }
179
+ setCurrentState(next) {
180
+ if (this.currentState === next) {
181
+ return;
92
182
  }
183
+ this.currentState = next;
93
184
  this.service.updateCharacteristic(this.platform.Characteristic.CurrentDoorState, this.currentState);
185
+ }
186
+ setTargetState(next) {
187
+ if (this.targetState === next) {
188
+ return;
189
+ }
190
+ this.targetState = next;
94
191
  this.service.updateCharacteristic(this.platform.Characteristic.TargetDoorState, this.targetState);
95
192
  }
193
+ updateStatusFault() {
194
+ const fault = !this.connected || this.hasFault;
195
+ this.service.updateCharacteristic(this.platform.Characteristic.StatusFault, fault
196
+ ? this.platform.Characteristic.StatusFault.GENERAL_FAULT
197
+ : this.platform.Characteristic.StatusFault.NO_FAULT);
198
+ }
199
+ clearFaults() {
200
+ if (this.hasFault) {
201
+ this.hasFault = false;
202
+ }
203
+ if (this.obstructionDetected) {
204
+ this.obstructionDetected = false;
205
+ this.service.updateCharacteristic(this.platform.Characteristic.ObstructionDetected, false);
206
+ }
207
+ if (this.connected) {
208
+ this.updateStatusFault();
209
+ }
210
+ }
211
+ armTransitionTimer() {
212
+ this.clearTransitionTimer();
213
+ this.transitionTimer = setTimeout(() => {
214
+ this.transitionTimer = undefined;
215
+ this.pendingTarget = undefined;
216
+ this.hasFault = true;
217
+ this.obstructionDetected = true;
218
+ this.updateStatusFault();
219
+ this.service.updateCharacteristic(this.platform.Characteristic.ObstructionDetected, true);
220
+ this.setCurrentState(this.platform.Characteristic.CurrentDoorState.STOPPED);
221
+ this.platform.log.warn(`Gate ${this.accessory.displayName} did not reach target within ${this.transitionTimeoutMs}ms.`);
222
+ }, this.transitionTimeoutMs);
223
+ }
224
+ clearTransitionTimer() {
225
+ if (this.transitionTimer) {
226
+ clearTimeout(this.transitionTimer);
227
+ this.transitionTimer = undefined;
228
+ }
229
+ }
230
+ touchTransitionTimer() {
231
+ if (this.pendingTarget === undefined) {
232
+ return;
233
+ }
234
+ this.armTransitionTimer();
235
+ }
236
+ resolveMovingState() {
237
+ if (this.pendingTarget === this.platform.Characteristic.TargetDoorState.OPEN) {
238
+ return this.platform.Characteristic.CurrentDoorState.OPENING;
239
+ }
240
+ if (this.pendingTarget === this.platform.Characteristic.TargetDoorState.CLOSED) {
241
+ return this.platform.Characteristic.CurrentDoorState.CLOSING;
242
+ }
243
+ return this.platform.Characteristic.CurrentDoorState.STOPPED;
244
+ }
96
245
  }
97
246
  exports.GateAccessory = GateAccessory;
98
247
  //# sourceMappingURL=GateAccessory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GateAccessory.js","sourceRoot":"","sources":["../../src/Accesories/GateAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GateAccessory.js","sourceRoot":"","sources":["../../src/Accesories/GateAccessory.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,21 @@ export declare class GateLockAccessory {
9
9
  private currentState;
10
10
  private targetState;
11
11
  private connected;
12
+ private hasFault;
13
+ private pendingTarget?;
12
14
  private pulseTimer?;
15
+ private transitionTimer?;
16
+ private readonly transitionTimeoutMs;
13
17
  constructor(platform: SuplaPlatform, accessory: PlatformAccessory, context: SuplaChannelContext);
14
18
  handleCurrentStateGet(): Promise<CharacteristicValue>;
15
19
  handleTargetStateGet(): Promise<CharacteristicValue>;
16
20
  handleTargetStateSet(value: CharacteristicValue): Promise<void>;
21
+ private setCurrentState;
22
+ private setTargetState;
23
+ private updateStatusFault;
24
+ private clearFaults;
25
+ private armTransitionTimer;
17
26
  private clearPulseTimer;
27
+ private clearTransitionTimer;
18
28
  }
19
29
  //# sourceMappingURL=GateLockAccessory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GateLockAccessory.d.ts","sourceRoot":"","sources":["../../src/Accesories/GateLockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE,qBAAa,iBAAiB;IAQ1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT1B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAyD;IAC7E,OAAO,CAAC,WAAW,CAAwD;IAC3E,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,UAAU,CAAC,CAAiB;gBAGjB,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB;IAwDzC,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIrD,oBAAoB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIpD,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IA+CrD,OAAO,CAAC,eAAe;CAMxB"}
1
+ {"version":3,"file":"GateLockAccessory.d.ts","sourceRoot":"","sources":["../../src/Accesories/GateLockAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE,qBAAa,iBAAiB;IAY1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAb1B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAyD;IAC7E,OAAO,CAAC,WAAW,CAAwD;IAC3E,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;gBAG1B,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB;IA+EzC,qBAAqB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIrD,oBAAoB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAIpD,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IAoFrD,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,oBAAoB;CAM7B"}
@@ -6,9 +6,11 @@ class GateLockAccessory {
6
6
  this.platform = platform;
7
7
  this.accessory = accessory;
8
8
  this.context = context;
9
- this.currentState = this.platform.Characteristic.LockCurrentState.SECURED;
9
+ this.currentState = this.platform.Characteristic.LockCurrentState.UNKNOWN;
10
10
  this.targetState = this.platform.Characteristic.LockTargetState.SECURED;
11
11
  this.connected = true;
12
+ this.hasFault = false;
13
+ this.transitionTimeoutMs = 15000;
12
14
  this.accessory.getService(this.platform.Service.AccessoryInformation)
13
15
  .setCharacteristic(this.platform.Characteristic.Manufacturer, 'Supla')
14
16
  .setCharacteristic(this.platform.Characteristic.Model, 'GateLock');
@@ -30,20 +32,45 @@ class GateLockAccessory {
30
32
  .onSet(this.handleTargetStateSet.bind(this));
31
33
  this.platform.registerOwnerCleanup(this.accessory.UUID, () => {
32
34
  this.clearPulseTimer();
35
+ this.clearTransitionTimer();
33
36
  });
34
37
  this.platform.registerMqttHandler(`${this.context.topic}/state/hi`, (message) => {
35
38
  const unlocked = this.platform.parseBoolean(message.toString());
36
- this.currentState = unlocked
39
+ const reachedPending = this.pendingTarget !== undefined
40
+ && ((this.pendingTarget === this.platform.Characteristic.LockTargetState.UNSECURED && unlocked)
41
+ || (this.pendingTarget === this.platform.Characteristic.LockTargetState.SECURED && !unlocked));
42
+ if (this.pendingTarget !== undefined && !reachedPending) {
43
+ this.setCurrentState(this.platform.Characteristic.LockCurrentState.UNKNOWN);
44
+ return;
45
+ }
46
+ this.clearFaults();
47
+ const nextCurrent = unlocked
37
48
  ? this.platform.Characteristic.LockCurrentState.UNSECURED
38
49
  : this.platform.Characteristic.LockCurrentState.SECURED;
39
- this.targetState = this.currentState;
40
- this.service.updateCharacteristic(this.platform.Characteristic.LockCurrentState, this.currentState);
41
- this.service.updateCharacteristic(this.platform.Characteristic.LockTargetState, this.targetState);
50
+ this.setCurrentState(nextCurrent);
51
+ if (reachedPending) {
52
+ this.pendingTarget = undefined;
53
+ this.clearTransitionTimer();
54
+ }
55
+ if (this.pendingTarget === undefined) {
56
+ const nextTarget = unlocked
57
+ ? this.platform.Characteristic.LockTargetState.UNSECURED
58
+ : this.platform.Characteristic.LockTargetState.SECURED;
59
+ this.setTargetState(nextTarget);
60
+ this.clearPulseTimer();
61
+ }
42
62
  }, this.accessory.UUID);
43
63
  this.platform.registerMqttHandler(`${this.context.topic}/state/connected`, (message) => {
44
64
  this.connected = this.platform.parseBoolean(message.toString());
45
- this.service.updateCharacteristic(this.platform.Characteristic.StatusFault, this.connected ? 0 : 1);
65
+ if (!this.connected) {
66
+ this.clearPulseTimer();
67
+ this.clearTransitionTimer();
68
+ this.pendingTarget = undefined;
69
+ this.setCurrentState(this.platform.Characteristic.LockCurrentState.UNKNOWN);
70
+ }
71
+ this.updateStatusFault();
46
72
  }, this.accessory.UUID);
73
+ this.updateStatusFault();
47
74
  }
48
75
  async handleCurrentStateGet() {
49
76
  return this.currentState;
@@ -53,14 +80,40 @@ class GateLockAccessory {
53
80
  }
54
81
  async handleTargetStateSet(value) {
55
82
  const target = value;
56
- this.targetState = target;
57
- this.service.updateCharacteristic(this.platform.Characteristic.LockTargetState, this.targetState);
83
+ if (target === this.targetState) {
84
+ return;
85
+ }
86
+ const previousTarget = this.targetState;
87
+ const previousCurrent = this.currentState;
88
+ this.setTargetState(target);
89
+ if (!this.connected) {
90
+ this.platform.log.warn(`Gate lock ${this.accessory.displayName} is offline; ignoring command.`);
91
+ this.setTargetState(previousTarget);
92
+ this.updateStatusFault();
93
+ return;
94
+ }
58
95
  if (target !== this.platform.Characteristic.LockTargetState.UNSECURED) {
96
+ this.clearPulseTimer();
97
+ this.clearTransitionTimer();
98
+ this.pendingTarget = undefined;
99
+ if (this.connected && this.platform.getGateLockControlMode() === 'set_on_pulse') {
100
+ const topic = `${this.context.topic}/${this.platform.getGateLockSetTopicSuffix()}`;
101
+ const offPayload = this.platform.getGateLockSetOffPayload();
102
+ this.platform.log.debug(`Publishing ${topic} = ${offPayload} (manual secure)`);
103
+ this.platform.publishCommand(topic, offPayload);
104
+ }
105
+ this.setTargetState(previousTarget);
59
106
  return;
60
107
  }
61
108
  this.clearPulseTimer();
109
+ if (this.pendingTarget === target) {
110
+ return;
111
+ }
62
112
  const mode = this.platform.getGateLockControlMode();
63
113
  if (mode === 'set_on_pulse') {
114
+ this.pendingTarget = target;
115
+ this.clearFaults();
116
+ this.armTransitionTimer();
64
117
  const topic = `${this.context.topic}/${this.platform.getGateLockSetTopicSuffix()}`;
65
118
  const onPayload = this.platform.getGateLockSetOnPayload();
66
119
  const offPayload = this.platform.getGateLockSetOffPayload();
@@ -69,6 +122,10 @@ class GateLockAccessory {
69
122
  this.platform.publishCommand(topic, onPayload);
70
123
  if (pulseSeconds > 0) {
71
124
  this.pulseTimer = setTimeout(() => {
125
+ if (!this.connected) {
126
+ this.platform.log.debug(`Skipping auto-off publish for ${topic} (offline).`);
127
+ return;
128
+ }
72
129
  this.platform.log.debug(`Publishing ${topic} = ${offPayload} (auto-off)`);
73
130
  this.platform.publishCommand(topic, offPayload);
74
131
  }, Math.round(pulseSeconds * 1000));
@@ -76,26 +133,76 @@ class GateLockAccessory {
76
133
  else {
77
134
  this.platform.log.warn(`Gate lock pulseSeconds is 0; leaving ${this.accessory.displayName} in set/on state.`);
78
135
  }
79
- this.currentState = this.platform.Characteristic.LockCurrentState.UNSECURED;
80
- this.service.updateCharacteristic(this.platform.Characteristic.LockCurrentState, this.currentState);
136
+ this.setCurrentState(this.platform.Characteristic.LockCurrentState.UNKNOWN);
81
137
  return;
82
138
  }
83
139
  const action = this.platform.getGateLockExecuteAction();
84
140
  if (!action) {
85
141
  this.platform.log.warn(`Gate lock action not configured for ${this.accessory.displayName}`);
142
+ this.pendingTarget = undefined;
143
+ this.clearPulseTimer();
144
+ this.clearTransitionTimer();
145
+ this.setTargetState(previousTarget);
146
+ this.setCurrentState(previousCurrent);
86
147
  return;
87
148
  }
149
+ this.pendingTarget = target;
150
+ this.clearFaults();
151
+ this.armTransitionTimer();
88
152
  this.platform.log.debug(`Publishing ${this.context.topic}/execute_action = ${action}`);
89
153
  this.platform.publishCommand(`${this.context.topic}/execute_action`, action);
90
- this.currentState = this.platform.Characteristic.LockCurrentState.UNSECURED;
154
+ this.setCurrentState(this.platform.Characteristic.LockCurrentState.UNKNOWN);
155
+ }
156
+ setCurrentState(next) {
157
+ if (this.currentState === next) {
158
+ return;
159
+ }
160
+ this.currentState = next;
91
161
  this.service.updateCharacteristic(this.platform.Characteristic.LockCurrentState, this.currentState);
92
162
  }
163
+ setTargetState(next) {
164
+ if (this.targetState === next) {
165
+ return;
166
+ }
167
+ this.targetState = next;
168
+ this.service.updateCharacteristic(this.platform.Characteristic.LockTargetState, this.targetState);
169
+ }
170
+ updateStatusFault() {
171
+ const fault = !this.connected || this.hasFault;
172
+ this.service.updateCharacteristic(this.platform.Characteristic.StatusFault, fault
173
+ ? this.platform.Characteristic.StatusFault.GENERAL_FAULT
174
+ : this.platform.Characteristic.StatusFault.NO_FAULT);
175
+ }
176
+ clearFaults() {
177
+ if (!this.hasFault) {
178
+ return;
179
+ }
180
+ this.hasFault = false;
181
+ this.updateStatusFault();
182
+ }
183
+ armTransitionTimer() {
184
+ this.clearTransitionTimer();
185
+ this.transitionTimer = setTimeout(() => {
186
+ this.transitionTimer = undefined;
187
+ this.pendingTarget = undefined;
188
+ this.hasFault = true;
189
+ this.updateStatusFault();
190
+ this.setCurrentState(this.platform.Characteristic.LockCurrentState.UNKNOWN);
191
+ this.platform.log.warn(`Gate lock ${this.accessory.displayName} did not reach target within ${this.transitionTimeoutMs}ms.`);
192
+ }, this.transitionTimeoutMs);
193
+ }
93
194
  clearPulseTimer() {
94
195
  if (this.pulseTimer) {
95
196
  clearTimeout(this.pulseTimer);
96
197
  this.pulseTimer = undefined;
97
198
  }
98
199
  }
200
+ clearTransitionTimer() {
201
+ if (this.transitionTimer) {
202
+ clearTimeout(this.transitionTimer);
203
+ this.transitionTimer = undefined;
204
+ }
205
+ }
99
206
  }
100
207
  exports.GateLockAccessory = GateLockAccessory;
101
208
  //# sourceMappingURL=GateLockAccessory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GateLockAccessory.js","sourceRoot":"","sources":["../../src/Accesories/GateLockAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GateLockAccessory.js","sourceRoot":"","sources":["../../src/Accesories/GateLockAccessory.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ export declare class SuplaPlatform implements DynamicPlatformPlugin {
32
32
  private readonly gateLockPulseSeconds;
33
33
  private readonly gateLockSetOnPayload;
34
34
  private readonly gateLockSetOffPayload;
35
+ private readonly gatePartialHiMode;
35
36
  private readonly commandQos;
36
37
  private readonly commandRetain;
37
38
  private readonly mqttHandlers;
@@ -81,9 +82,11 @@ export declare class SuplaPlatform implements DynamicPlatformPlugin {
81
82
  getGateLockPulseSeconds(): number;
82
83
  getGateLockSetOnPayload(): string;
83
84
  getGateLockSetOffPayload(): string;
85
+ getGatePartialHiMode(): 'moving' | 'open_endstop' | 'pedestrian_endstop' | 'ignore';
84
86
  private normalizeCoveringControlMode;
85
87
  private normalizeGateControlMode;
86
88
  private normalizeGateLockControlMode;
89
+ private normalizeGatePartialHiMode;
87
90
  private normalizeTopicSuffix;
88
91
  registerMqttHandler(topic: string, handler: (message: Buffer, topic: string) => void, ownerId: string): () => void;
89
92
  registerOwnerCleanup(ownerId: string, cleanup: () => void): () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
package/dist/platform.js CHANGED
@@ -91,6 +91,7 @@ class SuplaPlatform {
91
91
  this.gateLockPulseSeconds = Number(configView.gateLockPulseSeconds) || 0;
92
92
  this.gateLockSetOnPayload = ((_a = configView.gateLockSetOnPayload) !== null && _a !== void 0 ? _a : 'true').toString();
93
93
  this.gateLockSetOffPayload = ((_b = configView.gateLockSetOffPayload) !== null && _b !== void 0 ? _b : 'false').toString();
94
+ this.gatePartialHiMode = this.normalizeGatePartialHiMode(configView.gatePartialHiMode);
94
95
  this.commandQos = this.normalizeCommandQos(configView.commandQos);
95
96
  this.commandRetain = this.parseBoolean((_c = configView.commandRetain) !== null && _c !== void 0 ? _c : false);
96
97
  this.api.on('shutdown', () => {
@@ -463,6 +464,9 @@ class SuplaPlatform {
463
464
  getGateLockSetOffPayload() {
464
465
  return this.gateLockSetOffPayload;
465
466
  }
467
+ getGatePartialHiMode() {
468
+ return this.gatePartialHiMode;
469
+ }
466
470
  normalizeCoveringControlMode(value) {
467
471
  const normalized = (value !== null && value !== void 0 ? value : 'set').toString().toLowerCase();
468
472
  if (normalized === 'execute_action') {
@@ -487,6 +491,19 @@ class SuplaPlatform {
487
491
  }
488
492
  return 'execute_action';
489
493
  }
494
+ normalizeGatePartialHiMode(value) {
495
+ const normalized = (value !== null && value !== void 0 ? value : 'moving').toString().toLowerCase();
496
+ if (normalized === 'open_endstop' || normalized === 'open') {
497
+ return 'open_endstop';
498
+ }
499
+ if (normalized === 'pedestrian_endstop' || normalized === 'pedestrian') {
500
+ return 'pedestrian_endstop';
501
+ }
502
+ if (normalized === 'ignore' || normalized === 'absent') {
503
+ return 'ignore';
504
+ }
505
+ return 'moving';
506
+ }
490
507
  normalizeTopicSuffix(value) {
491
508
  return value.toString().replace(/^\/+/, '');
492
509
  }
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Supla Plugin",
3
3
  "name": "@marcel2215/homebridge-supla-plugin",
4
- "version": "2.1.10",
4
+ "version": "2.1.11",
5
5
  "description": "Plugin for Homebridge to control Supla devices",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {