hoffmation-base 2.2.2 → 2.2.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.
Files changed (50) hide show
  1. package/lib/server/config/heatingMode.d.ts +5 -0
  2. package/lib/server/config/heatingMode.js +9 -0
  3. package/lib/server/config/iAsusConfig.d.ts +6 -0
  4. package/lib/server/config/iAsusConfig.js +2 -0
  5. package/lib/server/config/iBlueIrisSettings.d.ts +5 -0
  6. package/lib/server/config/iBlueIrisSettings.js +2 -0
  7. package/lib/server/config/iBluetoothTrackingSettings.d.ts +4 -0
  8. package/lib/server/config/iBluetoothTrackingSettings.js +2 -0
  9. package/lib/server/config/iConfig.d.ts +20 -109
  10. package/lib/server/config/iConfig.js +0 -7
  11. package/lib/server/config/iDaikinSettings.d.ts +6 -0
  12. package/lib/server/config/iDaikinSettings.js +2 -0
  13. package/lib/server/config/iEspresenseSettings.d.ts +7 -0
  14. package/lib/server/config/iEspresenseSettings.js +2 -0
  15. package/lib/server/config/iHeaterSettings.d.ts +9 -0
  16. package/lib/server/config/iHeaterSettings.js +2 -0
  17. package/lib/server/config/iIobrokerSettigns.d.ts +7 -0
  18. package/lib/server/config/iIobrokerSettigns.js +2 -0
  19. package/lib/server/config/iLogSettings.d.ts +11 -0
  20. package/lib/server/config/iLogSettings.js +2 -0
  21. package/lib/server/config/iMp3Settings.d.ts +4 -0
  22. package/lib/server/config/iMp3Settings.js +2 -0
  23. package/lib/server/config/iMuellSettings.d.ts +3 -0
  24. package/lib/server/config/iMuellSettings.js +2 -0
  25. package/lib/server/config/iNewsSettings.d.ts +5 -0
  26. package/lib/server/config/iNewsSettings.js +2 -0
  27. package/lib/server/config/iPersistenceSettings.d.ts +4 -0
  28. package/lib/server/config/iPersistenceSettings.js +2 -0
  29. package/lib/server/config/iPollySettings.d.ts +8 -0
  30. package/lib/server/config/iPollySettings.js +2 -0
  31. package/lib/server/config/iRestSettings.d.ts +4 -0
  32. package/lib/server/config/iRestSettings.js +2 -0
  33. package/lib/server/config/iSonosSettings.d.ts +4 -0
  34. package/lib/server/config/iSonosSettings.js +2 -0
  35. package/lib/server/config/iTelegramSettings.d.ts +7 -0
  36. package/lib/server/config/iTelegramSettings.js +2 -0
  37. package/lib/server/config/iTimePair.d.ts +4 -0
  38. package/lib/server/config/iTimePair.js +2 -0
  39. package/lib/server/config/iTimeSettings.d.ts +5 -0
  40. package/lib/server/config/iTimeSettings.js +2 -0
  41. package/lib/server/config/iTranslationSettings.d.ts +3 -0
  42. package/lib/server/config/iTranslationSettings.js +2 -0
  43. package/lib/server/config/iWeatherSettings.d.ts +5 -0
  44. package/lib/server/config/iWeatherSettings.js +2 -0
  45. package/lib/server/config/index.d.ts +21 -0
  46. package/lib/server/config/index.js +21 -0
  47. package/lib/server/devices/blueIris/cameraDevice.d.ts +4 -1
  48. package/lib/server/devices/blueIris/cameraDevice.js +14 -6
  49. package/lib/tsconfig.tsbuildinfo +1 -1
  50. package/package.json +1 -1
