@fastybird/smart-panel-backend 1.1.0-alpha.15 → 1.1.0-alpha.16
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/dist/modules/system/scripts/update-worker.sh +360 -59
- package/dist/modules/system/services/update-executor.service.d.ts +9 -0
- package/dist/modules/system/services/update-executor.service.js +170 -25
- package/dist/modules/system/services/update-executor.service.js.map +1 -1
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.d.ts +2 -0
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js +22 -0
- package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js.map +1 -1
- package/dist/plugins/devices-homekit/mappers/button.mapper.d.ts +15 -0
- package/dist/plugins/devices-homekit/mappers/button.mapper.js +143 -0
- package/dist/plugins/devices-homekit/mappers/button.mapper.js.map +1 -0
- package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.d.ts +8 -0
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.d.ts +5 -1
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js +42 -0
- package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js.map +1 -1
- package/dist/plugins/devices-reterminal/services/reterminal-button.service.d.ts +7 -3
- package/dist/plugins/devices-reterminal/services/reterminal-button.service.js +63 -17
- package/dist/plugins/devices-reterminal/services/reterminal-button.service.js.map +1 -1
- package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.d.ts +17 -0
- package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.js +205 -0
- package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.js.map +1 -0
- package/dist/plugins/devices-third-party/devices-third-party.openapi.d.ts +1 -1
- package/dist/plugins/devices-third-party/devices-third-party.plugin.js +2 -1
- package/dist/plugins/devices-third-party/devices-third-party.plugin.js.map +1 -1
- package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.d.ts +5 -0
- package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.js +50 -0
- package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.js.map +1 -0
- package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.d.ts +8 -0
- package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.js +81 -0
- package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.js.map +1 -0
- package/dist/plugins/devices-third-party/platforms/third-party-device.platform.js +19 -4
- package/dist/plugins/devices-third-party/platforms/third-party-device.platform.js.map +1 -1
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.d.ts +2 -0
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js +57 -0
- package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -13,6 +13,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
exports.HomeKitMapperRegistryService = void 0;
|
|
14
14
|
const common_1 = require("@nestjs/common");
|
|
15
15
|
const battery_mapper_1 = require("../mappers/battery.mapper");
|
|
16
|
+
const button_mapper_1 = require("../mappers/button.mapper");
|
|
16
17
|
const lightbulb_mapper_1 = require("../mappers/lightbulb.mapper");
|
|
17
18
|
const lock_mapper_1 = require("../mappers/lock.mapper");
|
|
18
19
|
const outlet_mapper_1 = require("../mappers/outlet.mapper");
|
|
@@ -26,6 +27,7 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
26
27
|
this.mappers = [];
|
|
27
28
|
this.propertyBindings = new Map();
|
|
28
29
|
this.propertyListeners = new Map();
|
|
30
|
+
this.occurrenceListeners = new Map();
|
|
29
31
|
this.deviceProperties = new Map();
|
|
30
32
|
this.mappers.push(new lightbulb_mapper_1.LightbulbMapper());
|
|
31
33
|
this.mappers.push(new switch_mapper_1.SwitchMapper());
|
|
@@ -34,6 +36,7 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
34
36
|
this.mappers.push(new window_covering_mapper_1.WindowCoveringMapper());
|
|
35
37
|
this.mappers.push(new lock_mapper_1.LockMapper());
|
|
36
38
|
this.mappers.push(new sensor_mapper_1.SensorMapper());
|
|
39
|
+
this.mappers.push(new button_mapper_1.ButtonMapper());
|
|
37
40
|
}
|
|
38
41
|
canMap(device) {
|
|
39
42
|
return this.findMapper(device) !== null;
|
|
@@ -58,6 +61,7 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
58
61
|
}
|
|
59
62
|
const stagedBindings = [];
|
|
60
63
|
const stagedListeners = [];
|
|
64
|
+
const stagedOccurrenceListeners = [];
|
|
61
65
|
const context = {
|
|
62
66
|
commandDispatcher,
|
|
63
67
|
registerBinding: (binding) => {
|
|
@@ -66,17 +70,22 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
66
70
|
registerPropertyListener: (listener) => {
|
|
67
71
|
stagedListeners.push(listener);
|
|
68
72
|
},
|
|
73
|
+
registerOccurrenceListener: (listener) => {
|
|
74
|
+
stagedOccurrenceListeners.push(listener);
|
|
75
|
+
},
|
|
69
76
|
};
|
|
70
77
|
const accessory = mapper.buildAccessory(device, context);
|
|
71
78
|
if (!accessory) {
|
|
72
79
|
return null;
|
|
73
80
|
}
|
|
81
|
+
button_mapper_1.ButtonMapper.attachButtonServices(accessory, device, context);
|
|
74
82
|
battery_mapper_1.BatteryMapper.attachBatteryService(accessory, device, context);
|
|
75
83
|
return {
|
|
76
84
|
accessory,
|
|
77
85
|
deviceId: device.id,
|
|
78
86
|
bindings: stagedBindings,
|
|
79
87
|
listeners: stagedListeners,
|
|
88
|
+
occurrenceListeners: stagedOccurrenceListeners,
|
|
80
89
|
};
|
|
81
90
|
}
|
|
82
91
|
commitStaged(staged) {
|
|
@@ -103,6 +112,17 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
103
112
|
}
|
|
104
113
|
devProps.add(listener.propertyId);
|
|
105
114
|
}
|
|
115
|
+
for (const occListener of staged.occurrenceListeners) {
|
|
116
|
+
const existingProp = this.occurrenceListeners.get(occListener.propertyId) ?? [];
|
|
117
|
+
existingProp.push(occListener);
|
|
118
|
+
this.occurrenceListeners.set(occListener.propertyId, existingProp);
|
|
119
|
+
let devProps = this.deviceProperties.get(occListener.deviceId);
|
|
120
|
+
if (!devProps) {
|
|
121
|
+
devProps = new Set();
|
|
122
|
+
this.deviceProperties.set(occListener.deviceId, devProps);
|
|
123
|
+
}
|
|
124
|
+
devProps.add(occListener.propertyId);
|
|
125
|
+
}
|
|
106
126
|
}
|
|
107
127
|
getBindingsForProperty(propertyId) {
|
|
108
128
|
return this.propertyBindings.get(propertyId) ?? [];
|
|
@@ -110,6 +130,9 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
110
130
|
getListenersForProperty(propertyId) {
|
|
111
131
|
return this.propertyListeners.get(propertyId) ?? [];
|
|
112
132
|
}
|
|
133
|
+
getOccurrenceListeners(propertyId, _channelId) {
|
|
134
|
+
return this.occurrenceListeners.get(propertyId) ?? [];
|
|
135
|
+
}
|
|
113
136
|
clearDeviceBindings(deviceId) {
|
|
114
137
|
const propIds = this.deviceProperties.get(deviceId);
|
|
115
138
|
if (propIds) {
|
|
@@ -130,6 +153,14 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
130
153
|
else {
|
|
131
154
|
this.propertyListeners.set(propId, remainingListeners);
|
|
132
155
|
}
|
|
156
|
+
const occListeners = this.occurrenceListeners.get(propId) ?? [];
|
|
157
|
+
const remainingOccListeners = occListeners.filter((l) => l.deviceId !== deviceId);
|
|
158
|
+
if (remainingOccListeners.length === 0) {
|
|
159
|
+
this.occurrenceListeners.delete(propId);
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
this.occurrenceListeners.set(propId, remainingOccListeners);
|
|
163
|
+
}
|
|
133
164
|
}
|
|
134
165
|
this.deviceProperties.delete(deviceId);
|
|
135
166
|
}
|
|
@@ -137,6 +168,7 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
137
168
|
clearAllBindings() {
|
|
138
169
|
this.propertyBindings.clear();
|
|
139
170
|
this.propertyListeners.clear();
|
|
171
|
+
this.occurrenceListeners.clear();
|
|
140
172
|
this.deviceProperties.clear();
|
|
141
173
|
}
|
|
142
174
|
getSnapshot() {
|
|
@@ -148,6 +180,10 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
148
180
|
for (const [k, v] of this.propertyListeners.entries()) {
|
|
149
181
|
cloneListeners.set(k, [...v]);
|
|
150
182
|
}
|
|
183
|
+
const cloneOcc = new Map();
|
|
184
|
+
for (const [k, v] of this.occurrenceListeners.entries()) {
|
|
185
|
+
cloneOcc.set(k, [...v]);
|
|
186
|
+
}
|
|
151
187
|
const cloneProps = new Map();
|
|
152
188
|
for (const [k, v] of this.deviceProperties.entries()) {
|
|
153
189
|
cloneProps.set(k, new Set(v));
|
|
@@ -155,6 +191,7 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
155
191
|
return {
|
|
156
192
|
propertyBindings: cloneBindings,
|
|
157
193
|
propertyListeners: cloneListeners,
|
|
194
|
+
occurrenceListeners: cloneOcc,
|
|
158
195
|
deviceProperties: cloneProps,
|
|
159
196
|
};
|
|
160
197
|
}
|
|
@@ -166,6 +203,11 @@ let HomeKitMapperRegistryService = HomeKitMapperRegistryService_1 = class HomeKi
|
|
|
166
203
|
for (const [k, v] of snapshot.propertyListeners.entries()) {
|
|
167
204
|
this.propertyListeners.set(k, [...v]);
|
|
168
205
|
}
|
|
206
|
+
if (snapshot.occurrenceListeners) {
|
|
207
|
+
for (const [k, v] of snapshot.occurrenceListeners.entries()) {
|
|
208
|
+
this.occurrenceListeners.set(k, [...v]);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
169
211
|
for (const [k, v] of snapshot.deviceProperties.entries()) {
|
|
170
212
|
this.deviceProperties.set(k, new Set(v));
|
|
171
213
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homekit-mapper-registry.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-homekit/services/homekit-mapper-registry.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;AACA,2CAAoD;AAGpD,8DAA0D;
|
|
1
|
+
{"version":3,"file":"homekit-mapper-registry.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-homekit/services/homekit-mapper-registry.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,23 @@
|
|
|
1
|
+
import { ChannelInputOccurrencesService } from '../../../modules/devices/services/channel-input-occurrences.service';
|
|
1
2
|
import { ChannelsPropertiesService } from '../../../modules/devices/services/channels.properties.service';
|
|
2
3
|
import { ChannelsService } from '../../../modules/devices/services/channels.service';
|
|
3
4
|
export declare class ReTerminalButtonService {
|
|
4
5
|
private readonly channelsService;
|
|
5
6
|
private readonly channelsPropertiesService;
|
|
7
|
+
private readonly channelInputOccurrencesService;
|
|
6
8
|
private readonly logger;
|
|
7
9
|
private inputStream;
|
|
8
10
|
private deviceId;
|
|
11
|
+
private lifecycleGeneration;
|
|
9
12
|
private readonly buttonStates;
|
|
10
|
-
constructor(channelsService: ChannelsService, channelsPropertiesService: ChannelsPropertiesService);
|
|
13
|
+
constructor(channelsService: ChannelsService, channelsPropertiesService: ChannelsPropertiesService, channelInputOccurrencesService: ChannelInputOccurrencesService);
|
|
11
14
|
start(deviceId: string, inputDevicePath: string): void;
|
|
12
15
|
stop(): void;
|
|
13
16
|
findInputDevice(): Promise<string | null>;
|
|
14
|
-
|
|
17
|
+
handleInputEvent(data: Buffer): void;
|
|
15
18
|
private handleButtonPress;
|
|
16
19
|
private handleButtonRelease;
|
|
17
20
|
private getButtonState;
|
|
18
|
-
private
|
|
21
|
+
private emitOccurrence;
|
|
22
|
+
private emitDetected;
|
|
19
23
|
}
|
|
@@ -48,6 +48,7 @@ const fs = __importStar(require("fs"));
|
|
|
48
48
|
const common_1 = require("@nestjs/common");
|
|
49
49
|
const logger_1 = require("../../../common/logger");
|
|
50
50
|
const transform_utils_1 = require("../../../common/utils/transform.utils");
|
|
51
|
+
const channel_input_occurrences_service_1 = require("../../../modules/devices/services/channel-input-occurrences.service");
|
|
51
52
|
const channels_properties_service_1 = require("../../../modules/devices/services/channels.properties.service");
|
|
52
53
|
const channels_service_1 = require("../../../modules/devices/services/channels.service");
|
|
53
54
|
const devices_reterminal_constants_1 = require("../devices-reterminal.constants");
|
|
@@ -63,16 +64,19 @@ const KEY_MAP = {
|
|
|
63
64
|
33: devices_reterminal_constants_1.RETERMINAL_CHANNEL_IDENTIFIERS.BUTTON_O,
|
|
64
65
|
};
|
|
65
66
|
let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButtonService {
|
|
66
|
-
constructor(channelsService, channelsPropertiesService) {
|
|
67
|
+
constructor(channelsService, channelsPropertiesService, channelInputOccurrencesService) {
|
|
67
68
|
this.channelsService = channelsService;
|
|
68
69
|
this.channelsPropertiesService = channelsPropertiesService;
|
|
70
|
+
this.channelInputOccurrencesService = channelInputOccurrencesService;
|
|
69
71
|
this.logger = (0, logger_1.createExtensionLogger)(devices_reterminal_constants_1.DEVICES_RETERMINAL_PLUGIN_NAME, ReTerminalButtonService_1.name);
|
|
70
72
|
this.inputStream = null;
|
|
71
73
|
this.deviceId = null;
|
|
74
|
+
this.lifecycleGeneration = 0;
|
|
72
75
|
this.buttonStates = new Map();
|
|
73
76
|
}
|
|
74
77
|
start(deviceId, inputDevicePath) {
|
|
75
78
|
this.stop();
|
|
79
|
+
this.lifecycleGeneration++;
|
|
76
80
|
this.deviceId = deviceId;
|
|
77
81
|
try {
|
|
78
82
|
this.inputStream = fs.createReadStream(inputDevicePath, {
|
|
@@ -92,15 +96,20 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
92
96
|
}
|
|
93
97
|
}
|
|
94
98
|
stop() {
|
|
99
|
+
this.lifecycleGeneration++;
|
|
95
100
|
if (this.inputStream) {
|
|
96
101
|
this.inputStream.destroy();
|
|
97
102
|
this.inputStream = null;
|
|
98
103
|
}
|
|
99
104
|
for (const state of this.buttonStates.values()) {
|
|
100
|
-
if (state.longPressTimer)
|
|
105
|
+
if (state.longPressTimer) {
|
|
101
106
|
clearTimeout(state.longPressTimer);
|
|
102
|
-
|
|
107
|
+
state.longPressTimer = null;
|
|
108
|
+
}
|
|
109
|
+
if (state.doublePressTimer) {
|
|
103
110
|
clearTimeout(state.doublePressTimer);
|
|
111
|
+
state.doublePressTimer = null;
|
|
112
|
+
}
|
|
104
113
|
}
|
|
105
114
|
this.buttonStates.clear();
|
|
106
115
|
this.deviceId = null;
|
|
@@ -140,6 +149,10 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
140
149
|
if (!channelIdentifier)
|
|
141
150
|
continue;
|
|
142
151
|
if (value === 1) {
|
|
152
|
+
const state = this.getButtonState(channelIdentifier);
|
|
153
|
+
if (state.pressedAt !== null) {
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
143
156
|
this.handleButtonPress(channelIdentifier);
|
|
144
157
|
}
|
|
145
158
|
else if (value === 0) {
|
|
@@ -151,16 +164,17 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
151
164
|
const state = this.getButtonState(channelIdentifier);
|
|
152
165
|
state.pressedAt = Date.now();
|
|
153
166
|
state.longPressFired = false;
|
|
154
|
-
void this.
|
|
167
|
+
void this.emitDetected(channelIdentifier, true);
|
|
155
168
|
if (state.longPressTimer) {
|
|
156
169
|
clearTimeout(state.longPressTimer);
|
|
170
|
+
state.longPressTimer = null;
|
|
157
171
|
}
|
|
158
172
|
if (state.doublePressTimer) {
|
|
159
173
|
clearTimeout(state.doublePressTimer);
|
|
160
174
|
state.doublePressTimer = null;
|
|
161
175
|
}
|
|
162
176
|
state.longPressTimer = setTimeout(() => {
|
|
163
|
-
void this.
|
|
177
|
+
void this.emitOccurrence(channelIdentifier, 'long_press');
|
|
164
178
|
state.longPressTimer = null;
|
|
165
179
|
state.longPressFired = true;
|
|
166
180
|
}, devices_reterminal_constants_1.DEFAULT_BUTTON_LONG_PRESS_MS);
|
|
@@ -169,17 +183,18 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
169
183
|
const state = this.getButtonState(channelIdentifier);
|
|
170
184
|
const now = Date.now();
|
|
171
185
|
const pressDuration = state.pressedAt ? now - state.pressedAt : 0;
|
|
172
|
-
|
|
186
|
+
state.pressedAt = null;
|
|
187
|
+
void this.emitDetected(channelIdentifier, false);
|
|
173
188
|
const timerWasPending = state.longPressTimer !== null;
|
|
174
189
|
if (state.longPressTimer) {
|
|
175
190
|
clearTimeout(state.longPressTimer);
|
|
176
191
|
state.longPressTimer = null;
|
|
177
192
|
}
|
|
178
|
-
if (pressDuration >= devices_reterminal_constants_1.DEFAULT_BUTTON_LONG_PRESS_MS) {
|
|
193
|
+
if (state.longPressFired || pressDuration >= devices_reterminal_constants_1.DEFAULT_BUTTON_LONG_PRESS_MS) {
|
|
179
194
|
if (timerWasPending && !state.longPressFired) {
|
|
180
|
-
void this.
|
|
195
|
+
void this.emitOccurrence(channelIdentifier, 'long_press');
|
|
181
196
|
}
|
|
182
|
-
state.
|
|
197
|
+
state.lastReleaseAt = null;
|
|
183
198
|
return;
|
|
184
199
|
}
|
|
185
200
|
if (state.lastReleaseAt && now - state.lastReleaseAt < devices_reterminal_constants_1.DEFAULT_BUTTON_DOUBLE_PRESS_MS) {
|
|
@@ -187,17 +202,17 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
187
202
|
clearTimeout(state.doublePressTimer);
|
|
188
203
|
state.doublePressTimer = null;
|
|
189
204
|
}
|
|
190
|
-
void this.emitPropertyValue(channelIdentifier, 'event', 'double_press');
|
|
191
205
|
state.lastReleaseAt = null;
|
|
206
|
+
void this.emitOccurrence(channelIdentifier, 'double_press');
|
|
192
207
|
}
|
|
193
208
|
else {
|
|
194
209
|
state.lastReleaseAt = now;
|
|
195
210
|
state.doublePressTimer = setTimeout(() => {
|
|
196
|
-
void this.
|
|
211
|
+
void this.emitOccurrence(channelIdentifier, 'press');
|
|
197
212
|
state.doublePressTimer = null;
|
|
213
|
+
state.lastReleaseAt = null;
|
|
198
214
|
}, devices_reterminal_constants_1.DEFAULT_BUTTON_DOUBLE_PRESS_MS);
|
|
199
215
|
}
|
|
200
|
-
state.pressedAt = null;
|
|
201
216
|
}
|
|
202
217
|
getButtonState(channelIdentifier) {
|
|
203
218
|
let state = this.buttonStates.get(channelIdentifier);
|
|
@@ -213,23 +228,53 @@ let ReTerminalButtonService = ReTerminalButtonService_1 = class ReTerminalButton
|
|
|
213
228
|
}
|
|
214
229
|
return state;
|
|
215
230
|
}
|
|
216
|
-
async
|
|
231
|
+
async emitOccurrence(channelIdentifier, event) {
|
|
232
|
+
if (!this.deviceId)
|
|
233
|
+
return;
|
|
234
|
+
const deviceId = this.deviceId;
|
|
235
|
+
const generation = this.lifecycleGeneration;
|
|
236
|
+
try {
|
|
237
|
+
const channel = await this.channelsService.findOneBy('identifier', channelIdentifier, deviceId, devices_reterminal_constants_1.DEVICES_RETERMINAL_TYPE);
|
|
238
|
+
if (!channel)
|
|
239
|
+
return;
|
|
240
|
+
const property = await this.channelsPropertiesService.findOneBy('identifier', 'event', channel.id, devices_reterminal_constants_1.DEVICES_RETERMINAL_TYPE);
|
|
241
|
+
if (!property)
|
|
242
|
+
return;
|
|
243
|
+
if (this.lifecycleGeneration !== generation || this.deviceId !== deviceId)
|
|
244
|
+
return;
|
|
245
|
+
await this.channelInputOccurrencesService.publishOccurrence({
|
|
246
|
+
deviceId,
|
|
247
|
+
channelId: channel.id,
|
|
248
|
+
propertyId: property.id,
|
|
249
|
+
event,
|
|
250
|
+
nativeEventType: event,
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
catch (error) {
|
|
254
|
+
this.logger.debug(`Failed to emit button occurrence ${channelIdentifier}.event: ${error}`);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
async emitDetected(channelIdentifier, value) {
|
|
217
258
|
if (!this.deviceId)
|
|
218
259
|
return;
|
|
260
|
+
const deviceId = this.deviceId;
|
|
261
|
+
const generation = this.lifecycleGeneration;
|
|
219
262
|
try {
|
|
220
|
-
const channel = await this.channelsService.findOneBy('identifier', channelIdentifier,
|
|
263
|
+
const channel = await this.channelsService.findOneBy('identifier', channelIdentifier, deviceId, devices_reterminal_constants_1.DEVICES_RETERMINAL_TYPE);
|
|
221
264
|
if (!channel)
|
|
222
265
|
return;
|
|
223
|
-
const property = await this.channelsPropertiesService.findOneBy('identifier',
|
|
266
|
+
const property = await this.channelsPropertiesService.findOneBy('identifier', 'detected', channel.id, devices_reterminal_constants_1.DEVICES_RETERMINAL_TYPE);
|
|
224
267
|
if (!property)
|
|
225
268
|
return;
|
|
269
|
+
if (this.lifecycleGeneration !== generation || this.deviceId !== deviceId)
|
|
270
|
+
return;
|
|
226
271
|
await this.channelsPropertiesService.update(property.id, (0, transform_utils_1.toInstance)(update_channel_property_dto_1.UpdateReTerminalChannelPropertyDto, {
|
|
227
272
|
type: devices_reterminal_constants_1.DEVICES_RETERMINAL_TYPE,
|
|
228
273
|
value,
|
|
229
274
|
}));
|
|
230
275
|
}
|
|
231
276
|
catch (error) {
|
|
232
|
-
this.logger.debug(`Failed to emit button
|
|
277
|
+
this.logger.debug(`Failed to emit button detected ${channelIdentifier}.detected: ${error}`);
|
|
233
278
|
}
|
|
234
279
|
}
|
|
235
280
|
};
|
|
@@ -237,6 +282,7 @@ exports.ReTerminalButtonService = ReTerminalButtonService;
|
|
|
237
282
|
exports.ReTerminalButtonService = ReTerminalButtonService = ReTerminalButtonService_1 = __decorate([
|
|
238
283
|
(0, common_1.Injectable)(),
|
|
239
284
|
__metadata("design:paramtypes", [channels_service_1.ChannelsService,
|
|
240
|
-
channels_properties_service_1.ChannelsPropertiesService
|
|
285
|
+
channels_properties_service_1.ChannelsPropertiesService,
|
|
286
|
+
channel_input_occurrences_service_1.ChannelInputOccurrencesService])
|
|
241
287
|
], ReTerminalButtonService);
|
|
242
288
|
//# sourceMappingURL=reterminal-button.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reterminal-button.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-reterminal/services/reterminal-button.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AAEzB,2CAA4C;AAE5C,mDAA+D;AAC/D,2EAAmE;AACnE,+GAA0G;AAC1G,yFAAqF;AACrF,kFAMyC;AACzC,oFAAwF;AAOxF,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC3E,MAAM,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,MAAM,uBAAuB,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,MAAM,MAAM,GAAG,CAAC,CAAC;AAGjB,MAAM,OAAO,GAA2B;IACvC,EAAE,EAAE,6DAA8B,CAAC,SAAS;IAC5C,EAAE,EAAE,6DAA8B,CAAC,SAAS;IAC5C,EAAE,EAAE,6DAA8B,CAAC,SAAS;IAC5C,EAAE,EAAE,6DAA8B,CAAC,QAAQ;CAC3C,CAAC;AAeK,IAAM,uBAAuB,+BAA7B,MAAM,uBAAuB;
|
|
1
|
+
{"version":3,"file":"reterminal-button.service.js","sourceRoot":"","sources":["../../../../src/plugins/devices-reterminal/services/reterminal-button.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FastifyReply } from 'fastify';
|
|
2
|
+
import { ChannelInputOccurrenceResponseModel } from '../../../modules/devices/models/channel-input-occurrence.model';
|
|
3
|
+
import { ChannelInputOccurrencesService } from '../../../modules/devices/services/channel-input-occurrences.service';
|
|
4
|
+
import { ChannelsPropertiesService } from '../../../modules/devices/services/channels.properties.service';
|
|
5
|
+
import { ChannelsService } from '../../../modules/devices/services/channels.service';
|
|
6
|
+
import { DevicesService } from '../../../modules/devices/services/devices.service';
|
|
7
|
+
import { ReportInputOccurrenceDto } from '../dto/report-input-occurrence.dto';
|
|
8
|
+
export declare class ThirdPartyInputsController {
|
|
9
|
+
private readonly devicesService;
|
|
10
|
+
private readonly channelsService;
|
|
11
|
+
private readonly channelsPropertiesService;
|
|
12
|
+
private readonly channelInputOccurrencesService;
|
|
13
|
+
private readonly logger;
|
|
14
|
+
constructor(devicesService: DevicesService, channelsService: ChannelsService, channelsPropertiesService: ChannelsPropertiesService, channelInputOccurrencesService: ChannelInputOccurrencesService);
|
|
15
|
+
reportOccurrence(deviceId: string, channelId: string, dto: ReportInputOccurrenceDto, res?: FastifyReply): Promise<ChannelInputOccurrenceResponseModel | void>;
|
|
16
|
+
reportEvent(deviceId: string, channelId: string, dto: ReportInputOccurrenceDto, res?: FastifyReply): Promise<ChannelInputOccurrenceResponseModel | void>;
|
|
17
|
+
}
|