hoffmation-base 1.0.41 → 1.0.45

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 (98) hide show
  1. package/lib/index.d.ts +2 -2
  2. package/lib/models/rooms/RoomBase.d.ts +2 -2
  3. package/lib/server/devices/DeviceCapability.d.ts +17 -0
  4. package/lib/server/devices/DeviceCapability.js +21 -0
  5. package/lib/server/devices/IoBrokerBaseDevice.d.ts +4 -2
  6. package/lib/server/devices/IoBrokerBaseDevice.js +1 -0
  7. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.d.ts +14 -0
  8. package/lib/server/devices/baseDeviceInterfaces/iAcDevice.js +2 -0
  9. package/lib/server/devices/baseDeviceInterfaces/iActuator.d.ts +15 -0
  10. package/lib/server/devices/baseDeviceInterfaces/iActuator.js +2 -0
  11. package/lib/server/devices/baseDeviceInterfaces/iBaseDevice.d.ts +4 -2
  12. package/lib/server/devices/baseDeviceInterfaces/iButtonSwitch.d.ts +2 -2
  13. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.d.ts +16 -0
  14. package/lib/server/devices/baseDeviceInterfaces/iDimmableLamp.js +2 -0
  15. package/lib/server/devices/baseDeviceInterfaces/iEnergyManager.d.ts +2 -2
  16. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.d.ts +9 -0
  17. package/lib/server/devices/baseDeviceInterfaces/iHandleSensor.js +2 -0
  18. package/lib/server/devices/baseDeviceInterfaces/iHeater.d.ts +2 -2
  19. package/lib/server/devices/baseDeviceInterfaces/iHumiditySensor.d.ts +2 -2
  20. package/lib/server/devices/baseDeviceInterfaces/iLamp.d.ts +4 -4
  21. package/lib/server/devices/baseDeviceInterfaces/iMotionSensor.d.ts +2 -2
  22. package/lib/server/devices/baseDeviceInterfaces/iShutter.d.ts +2 -2
  23. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.d.ts +8 -0
  24. package/lib/server/devices/baseDeviceInterfaces/iSpeaker.js +2 -0
  25. package/lib/server/devices/baseDeviceInterfaces/iTemperatureSensor.d.ts +2 -2
  26. package/lib/server/devices/baseDeviceInterfaces/iVibrationSensor.d.ts +2 -2
  27. package/lib/server/devices/baseDeviceInterfaces/index.d.ts +4 -0
  28. package/lib/server/devices/baseDeviceInterfaces/index.js +4 -0
  29. package/lib/server/devices/device-cluster.d.ts +4 -5
  30. package/lib/server/devices/device-cluster.js +6 -0
  31. package/lib/server/devices/device-list.d.ts +3 -5
  32. package/lib/server/devices/device-list.js +4 -13
  33. package/lib/server/devices/deviceUpdater.js +2 -1
  34. package/lib/server/devices/devices.d.ts +2 -2
  35. package/lib/server/devices/groups/heatGroup.js +1 -1
  36. package/lib/server/devices/groups/index.d.ts +1 -1
  37. package/lib/server/devices/groups/index.js +1 -1
  38. package/lib/server/devices/groups/lampenGroup.d.ts +3 -3
  39. package/lib/server/devices/groups/lampenGroup.js +3 -3
  40. package/lib/server/devices/groups/{sonosGroup.d.ts → speakerGroup.d.ts} +3 -3
  41. package/lib/server/devices/groups/{sonosGroup.js → speakerGroup.js} +6 -8
  42. package/lib/server/devices/hmIPDevices/hmIpBewegung.js +3 -0
  43. package/lib/server/devices/hmIPDevices/hmIpGriff.d.ts +4 -3
  44. package/lib/server/devices/hmIPDevices/hmIpGriff.js +1 -1
  45. package/lib/server/devices/hmIPDevices/hmIpHeizgruppe.js +4 -0
  46. package/lib/server/devices/hmIPDevices/hmIpLampe.js +2 -0
  47. package/lib/server/devices/hmIPDevices/hmIpPraezenz.js +3 -0
  48. package/lib/server/devices/hmIPDevices/hmIpRoll.js +2 -0
  49. package/lib/server/devices/hmIPDevices/hmIpTaster.js +2 -0
  50. package/lib/server/devices/hmIPDevices/hmIpWippe.js +2 -0
  51. package/lib/server/devices/jsObject/jsObjectEnergyManager.js +2 -0
  52. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.d.ts +4 -3
  53. package/lib/server/devices/zigbee/BaseDevices/ZigbeeActuator.js +2 -0
  54. package/lib/server/devices/zigbee/BaseDevices/index.d.ts +1 -0
  55. package/lib/server/devices/zigbee/BaseDevices/index.js +1 -0
  56. package/lib/server/devices/zigbee/BaseDevices/zigbeeHeater.js +2 -0
  57. package/lib/server/devices/zigbee/{zigbeeMotionSensor.d.ts → BaseDevices/zigbeeMotionSensor.d.ts} +5 -5
  58. package/lib/server/devices/zigbee/{zigbeeMotionSensor.js → BaseDevices/zigbeeMotionSensor.js} +6 -4
  59. package/lib/server/devices/zigbee/BaseDevices/zigbeeShutter.js +2 -0
  60. package/lib/server/devices/zigbee/index.d.ts +0 -1
  61. package/lib/server/devices/zigbee/index.js +0 -1
  62. package/lib/server/devices/zigbee/zigbeeAquaraMotion.d.ts +1 -1
  63. package/lib/server/devices/zigbee/zigbeeAquaraMotion.js +4 -2
  64. package/lib/server/devices/zigbee/zigbeeAquaraVibra.js +2 -0
  65. package/lib/server/devices/zigbee/zigbeeBlitzShp.js +2 -0
  66. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.d.ts +0 -3
  67. package/lib/server/devices/zigbee/zigbeeIkeaSteckdose.js +0 -9
  68. package/lib/server/devices/zigbee/zigbeeIlluDimmer.d.ts +2 -2
  69. package/lib/server/devices/zigbee/zigbeeIlluDimmer.js +3 -0
  70. package/lib/server/devices/zigbee/zigbeeIlluLampe.js +2 -0
  71. package/lib/server/devices/zigbee/zigbeeSonoffMotion.d.ts +1 -1
  72. package/lib/server/devices/zigbee/zigbeeSonoffMotion.js +2 -2
  73. package/lib/server/devices/zigbee/zigbeeSonoffTemp.js +3 -0
  74. package/lib/server/devices/zigbee/zigbeeUbisysShutter.d.ts +1 -1
  75. package/lib/server/services/Sonos/OwnSonosDevices.d.ts +1 -1
  76. package/lib/server/services/Sonos/OwnSonosDevices.js +1 -1
  77. package/lib/server/services/Sonos/index.d.ts +1 -0
  78. package/lib/server/services/Sonos/index.js +3 -0
  79. package/lib/server/services/Sonos/own-sonos-device.d.ts +26 -0
  80. package/lib/server/services/Sonos/own-sonos-device.js +108 -0
  81. package/lib/server/services/Sonos/sonos-service.d.ts +1 -20
  82. package/lib/server/services/Sonos/sonos-service.js +5 -94
  83. package/lib/server/services/ac/ac-device.d.ts +4 -2
  84. package/lib/server/services/ac/ac-device.js +2 -0
  85. package/lib/server/services/api/api-service.d.ts +22 -5
  86. package/lib/server/services/api/api-service.js +47 -5
  87. package/lib/server/services/calendar/muell-tonne.d.ts +3 -3
  88. package/lib/server/services/calendar/muell-tonne.js +6 -12
  89. package/lib/server/services/calendar/m/303/274ll-service.d.ts +3 -3
  90. package/lib/server/services/calendar/m/303/274ll-service.js +7 -7
  91. package/lib/server/services/news-service.d.ts +3 -3
  92. package/lib/server/services/news-service.js +4 -4
  93. package/lib/server/services/room-service/room-service.d.ts +3 -2
  94. package/lib/server/services/room-service/room-service.js +1 -0
  95. package/lib/server/services/weather/weather-service.d.ts +2 -2
  96. package/lib/server/services/weather/weather-service.js +14 -15
  97. package/lib/tsconfig.tsbuildinfo +1 -1
  98. package/package.json +3 -3