@@ -0,0 +1,5 @@
1
+ export declare enum HeatingMode {
2
+ None = 0,
3
+ Winter = 1,
4
+ Sommer = 2
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HeatingMode = void 0;
4
+ var HeatingMode;
5
+ (function (HeatingMode) {
6
+ HeatingMode[HeatingMode["None"] = 0] = "None";
7
+ HeatingMode[HeatingMode["Winter"] = 1] = "Winter";
8
+ HeatingMode[HeatingMode["Sommer"] = 2] = "Sommer";
9
+ })(HeatingMode = exports.HeatingMode || (exports.HeatingMode = {}));
@@ -0,0 +1,6 @@
1
+ export interface iAsusConfig {
2
+ address: string;
3
+ ignoreSSL?: boolean;
4
+ password: string;
5
+ username: string;
6
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ export interface iBlueIrisSettings {
2
+ serverAddress: string;
3
+ username?: string;
4
+ password?: string;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface iBluetoothTrackingSettings {
2
+ customName: string;
3
+ activeTracking: boolean;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,37 +1,25 @@
1
- import { iRoomDefaultSettings, LogLevel } from '../../models';
2
- import { PoolConfig } from 'pg';
3
- interface iDaikinSettings {
4
- active: boolean;
5
- activateTracingLogger?: boolean;
6
- useGetToPost?: boolean;
7
- buttonBotRightForAc?: boolean;
8
- }
9
- interface iSonosSettings {
10
- active: boolean;
11
- buttonBotRightForRadio?: boolean;
12
- }
13
- export interface iAsusConfig {
14
- address: string;
15
- ignoreSSL?: boolean;
16
- password: string;
17
- username: string;
18
- }
19
- export interface iRestSettings {
20
- active: boolean;
21
- port?: number;
22
- }
23
- export interface iEspresenseSettings {
24
- mqttInstance: number;
25
- deviceMap: {
26
- [folderId: string]: iBluetoothTrackingSettings;
27
- };
28
- }
29
- export interface iBluetoothTrackingSettings {
30
- customName: string;
31
- activeTracking: boolean;
32
- }
1
+ import { iLogSettings } from './iLogSettings';
2
+ import { iSonosSettings } from './iSonosSettings';
3
+ import { iRoomDefaultSettings } from '../../models';
4
+ import { iNewsSettings } from './iNewsSettings';
5
+ import { iIobrokerSettigns } from './iIobrokerSettigns';
6
+ import { iPollySettings } from './iPollySettings';
7
+ import { iTelegramSettings } from './iTelegramSettings';
8
+ import { iWeatherSettings } from './iWeatherSettings';
9
+ import { iMp3Settings } from './iMp3Settings';
10
+ import { iPersistenceSettings } from './iPersistenceSettings';
11
+ import { iTimeSettings } from './iTimeSettings';
12
+ import { iAsusConfig } from './iAsusConfig';
13
+ import { iTranslationSettings } from './iTranslationSettings';
14
+ import { iMuellSettings } from './iMuellSettings';
15
+ import { iDaikinSettings } from './iDaikinSettings';
16
+ import { iHeaterSettings } from './iHeaterSettings';
17
+ import { iBlueIrisSettings } from './iBlueIrisSettings';
18
+ import { iRestSettings } from './iRestSettings';
19
+ import { iEspresenseSettings } from './iEspresenseSettings';
33
20
  export interface iConfig {
34
21
  asusConfig?: iAsusConfig;
22
+ blueIris?: iBlueIrisSettings;
35
23
  daikin?: iDaikinSettings;
36
24
  espresense?: iEspresenseSettings;
37
25
  injectWattagePrice?: number;
@@ -53,80 +41,3 @@ export interface iConfig {
53
41
  wattagePrice?: number;
54
42
  weather?: iWeatherSettings;
55
43
  }
56
- export declare enum HeatingMode {
57
- None = 0,
58
- Winter = 1,
59
- Sommer = 2
60
- }
61
- export interface iHeaterSettings {
62
- /**
63
- * Whether heating with ac is allowed
64
- * This normally depends on the cost difference between ac heating and conventional heating
65
- */
66
- allowAcHeating?: boolean;
67
- mode?: HeatingMode;
68
- }
69
- export interface iIobrokerSettigns {
70
- /**
71
- * Whether states should be initialized by processing each key on its own.
72
- * This allows to detect states which crash the Websocket Payload limit
73
- */
74
- useSplitInitialization?: boolean;
75
- }
76
- export interface iLogSettings {
77
- logLevel: number;
78
- useTimestamp: boolean;
79
- debugNewMovementState?: boolean;
80
- debugShutterPositionChange?: boolean;
81
- debugActuatorChange?: boolean;
82
- debugUchangedShutterPosition?: boolean;
83
- debugUnchangedActuator?: boolean;
84
- debugDaikinSuccessfullControlInfo?: boolean;
85
- debugEuroHeaterValve?: boolean;
86
- }
87
- export interface iTimePair {
88
- hours: number;
89
- minutes: number;
90
- }
91
- export interface iTimeSettings {
92
- nightStart: iTimePair;
93
- nightEnd: iTimePair;
94
- }
95
- export interface iTelegramSettings {
96
- logLevel: LogLevel;
97
- telegramToken: string;
98
- allowedIDs: number[];
99
- subscribedIDs: number[];
100
- }
101
- export interface iPersistenceSettings {
102
- postgreSql?: PoolConfig;
103
- }
104
- export interface iPollySettings {
105
- mp3Path: string;
106
- region: string;
107
- signatureVersion: string;
108
- accessKeyId: string;
109
- secretAccessKey: string;
110
- voiceID: string;
111
- }
112
- export interface iMp3Settings {
113
- path: string;
114
- serverAddress: string;
115
- }
116
- export interface iWeatherSettings {
117
- lattitude: string;
118
- longitude: string;
119
- appid?: string;
120
- }
121
- export interface iMuellSettings {
122
- calendarURL: string;
123
- }
124
- export interface iNewsSettings {
125
- rssUrl?: string;
126
- requestInterval?: number;
127
- keepMaxAge?: number;
128
- }
129
- export interface iTranslationSettings {
130
- language: string;
131
- }
132
- export {};
@@ -1,9 +1,2 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HeatingMode = void 0;
4
- var HeatingMode;
5
- (function (HeatingMode) {
6
- HeatingMode[HeatingMode["None"] = 0] = "None";
7
- HeatingMode[HeatingMode["Winter"] = 1] = "Winter";
8
- HeatingMode[HeatingMode["Sommer"] = 2] = "Sommer";
9
- })(HeatingMode = exports.HeatingMode || (exports.HeatingMode = {}));
@@ -0,0 +1,6 @@
1
+ export interface iDaikinSettings {
2
+ active: boolean;
3
+ activateTracingLogger?: boolean;
4
+ useGetToPost?: boolean;
5
+ buttonBotRightForAc?: boolean;
6
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import { iBluetoothTrackingSettings } from './iBluetoothTrackingSettings';
2
+ export interface iEspresenseSettings {
3
+ mqttInstance: number;
4
+ deviceMap: {
5
+ [folderId: string]: iBluetoothTrackingSettings;
6
+ };
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ import { HeatingMode } from './heatingMode';
2
+ export interface iHeaterSettings {
3
+ /**
4
+ * Whether heating with ac is allowed
5
+ * This normally depends on the cost difference between ac heating and conventional heating
6
+ */
7
+ allowAcHeating?: boolean;
8
+ mode?: HeatingMode;
9
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ export interface iIobrokerSettigns {
2
+ /**
3
+ * Whether states should be initialized by processing each key on its own.
4
+ * This allows to detect states which crash the Websocket Payload limit
5
+ */
6
+ useSplitInitialization?: boolean;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,11 @@
1
+ export interface iLogSettings {
2
+ logLevel: number;
3
+ useTimestamp: boolean;
4
+ debugNewMovementState?: boolean;
5
+ debugShutterPositionChange?: boolean;
6
+ debugActuatorChange?: boolean;
7
+ debugUchangedShutterPosition?: boolean;
8
+ debugUnchangedActuator?: boolean;
9
+ debugDaikinSuccessfullControlInfo?: boolean;
10
+ debugEuroHeaterValve?: boolean;
11
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface iMp3Settings {
2
+ path: string;
3
+ serverAddress: string;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ export interface iMuellSettings {
2
+ calendarURL: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ export interface iNewsSettings {
2
+ rssUrl?: string;
3
+ requestInterval?: number;
4
+ keepMaxAge?: number;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import { PoolConfig } from 'pg';
2
+ export interface iPersistenceSettings {
3
+ postgreSql?: PoolConfig;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ export interface iPollySettings {
2
+ mp3Path: string;
3
+ region: string;
4
+ signatureVersion: string;
5
+ accessKeyId: string;
6
+ secretAccessKey: string;
7
+ voiceID: string;
8
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface iRestSettings {
2
+ active: boolean;
3
+ port?: number;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface iSonosSettings {
2
+ active: boolean;
3
+ buttonBotRightForRadio?: boolean;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import { LogLevel } from '../../models';
2
+ export interface iTelegramSettings {
3
+ logLevel: LogLevel;
4
+ telegramToken: string;
5
+ allowedIDs: number[];
6
+ subscribedIDs: number[];
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ export interface iTimePair {
2
+ hours: number;
3
+ minutes: number;
4
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import { iTimePair } from './iTimePair';
2
+ export interface iTimeSettings {
3
+ nightStart: iTimePair;
4
+ nightEnd: iTimePair;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ export interface iTranslationSettings {
2
+ language: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ export interface iWeatherSettings {
2
+ lattitude: string;
3
+ longitude: string;
4
+ appid?: string;
5
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1,22 @@
1
1
  export * from './iConfig';
2
+ export * from './iBlueIrisSettings';
3
+ export * from './iBluetoothTrackingSettings';
4
+ export * from './iEspresenseSettings';
5
+ export * from './iRestSettings';
6
+ export * from './iAsusConfig';
7
+ export * from './iDaikinSettings';
8
+ export * from './iSonosSettings';
9
+ export * from './heatingMode';
10
+ export * from './iHeaterSettings';
11
+ export * from './iIobrokerSettigns';
12
+ export * from './iLogSettings';
13
+ export * from './iNewsSettings';
14
+ export * from './iTranslationSettings';
15
+ export * from './iMuellSettings';
16
+ export * from './iMp3Settings';
17
+ export * from './iWeatherSettings';
18
+ export * from './iPollySettings';
19
+ export * from './iPersistenceSettings';
20
+ export * from './iTelegramSettings';
21
+ export * from './iTimeSettings';
22
+ export * from './iTimePair';
@@ -15,3 +15,24 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./iConfig"), exports);
18
+ __exportStar(require("./iBlueIrisSettings"), exports);
19
+ __exportStar(require("./iBluetoothTrackingSettings"), exports);
20
+ __exportStar(require("./iEspresenseSettings"), exports);
21
+ __exportStar(require("./iRestSettings"), exports);
22
+ __exportStar(require("./iAsusConfig"), exports);
23
+ __exportStar(require("./iDaikinSettings"), exports);
24
+ __exportStar(require("./iSonosSettings"), exports);
25
+ __exportStar(require("./heatingMode"), exports);
26
+ __exportStar(require("./iHeaterSettings"), exports);
27
+ __exportStar(require("./iIobrokerSettigns"), exports);
28
+ __exportStar(require("./iLogSettings"), exports);
29
+ __exportStar(require("./iNewsSettings"), exports);
30
+ __exportStar(require("./iTranslationSettings"), exports);
31
+ __exportStar(require("./iMuellSettings"), exports);
32
+ __exportStar(require("./iMp3Settings"), exports);
33
+ __exportStar(require("./iWeatherSettings"), exports);
34
+ __exportStar(require("./iPollySettings"), exports);
35
+ __exportStar(require("./iPersistenceSettings"), exports);
36
+ __exportStar(require("./iTelegramSettings"), exports);
37
+ __exportStar(require("./iTimeSettings"), exports);
38
+ __exportStar(require("./iTimePair"), exports);
@@ -6,6 +6,7 @@ import { DeviceInfo } from '../DeviceInfo';
6
6
  import { DeviceCapability } from '../DeviceCapability';
7
7
  import { DeviceType } from '../deviceType';
8
8
  export declare class CameraDevice implements iRoomDevice, iMotionSensor {
9
+ readonly blueIrisName: string;
9
10
  get lastImage(): string;
10
11
  settings: CameraSettings;
11
12
  readonly deviceCapabilities: DeviceCapability[];
@@ -16,7 +17,9 @@ export declare class CameraDevice implements iRoomDevice, iMotionSensor {
16
17
  private _movementDetectedCallback;
17
18
  private _lastImage;
18
19
  private _personDetected;
19
- constructor(name: string, roomName: string);
20
+ readonly videoStreamLink: string;
21
+ readonly currentImageLink: string;
22
+ constructor(mqttName: string, roomName: string, blueIrisName: string);
20
23
  private _detectionsToday;
21
24
  get detectionsToday(): number;
22
25
  set detectionsToday(pVal: number);
@@ -16,7 +16,7 @@ class CameraDevice {
16
16
  get lastImage() {
17
17
  return this._lastImage;
18
18
  }
19
- constructor(name, roomName) {
19
+ constructor(mqttName, roomName, blueIrisName) {
20
20
  var _a;
21
21
  this.settings = new models_1.CameraSettings();
22
22
  this.deviceCapabilities = [DeviceCapability_1.DeviceCapability.camera, DeviceCapability_1.DeviceCapability.motionSensor];
@@ -26,18 +26,26 @@ class CameraDevice {
26
26
  this._movementDetectedCallback = [];
27
27
  this._lastImage = '';
28
28
  this._personDetected = false;
29
+ this.videoStreamLink = '';
30
+ this.currentImageLink = '';
29
31
  this._detectionsToday = 0;
30
32
  this._movementDetected = false;
31
- this.name = name;
33
+ this.blueIrisName = blueIrisName;
34
+ this.name = mqttName;
32
35
  this._info = new DeviceInfo_1.DeviceInfo();
33
- this._info.fullName = `Camera ${roomName} ${name}`;
34
- this._info.customName = `Camera ${name}`;
36
+ this._info.fullName = `Camera ${roomName} ${mqttName}`;
37
+ this._info.customName = `Camera ${mqttName}`;
35
38
  this._info.room = roomName;
36
- this._info.allDevicesKey = `camera-${roomName}-${name}`;
39
+ this._info.allDevicesKey = `camera-${roomName}-${mqttName}`;
37
40
  devices_1.Devices.alLDevices[this._info.allDevicesKey] = this;
38
- blueIrisCoordinator_1.BlueIrisCoordinator.addDevice(this, name);
41
+ blueIrisCoordinator_1.BlueIrisCoordinator.addDevice(this, mqttName);
39
42
  this.persistDeviceInfo();
40
43
  this.loadDeviceSettings();
44
+ const blueIrisSettings = services_1.SettingsService.settings.blueIris;
45
+ if (blueIrisSettings) {
46
+ this.videoStreamLink = `${blueIrisSettings.serverAddress}/mjpg/${this.blueIrisName}/video.mjpg?user=${blueIrisSettings.username}&pw=${blueIrisSettings.password}`;
47
+ this.currentImageLink = `${blueIrisSettings.serverAddress}/image/${this.blueIrisName}?q=100&s=100user=${blueIrisSettings.username}&pw=${blueIrisSettings.password}`;
48
+ }
41
49
  if (!services_1.Utils.anyDboActive) {
42
50
  this._initialized = true;
43
51
  }