hoffmation-base 1.1.0 → 1.1.3
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/lib/models/deviceSettings/wledSettings.d.ts +2 -2
- package/lib/models/deviceSettings/wledSettings.js +2 -2
- package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +1 -0
- package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +2 -1
- package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +1 -0
- package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +3 -5
- package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +1 -0
- package/lib/server/devices/groups/lampenGroup.js +1 -1
- package/lib/server/devices/hmIPDevices/hmIpLampe.d.ts +3 -0
- package/lib/server/devices/hmIPDevices/hmIpLampe.js +10 -1
- package/lib/server/devices/hmIPDevices/hmIpRoll.d.ts +1 -0
- package/lib/server/devices/hmIPDevices/hmIpRoll.js +5 -0
- package/lib/server/devices/hmIPDevices/hmIpTaster.d.ts +2 -1
- package/lib/server/devices/hmIPDevices/hmIpTaster.js +19 -7
- package/lib/server/devices/hmIPDevices/hmIpWippe.d.ts +2 -1
- package/lib/server/devices/hmIPDevices/hmIpWippe.js +14 -4
- package/lib/server/devices/wledDevice.d.ts +10 -2
- package/lib/server/devices/wledDevice.js +38 -5
- package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +1 -0
- package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +4 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.d.ts +1 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +5 -0
- package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.d.ts +2 -1
- package/lib/server/devices/zigbee/BaseDevices/zigbeeSwitch.js +5 -0
- package/lib/server/devices/zigbee/zigbeeAqaraOpple3Switch.js +17 -11
- package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +3 -0
- package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +10 -1
- package/lib/server/devices/zigbee/zigbeeIlluLampe.js +1 -1
- package/lib/server/services/dbo/iPersist.d.ts +4 -2
- package/lib/server/services/dbo/postgreSqlPersist.d.ts +4 -2
- package/lib/server/services/dbo/postgreSqlPersist.js +61 -8
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -4,6 +4,7 @@ exports.PostgreSqlPersist = void 0;
|
|
|
4
4
|
const models_1 = require("../../../models");
|
|
5
5
|
const pg_1 = require("pg");
|
|
6
6
|
const log_service_1 = require("../log-service");
|
|
7
|
+
const DeviceCapability_1 = require("../../devices/DeviceCapability");
|
|
7
8
|
class PostgreSqlPersist {
|
|
8
9
|
constructor(config) {
|
|
9
10
|
this.initialized = false;
|
|
@@ -24,7 +25,7 @@ values ('${room.roomName}',${room.settings.etage})
|
|
|
24
25
|
this.query(`
|
|
25
26
|
insert into hoffmation_schema."DeviceInfo" ("deviceid", "roomname", "alldeviceskey", "customname", "devtype")
|
|
26
27
|
values ('${device.id}','${device.info.room}','${device.info.allDevicesKey}','${device.info.customName}', ${device.deviceType})
|
|
27
|
-
ON CONFLICT (
|
|
28
|
+
ON CONFLICT ("deviceid")
|
|
28
29
|
DO UPDATE SET
|
|
29
30
|
"roomname" = '${device.info.room}',
|
|
30
31
|
"alldeviceskey" = '${device.info.allDevicesKey}',
|
|
@@ -123,6 +124,25 @@ create table "CurrentIllumination"
|
|
|
123
124
|
alter table "CurrentIllumination"
|
|
124
125
|
owner to postgres;
|
|
125
126
|
END IF;
|
|
127
|
+
|
|
128
|
+
IF (SELECT to_regclass('hoffmation_schema."ButtonSwitchPresses"') IS NULL) Then
|
|
129
|
+
create table if not exists hoffmation_schema."ButtonSwitchPresses"
|
|
130
|
+
(
|
|
131
|
+
"deviceID" varchar(60) not null
|
|
132
|
+
constraint "ButtonSwitchPresses_DeviceInfo_null_fk"
|
|
133
|
+
references hoffmation_schema."DeviceInfo"
|
|
134
|
+
on delete set null,
|
|
135
|
+
"pressType" int,
|
|
136
|
+
"buttonName" varchar(30),
|
|
137
|
+
date timestamp not null,
|
|
138
|
+
constraint buttonswitchpresses_pk
|
|
139
|
+
primary key ("deviceID", "pressType", date)
|
|
140
|
+
);
|
|
141
|
+
|
|
142
|
+
alter table hoffmation_schema."ButtonSwitchPresses"
|
|
143
|
+
owner to postgres;
|
|
144
|
+
END IF;
|
|
145
|
+
|
|
126
146
|
IF (SELECT to_regclass('hoffmation_schema."EnergyCalculation"') IS NULL) Then
|
|
127
147
|
create table "EnergyCalculation"
|
|
128
148
|
(
|
|
@@ -179,17 +199,17 @@ IF (SELECT to_regclass('hoffmation_schema."AcDeviceData"') IS NULL) Then
|
|
|
179
199
|
END IF;
|
|
180
200
|
|
|
181
201
|
|
|
182
|
-
IF (SELECT to_regclass('hoffmation_schema."
|
|
183
|
-
create table hoffmation_schema."
|
|
202
|
+
IF (SELECT to_regclass('hoffmation_schema."ActuatorDeviceData"') IS NULL) Then
|
|
203
|
+
create table hoffmation_schema."ActuatorDeviceData"
|
|
184
204
|
(
|
|
185
205
|
"deviceID" varchar(60) not null,
|
|
186
206
|
"on" boolean,
|
|
187
207
|
date timestamp not null,
|
|
188
|
-
constraint
|
|
208
|
+
constraint ActuatorDeviceData_pk
|
|
189
209
|
primary key ("deviceID", date)
|
|
190
210
|
);
|
|
191
211
|
|
|
192
|
-
alter table hoffmation_schema."
|
|
212
|
+
alter table hoffmation_schema."ActuatorDeviceData"
|
|
193
213
|
owner to postgres;
|
|
194
214
|
END IF;
|
|
195
215
|
|
|
@@ -206,6 +226,23 @@ IF (SELECT to_regclass('hoffmation_schema."MotionSensorDeviceData"') IS NULL) Th
|
|
|
206
226
|
alter table hoffmation_schema."MotionSensorDeviceData"
|
|
207
227
|
owner to postgres;
|
|
208
228
|
END IF;
|
|
229
|
+
|
|
230
|
+
IF (SELECT to_regclass('hoffmation_schema."ShutterDeviceData"') IS NULL) Then
|
|
231
|
+
create table if not exists hoffmation_schema."ShutterDeviceData"
|
|
232
|
+
(
|
|
233
|
+
"deviceID" varchar(60) not null
|
|
234
|
+
constraint "ShutterDeviceData_DeviceInfo_null_fk"
|
|
235
|
+
references hoffmation_schema."DeviceInfo"
|
|
236
|
+
on delete set null,
|
|
237
|
+
"position" double precision,
|
|
238
|
+
date timestamp not null,
|
|
239
|
+
constraint shutterdevicedata_pk
|
|
240
|
+
primary key ("deviceID", date)
|
|
241
|
+
);
|
|
242
|
+
|
|
243
|
+
alter table hoffmation_schema."ShutterDeviceData"
|
|
244
|
+
owner to postgres;
|
|
245
|
+
END IF;
|
|
209
246
|
|
|
210
247
|
IF (SELECT to_regclass('hoffmation_schema."TemperaturData"') IS NULL) Then
|
|
211
248
|
create table "TemperaturData"
|
|
@@ -234,16 +271,32 @@ insert into hoffmation_schema."AcDeviceData" ("deviceID", "on", "date", "roomTem
|
|
|
234
271
|
values ('${device.id}', ${device.on}, '${new Date().toISOString()}', ${device.temperature});
|
|
235
272
|
`);
|
|
236
273
|
}
|
|
237
|
-
|
|
274
|
+
persistActuator(device) {
|
|
275
|
+
let percentage = undefined;
|
|
276
|
+
if (device.deviceCapabilities.includes(DeviceCapability_1.DeviceCapability.dimmablelamp)) {
|
|
277
|
+
percentage = device.brightness;
|
|
278
|
+
}
|
|
279
|
+
this.query(`
|
|
280
|
+
insert into hoffmation_schema."ActuatorDeviceData" ("deviceID", "on", "date", "percentage")
|
|
281
|
+
values ('${device.id}', ${device.actuatorOn}, '${new Date().toISOString()}', ${percentage !== null && percentage !== void 0 ? percentage : 'null'});
|
|
282
|
+
`);
|
|
283
|
+
}
|
|
284
|
+
persistSwitchInput(device, pressType, buttonName) {
|
|
238
285
|
this.query(`
|
|
239
|
-
insert into hoffmation_schema."
|
|
240
|
-
values ('${device.id}', ${
|
|
286
|
+
insert into hoffmation_schema."ButtonSwitchPresses" ("deviceID", "pressType", "buttonName", "date")
|
|
287
|
+
values ('${device.id}', ${pressType}, '${buttonName}', '${new Date().toISOString()}');
|
|
241
288
|
`);
|
|
242
289
|
}
|
|
243
290
|
persistMotionSensor(device) {
|
|
244
291
|
this.query(`
|
|
245
292
|
insert into hoffmation_schema."MotionSensorDeviceData" ("deviceID", "movementDetected", "date")
|
|
246
293
|
values ('${device.id}', ${device.movementDetected}, '${new Date().toISOString()}');
|
|
294
|
+
`);
|
|
295
|
+
}
|
|
296
|
+
persistShutter(device) {
|
|
297
|
+
this.query(`
|
|
298
|
+
insert into hoffmation_schema."ShutterDeviceData" ("deviceID", "position", "date")
|
|
299
|
+
values ('${device.id}', ${device.currentLevel}, '${new Date().toISOString()}');
|
|
247
300
|
`);
|
|
248
301
|
}
|
|
249
302
|
persistCurrentIllumination(data) {
|