@@ -4,9 +4,9 @@ import { WeatherMinutes } from './weather-minutes';
4
4
  import { WeatherAlert } from './weather-alert';
5
5
  import { iWeatherSettings } from '../../config';
6
6
  import { LogLevel } from '../../../models';
7
- import { OwnSonosDevice } from '../Sonos';
8
7
  import { LogDebugType } from '../log-service';
9
8
  import { WeatherDaily } from './weather-daily';
9
+ import { ISpeaker } from '../../devices';
10
10
  export interface WeatherResponse {
11
11
  lat: number;
12
12
  lon: number;
@@ -36,7 +36,7 @@ export declare class WeatherService {
36
36
  static initialize(config: iWeatherSettings): void;
37
37
  static update(): void;
38
38
  static stopInterval(): void;
39
- static playWeatherInfo(sonosDevice: OwnSonosDevice, volume?: number, short?: boolean, retries?: number): void;
39
+ static playWeatherInfo(speaker: ISpeaker, volume?: number, short?: boolean, retries?: number): void;
40
40
  static processHourlyWeather(): void;
41
41
  static getCurrentTemp(): number;
42
42
  static willOutsideBeWarmer(referenceTemperature: number, logger: (level: LogLevel, message: string, debugType?: LogDebugType) => void): boolean;
@@ -8,7 +8,6 @@ const models_1 = require("../../../models");
8
8
  const HTTPSOptions_1 = require("../HTTPSOptions");
9
9
  const https_service_1 = require("../https-service");
10
10
  const utils_1 = require("../utils");
11
- const Sonos_1 = require("../Sonos");
12
11
  const log_service_1 = require("../log-service");
13
12
  const suncalc_1 = __importDefault(require("suncalc"));
14
13
  const time_callback_service_1 = require("../time-callback-service");
@@ -33,13 +32,13 @@ class WeatherService {
33
32
  this._refreshInterval = undefined;
34
33
  }
35
34
  }
36
- static playWeatherInfo(sonosDevice, volume = 30, short = false, retries = 5) {
35
+ static playWeatherInfo(speaker, volume = 30, short = false, retries = 5) {
37
36
  const wData = WeatherService.lastResponse;
38
37
  if (wData === undefined) {
39
38
  if (retries > 0) {
40
39
  log_service_1.ServerLogService.writeLog(models_1.LogLevel.Warn, `WeatherService.playWeatherInfo(): Der Wetterbericht ist noch nicht bereit --> warten`);
41
40
  setTimeout(() => {
42
- WeatherService.playWeatherInfo(sonosDevice, volume, short, retries - 1);
41
+ WeatherService.playWeatherInfo(speaker, volume, short, retries - 1);
43
42
  }, 1000);
44
43
  }
45
44
  else {
@@ -47,19 +46,19 @@ class WeatherService {
47
46
  }
48
47
  return;
49
48
  }
50
- Sonos_1.SonosService.speakOnDevice(short ? `Kurze Wetterinfo:` : `HoffMation Wetter-Bericht:`, sonosDevice, volume, false);
51
- Sonos_1.SonosService.speakOnDevice(`Wetterbeschreibung für heute: ${wData.daily[0].weather[0].description}`, sonosDevice, volume, false);
52
- Sonos_1.SonosService.speakOnDevice(`Aktuell sind es ${Math.round(wData.current.temp)} Grad.`, sonosDevice, volume, false);
49
+ speaker.speakOnDevice(short ? `Kurze Wetterinfo:` : `HoffMation Wetter-Bericht:`, volume, false);
50
+ speaker.speakOnDevice(`Wetterbeschreibung für heute: ${wData.daily[0].weather[0].description}`, volume, false);
51
+ speaker.speakOnDevice(`Aktuell sind es ${Math.round(wData.current.temp)} Grad.`, volume, false);
53
52
  if (!short) {
54
- Sonos_1.SonosService.speakOnDevice(`Heute sollen es im Durchschnitt ${Math.round(wData.daily[0].temp.day)} Grad sein.`, sonosDevice, volume, false);
55
- Sonos_1.SonosService.speakOnDevice(`Die Höchsttemperatur liegt heute bei ${Math.round(wData.daily[0].temp.max)} Grad.`, sonosDevice, volume, false);
56
- Sonos_1.SonosService.speakOnDevice(`Die Tiefsttemperatur soll heute ${Math.round(wData.daily[0].temp.min)} Grad betragen.`, sonosDevice, volume, false);
53
+ speaker.speakOnDevice(`Heute sollen es im Durchschnitt ${Math.round(wData.daily[0].temp.day)} Grad sein.`, volume, false);
54
+ speaker.speakOnDevice(`Die Höchsttemperatur liegt heute bei ${Math.round(wData.daily[0].temp.max)} Grad.`, volume, false);
55
+ speaker.speakOnDevice(`Die Tiefsttemperatur soll heute ${Math.round(wData.daily[0].temp.min)} Grad betragen.`, volume, false);
57
56
  if (wData.daily[0].rain !== undefined) {
58
- Sonos_1.SonosService.speakOnDevice(`Es sollen heute etwa ${Math.round(wData.daily[0].rain)} Millimeter Regen fallen.`, sonosDevice, volume, false);
57
+ speaker.speakOnDevice(`Es sollen heute etwa ${Math.round(wData.daily[0].rain)} Millimeter Regen fallen.`, volume, false);
59
58
  }
60
59
  }
61
60
  if (wData.daily[0].snow !== undefined && wData.daily[0].snow > 0) {
62
- Sonos_1.SonosService.speakOnDevice(`Heute wird es Schneien! Es werden etwa ${Math.round(wData.daily[0].snow)} Millimeter Schnee erwartet.`, sonosDevice, volume, false);
61
+ speaker.speakOnDevice(`Heute wird es Schneien! Es werden etwa ${Math.round(wData.daily[0].snow)} Millimeter Schnee erwartet.`, volume, false);
63
62
  }
64
63
  const { minutes, precipitation } = WeatherService.getRainNextMinutes();
65
64
  const ratio = minutes <= 0 ? 0 : (precipitation / minutes) * 60;
@@ -84,10 +83,10 @@ class WeatherService {
84
83
  message += `bleibt es trocken.`;
85
84
  break;
86
85
  }
87
- Sonos_1.SonosService.speakOnDevice(message, sonosDevice, volume, false);
86
+ speaker.speakOnDevice(message, volume, false);
88
87
  !short &&
89
88
  precipitation > 0 &&
90
- Sonos_1.SonosService.speakOnDevice(`Es werden etwa ${precipitation} Millimeter Niederschlag in den nächsten ${minutes} Minuten fallen`, sonosDevice, volume, false);
89
+ speaker.speakOnDevice(`Es werden etwa ${precipitation} Millimeter Niederschlag in den nächsten ${minutes} Minuten fallen`, volume, false);
91
90
  const alerts = WeatherService.getActiveAlerts();
92
91
  if (alerts.length > 0) {
93
92
  const alertMessage = [`Achtung, vorliegende Wetterwarnungen:`];
@@ -95,10 +94,10 @@ class WeatherService {
95
94
  alertMessage.push(`${element.event} von ${new Date(element.start * 1000).toLocaleString('de-DE')} bis ${new Date(element.end * 1000).toLocaleString('de-DE')}`);
96
95
  // } bis ${new Date(element.end * 1000).toLocaleString("de-DE")}; Beschreibung: ${element.description} Herausgeber: ${element.sender_name}`)
97
96
  });
98
- Sonos_1.SonosService.speakOnDevice(alertMessage.join('\n'), sonosDevice, volume, false);
97
+ speaker.speakOnDevice(alertMessage.join('\n'), volume, false);
99
98
  }
100
99
  else if (!short) {
101
- Sonos_1.SonosService.speakOnDevice(`Für heute liegt keine Unwetterwarnungen vor`, sonosDevice, volume, false);
100
+ speaker.speakOnDevice(`Für heute liegt keine Unwetterwarnungen vor`, volume, false);
102
101
  }
103
102
  }
104
103
  static processHourlyWeather() {