iobroker.loxone 3.0.0 → 4.0.0
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/LICENSE +1 -1
- package/README.md +425 -402
- package/admin/i18n/de.json +15 -0
- package/admin/i18n/en.json +15 -0
- package/admin/i18n/es.json +18 -0
- package/admin/i18n/fr.json +18 -0
- package/admin/i18n/it.json +18 -0
- package/admin/i18n/nl.json +18 -0
- package/admin/i18n/pl.json +18 -0
- package/admin/i18n/pt.json +18 -0
- package/admin/i18n/ru.json +18 -0
- package/admin/i18n/uk.json +18 -0
- package/admin/i18n/zh-cn.json +18 -0
- package/admin/jsonConfig.json +96 -0
- package/io-package.json +309 -349
- package/package.json +42 -46
- package/src/controls/AalEmergency.ts +90 -0
- package/src/controls/AalSmartAlarm.ts +99 -0
- package/src/controls/Alarm.ts +146 -0
- package/src/controls/AlarmClock.ts +137 -0
- package/src/controls/Application.ts +13 -0
- package/src/controls/AudioZone.ts +227 -0
- package/src/controls/AudioZoneV2.ts +135 -0
- package/src/controls/CentralAlarm.ts +59 -0
- package/src/controls/CentralAudioZone.ts +41 -0
- package/src/controls/CentralGate.ts +53 -0
- package/src/controls/CentralJalousie.ts +67 -0
- package/src/controls/CentralLightController.ts +45 -0
- package/src/controls/ColorPickerV2.ts +34 -0
- package/src/controls/Colorpicker.ts +30 -0
- package/src/controls/ColorpickerBase.ts +326 -0
- package/src/controls/Daytimer.ts +201 -0
- package/src/controls/Dimmer.ts +64 -0
- package/src/controls/EIBDimmer.ts +61 -0
- package/src/controls/Fronius.ts +217 -0
- package/src/controls/Gate.ts +150 -0
- package/src/controls/Hourcounter.ts +115 -0
- package/src/controls/IRCDaytimer.ts +4 -0
- package/src/controls/IRCV2Daytimer.ts +4 -0
- package/src/controls/IRoomControllerV2.ts +595 -0
- package/src/controls/InfoOnlyAnalog.ts +56 -0
- package/src/controls/InfoOnlyDigital.ts +95 -0
- package/src/controls/InfoOnlyText.ts +52 -0
- package/{build/controls/Intercom.js → src/controls/Intercom.ts} +27 -11
- package/src/controls/Jalousie.ts +219 -0
- package/src/controls/LightController.ts +112 -0
- package/src/controls/LightControllerV2.ts +246 -0
- package/src/controls/MailBox.ts +92 -0
- package/src/controls/Meter.ts +94 -0
- package/src/controls/None.ts +29 -0
- package/src/controls/PresenceDetector.ts +47 -0
- package/src/controls/Pushbutton.ts +55 -0
- package/src/controls/Radio.ts +61 -0
- package/src/controls/Remote.ts +44 -0
- package/src/controls/Slider.ts +78 -0
- package/src/controls/SmokeAlarm.ts +163 -0
- package/src/controls/Switch.ts +46 -0
- package/src/controls/SystemScheme.ts +13 -0
- package/src/controls/TextInput.ts +96 -0
- package/src/controls/TextState.ts +37 -0
- package/src/controls/TimedSwitch.ts +75 -0
- package/src/controls/Tracker.ts +30 -0
- package/{build/controls/Unknown.js → src/controls/Unknown.ts} +19 -13
- package/src/controls/UpDownAnalog.ts +78 -0
- package/{build/controls/ValueSelector.js → src/controls/ValueSelector.ts} +21 -9
- package/src/controls/WindowMonitor.ts +139 -0
- package/src/controls/all-controls.ts +99 -0
- package/src/controls/control-base.ts +28 -0
- package/src/lib/adapter-config.d.ts +22 -0
- package/src/loxone-handler-base.ts +285 -0
- package/src/lxcommunicator.d.ts +1 -0
- package/src/main.test.ts +24 -0
- package/src/main.ts +1178 -0
- package/src/structure-file.d.ts +154 -0
- package/src/weather-server-handler.ts +266 -0
- package/admin/admin.d.ts +0 -58
- package/admin/index_m.html +0 -126
- package/admin/style.css +0 -32
- package/admin/words.js +0 -25
- package/build/controls/AalEmergency.js +0 -45
- package/build/controls/AalEmergency.js.map +0 -1
- package/build/controls/AalSmartAlarm.js +0 -48
- package/build/controls/AalSmartAlarm.js.map +0 -1
- package/build/controls/Alarm.js +0 -81
- package/build/controls/Alarm.js.map +0 -1
- package/build/controls/AlarmClock.js +0 -59
- package/build/controls/AlarmClock.js.map +0 -1
- package/build/controls/Application.js +0 -11
- package/build/controls/Application.js.map +0 -1
- package/build/controls/AudioZone.js +0 -116
- package/build/controls/AudioZone.js.map +0 -1
- package/build/controls/CentralAlarm.js +0 -30
- package/build/controls/CentralAlarm.js.map +0 -1
- package/build/controls/CentralAudioZone.js +0 -22
- package/build/controls/CentralAudioZone.js.map +0 -1
- package/build/controls/CentralGate.js +0 -30
- package/build/controls/CentralGate.js.map +0 -1
- package/build/controls/CentralJalousie.js +0 -39
- package/build/controls/CentralJalousie.js.map +0 -1
- package/build/controls/CentralLightController.js +0 -27
- package/build/controls/CentralLightController.js.map +0 -1
- package/build/controls/ColorPickerV2.js +0 -24
- package/build/controls/ColorPickerV2.js.map +0 -1
- package/build/controls/Colorpicker.js +0 -20
- package/build/controls/Colorpicker.js.map +0 -1
- package/build/controls/ColorpickerBase.js +0 -263
- package/build/controls/ColorpickerBase.js.map +0 -1
- package/build/controls/Daytimer.js +0 -119
- package/build/controls/Daytimer.js.map +0 -1
- package/build/controls/Dimmer.js +0 -34
- package/build/controls/Dimmer.js.map +0 -1
- package/build/controls/EIBDimmer.js +0 -31
- package/build/controls/EIBDimmer.js.map +0 -1
- package/build/controls/Fronius.js +0 -64
- package/build/controls/Fronius.js.map +0 -1
- package/build/controls/Gate.js +0 -109
- package/build/controls/Gate.js.map +0 -1
- package/build/controls/Hourcounter.js +0 -46
- package/build/controls/Hourcounter.js.map +0 -1
- package/build/controls/IRCDaytimer.js +0 -9
- package/build/controls/IRCDaytimer.js.map +0 -1
- package/build/controls/IRoomControllerV2.js +0 -272
- package/build/controls/IRoomControllerV2.js.map +0 -1
- package/build/controls/InfoOnlyAnalog.js +0 -38
- package/build/controls/InfoOnlyAnalog.js.map +0 -1
- package/build/controls/InfoOnlyDigital.js +0 -65
- package/build/controls/InfoOnlyDigital.js.map +0 -1
- package/build/controls/InfoOnlyText.js +0 -35
- package/build/controls/InfoOnlyText.js.map +0 -1
- package/build/controls/Intercom.js.map +0 -1
- package/build/controls/Jalousie.js +0 -156
- package/build/controls/Jalousie.js.map +0 -1
- package/build/controls/LightController.js +0 -68
- package/build/controls/LightController.js.map +0 -1
- package/build/controls/LightControllerV2.js +0 -195
- package/build/controls/LightControllerV2.js.map +0 -1
- package/build/controls/MailBox.js +0 -41
- package/build/controls/MailBox.js.map +0 -1
- package/build/controls/Meter.js +0 -52
- package/build/controls/Meter.js.map +0 -1
- package/build/controls/None.js +0 -23
- package/build/controls/None.js.map +0 -1
- package/build/controls/PresenceDetector.js +0 -29
- package/build/controls/PresenceDetector.js.map +0 -1
- package/build/controls/Pushbutton.js +0 -38
- package/build/controls/Pushbutton.js.map +0 -1
- package/build/controls/Radio.js +0 -42
- package/build/controls/Radio.js.map +0 -1
- package/build/controls/Slider.js +0 -44
- package/build/controls/Slider.js.map +0 -1
- package/build/controls/SmokeAlarm.js +0 -85
- package/build/controls/SmokeAlarm.js.map +0 -1
- package/build/controls/Switch.js +0 -34
- package/build/controls/Switch.js.map +0 -1
- package/build/controls/SystemScheme.js +0 -11
- package/build/controls/SystemScheme.js.map +0 -1
- package/build/controls/TextInput.js +0 -55
- package/build/controls/TextInput.js.map +0 -1
- package/build/controls/TextState.js +0 -20
- package/build/controls/TextState.js.map +0 -1
- package/build/controls/TimedSwitch.js +0 -36
- package/build/controls/TimedSwitch.js.map +0 -1
- package/build/controls/Tracker.js +0 -20
- package/build/controls/Tracker.js.map +0 -1
- package/build/controls/Unknown.js.map +0 -1
- package/build/controls/UpDownAnalog.js +0 -44
- package/build/controls/UpDownAnalog.js.map +0 -1
- package/build/controls/ValueSelector.js.map +0 -1
- package/build/controls/WindowMonitor.js +0 -84
- package/build/controls/WindowMonitor.js.map +0 -1
- package/build/controls/control-base.js +0 -12
- package/build/controls/control-base.js.map +0 -1
- package/build/loxone-handler-base.js +0 -186
- package/build/loxone-handler-base.js.map +0 -1
- package/build/main.js +0 -643
- package/build/main.js.map +0 -1
- package/build/weather-server-handler.js +0 -120
- package/build/weather-server-handler.js.map +0 -1
- package/doc/details-missing-control-type.png +0 -0
- package/doc/log-missing-control-type.png +0 -0
- package/doc/loxone-config-display-diagnostics.png +0 -0
- package/doc/loxone-config-info-only-digital.png +0 -0
- package/doc/loxone-config-use-in-visualization.png +0 -0
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Colorpicker = void 0;
|
|
4
|
-
const ColorpickerBase_1 = require("./ColorpickerBase");
|
|
5
|
-
class Colorpicker extends ColorpickerBase_1.ColorpickerBase {
|
|
6
|
-
async loadAsync(type, uuid, control) {
|
|
7
|
-
await this.updateObjectAsync(uuid, {
|
|
8
|
-
type: type,
|
|
9
|
-
common: {
|
|
10
|
-
name: control.name,
|
|
11
|
-
role: 'light.color.rgb',
|
|
12
|
-
},
|
|
13
|
-
native: { control },
|
|
14
|
-
});
|
|
15
|
-
await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['color', 'favorites']);
|
|
16
|
-
await this.loadColorPickerControlBaseAsync(uuid, control);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.Colorpicker = Colorpicker;
|
|
20
|
-
//# sourceMappingURL=Colorpicker.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Colorpicker.js","sourceRoot":"","sources":["../../src/controls/Colorpicker.ts"],"names":[],"mappings":";;;AACA,uDAAoD;AAGpD,MAAa,WAAY,SAAQ,iCAAe;IAC5C,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,iBAAiB;aAC1B;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;QAEnG,MAAM,IAAI,CAAC,+BAA+B,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;CACJ;AAfD,kCAeC"}
|
|
@@ -1,263 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ColorpickerBase = void 0;
|
|
4
|
-
const colorConvert = require("color-convert");
|
|
5
|
-
const control_base_1 = require("./control-base");
|
|
6
|
-
class ColorpickerBase extends control_base_1.ControlBase {
|
|
7
|
-
async loadColorPickerControlBaseAsync(uuid, control) {
|
|
8
|
-
if (!control.states || !control.states.hasOwnProperty('color')) {
|
|
9
|
-
return;
|
|
10
|
-
}
|
|
11
|
-
if (control.details.pickerType === 'Rgb') {
|
|
12
|
-
await this.loadRgbColorPickerAsync(uuid, control);
|
|
13
|
-
}
|
|
14
|
-
else if (control.details.pickerType === 'Lumitech') {
|
|
15
|
-
await this.loadLumitechColorPickerAsync(uuid, control);
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
throw 'Unsupported color picker type: ' + control.details.pickerType;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
async loadRgbColorPickerAsync(uuid, control) {
|
|
22
|
-
await this.updateStateObjectAsync(uuid + '.red', {
|
|
23
|
-
name: control.name + ': red',
|
|
24
|
-
read: true,
|
|
25
|
-
write: true,
|
|
26
|
-
type: 'number',
|
|
27
|
-
role: 'level.color.red',
|
|
28
|
-
min: 0,
|
|
29
|
-
max: 255,
|
|
30
|
-
// TODO: re-add: smartIgnore: true,
|
|
31
|
-
}, control.states.color, async (name, value) => {
|
|
32
|
-
const rgb = this.loxoneColorToRgb(value);
|
|
33
|
-
if (rgb !== undefined) {
|
|
34
|
-
await this.setStateAck(name, rgb[0]);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
await this.updateStateObjectAsync(uuid + '.green', {
|
|
38
|
-
name: control.name + ': green',
|
|
39
|
-
read: true,
|
|
40
|
-
write: true,
|
|
41
|
-
type: 'number',
|
|
42
|
-
role: 'level.color.green',
|
|
43
|
-
min: 0,
|
|
44
|
-
max: 255,
|
|
45
|
-
// TODO: re-add: smartIgnore: true,
|
|
46
|
-
}, control.states.color, async (name, value) => {
|
|
47
|
-
const rgb = this.loxoneColorToRgb(value);
|
|
48
|
-
if (rgb !== undefined) {
|
|
49
|
-
await this.setStateAck(name, rgb[1]);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
await this.updateStateObjectAsync(uuid + '.blue', {
|
|
53
|
-
name: control.name + ': blue',
|
|
54
|
-
read: true,
|
|
55
|
-
write: true,
|
|
56
|
-
type: 'number',
|
|
57
|
-
role: 'level.color.blue',
|
|
58
|
-
min: 0,
|
|
59
|
-
max: 255,
|
|
60
|
-
// TODO: re-add: smartIgnore: true,
|
|
61
|
-
}, control.states.color, async (name, value) => {
|
|
62
|
-
const rgb = this.loxoneColorToRgb(value);
|
|
63
|
-
if (rgb !== undefined) {
|
|
64
|
-
await this.setStateAck(name, rgb[2]);
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
await this.updateStateObjectAsync(uuid + '.rgb', {
|
|
68
|
-
name: control.name + ': RGB',
|
|
69
|
-
read: true,
|
|
70
|
-
write: false,
|
|
71
|
-
type: 'string',
|
|
72
|
-
role: 'level.color.rgb',
|
|
73
|
-
// TODO: re-add: smartIgnore: true,
|
|
74
|
-
}, control.states.color, async (name, value) => {
|
|
75
|
-
const rgb = this.loxoneColorToRgb(value);
|
|
76
|
-
if (rgb !== undefined) {
|
|
77
|
-
await this.setStateAck(name, rgb[0] + ',' + rgb[1] + ',' + rgb[2]);
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
await this.updateStateObjectAsync(uuid + '.level', {
|
|
81
|
-
name: control.name + ': Level (only with colorTemperature)',
|
|
82
|
-
read: true,
|
|
83
|
-
write: false,
|
|
84
|
-
type: 'number',
|
|
85
|
-
role: 'level.color.level',
|
|
86
|
-
min: 0,
|
|
87
|
-
max: 100,
|
|
88
|
-
// TODO: re-add: smartIgnore: true,
|
|
89
|
-
}, control.states.color, async (name, value) => {
|
|
90
|
-
const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
|
|
91
|
-
if (brightnessTemperature !== undefined) {
|
|
92
|
-
await this.setStateAck(name, brightnessTemperature[0]);
|
|
93
|
-
}
|
|
94
|
-
});
|
|
95
|
-
await this.updateStateObjectAsync(uuid + '.colorTemperature', {
|
|
96
|
-
name: control.name + ': The temperature of the light in °K 2700-6500',
|
|
97
|
-
read: true,
|
|
98
|
-
write: false,
|
|
99
|
-
type: 'number',
|
|
100
|
-
role: 'level.color.temperature',
|
|
101
|
-
// TODO: re-add: smartIgnore: true,
|
|
102
|
-
}, control.states.color, async (name, value) => {
|
|
103
|
-
const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
|
|
104
|
-
if (brightnessTemperature !== undefined) {
|
|
105
|
-
await this.setStateAck(name, brightnessTemperature[1]);
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
await this.updateStateObjectAsync(uuid + '.colorTemperatureHue', {
|
|
109
|
-
name: control.name + ': The temperature of the light in °K scaled for Hue 2000-6500',
|
|
110
|
-
read: true,
|
|
111
|
-
write: false,
|
|
112
|
-
type: 'number',
|
|
113
|
-
role: 'level.color.temperature',
|
|
114
|
-
// TODO: re-add: smartIgnore: true,
|
|
115
|
-
}, control.states.color, async (name, value) => {
|
|
116
|
-
const brightnessTemperature = this.loxoneColorToBrightnessTemperature(value);
|
|
117
|
-
if (brightnessTemperature !== undefined) {
|
|
118
|
-
await this.setStateAck(name, Math.round((brightnessTemperature[1] - 2700) * 1.184210526315789 + 2000));
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
// we use a timer (100 ms) to update the three color values,
|
|
122
|
-
// so if somebody sends us the three values (almost) at once,
|
|
123
|
-
// we don't change the color three times using commands
|
|
124
|
-
const parentId = this.adapter.namespace + '.' + uuid;
|
|
125
|
-
const updateColorValue = async () => {
|
|
126
|
-
const states = (await this.adapter.getStatesAsync(uuid + '.*'));
|
|
127
|
-
const red = this.convertStateToInt(states[parentId + '.red'].val);
|
|
128
|
-
const green = this.convertStateToInt(states[parentId + '.green'].val);
|
|
129
|
-
const blue = this.convertStateToInt(states[parentId + '.blue'].val);
|
|
130
|
-
const hsv = colorConvert.rgb.hsv([red, green, blue]);
|
|
131
|
-
const command = `hsv(${hsv[0]},${hsv[1]},${hsv[2]})`;
|
|
132
|
-
this.sendCommand(control.uuidAction, command);
|
|
133
|
-
};
|
|
134
|
-
const startUpdateTimer = () => {
|
|
135
|
-
if (this.colorUpdateTimer) {
|
|
136
|
-
clearTimeout(this.colorUpdateTimer);
|
|
137
|
-
}
|
|
138
|
-
this.colorUpdateTimer = setTimeout(updateColorValue, 100);
|
|
139
|
-
};
|
|
140
|
-
this.addStateChangeListener(uuid + '.red', startUpdateTimer);
|
|
141
|
-
this.addStateChangeListener(uuid + '.green', startUpdateTimer);
|
|
142
|
-
this.addStateChangeListener(uuid + '.blue', startUpdateTimer);
|
|
143
|
-
}
|
|
144
|
-
async loadLumitechColorPickerAsync(uuid, control) {
|
|
145
|
-
await this.updateStateObjectAsync(uuid + '.brightness', {
|
|
146
|
-
name: control.name + ': Brightness',
|
|
147
|
-
read: true,
|
|
148
|
-
write: true,
|
|
149
|
-
type: 'number',
|
|
150
|
-
role: 'level.color.level',
|
|
151
|
-
min: 0,
|
|
152
|
-
max: 100,
|
|
153
|
-
// TODO: re-add: smartIgnore: true,
|
|
154
|
-
}, control.states.color, async (name, value) => {
|
|
155
|
-
const brightnessTemperature = this.lumitechColorToBrightnessTemperature(value);
|
|
156
|
-
if (brightnessTemperature !== undefined) {
|
|
157
|
-
await this.setStateAck(name, brightnessTemperature[0]);
|
|
158
|
-
}
|
|
159
|
-
});
|
|
160
|
-
await this.updateStateObjectAsync(uuid + '.temperature', {
|
|
161
|
-
name: control.name + ': Temperature',
|
|
162
|
-
read: true,
|
|
163
|
-
write: true,
|
|
164
|
-
type: 'number',
|
|
165
|
-
role: 'level.color.temperature',
|
|
166
|
-
min: 2000,
|
|
167
|
-
max: 8000,
|
|
168
|
-
// TODO: re-add: smartIgnore: true,
|
|
169
|
-
}, control.states.color, async (name, value) => {
|
|
170
|
-
const brightnessTemperature = this.lumitechColorToBrightnessTemperature(value);
|
|
171
|
-
if (brightnessTemperature !== undefined) {
|
|
172
|
-
await this.setStateAck(name, brightnessTemperature[1]);
|
|
173
|
-
}
|
|
174
|
-
});
|
|
175
|
-
// we use a timer (100 ms) to update the two color values,
|
|
176
|
-
// so if somebody sends us the two values (almost) at once,
|
|
177
|
-
// we don't change the color twice using commands
|
|
178
|
-
const parentId = this.adapter.namespace + '.' + uuid;
|
|
179
|
-
const updateColorValue = async () => {
|
|
180
|
-
const states = (await this.adapter.getStatesAsync(uuid + '.*'));
|
|
181
|
-
const brightness = this.convertStateToInt(states[parentId + '.brightness'].val);
|
|
182
|
-
const temperature = this.convertStateToInt(states[parentId + '.temperature'].val);
|
|
183
|
-
const command = `lumitech(${brightness},${temperature})`;
|
|
184
|
-
this.sendCommand(control.uuidAction, command);
|
|
185
|
-
};
|
|
186
|
-
const startUpdateTimer = () => {
|
|
187
|
-
if (this.colorUpdateTimer) {
|
|
188
|
-
clearTimeout(this.colorUpdateTimer);
|
|
189
|
-
}
|
|
190
|
-
this.colorUpdateTimer = setTimeout(updateColorValue, 100);
|
|
191
|
-
};
|
|
192
|
-
this.addStateChangeListener(uuid + '.brightness', startUpdateTimer);
|
|
193
|
-
this.addStateChangeListener(uuid + '.temperature', startUpdateTimer);
|
|
194
|
-
}
|
|
195
|
-
loxoneColorToRgb(value) {
|
|
196
|
-
if (!value) {
|
|
197
|
-
return undefined;
|
|
198
|
-
}
|
|
199
|
-
value = value.toString();
|
|
200
|
-
let match = value.match(/hsv\((\d+),(\d+),(\d+)\)/i);
|
|
201
|
-
if (match) {
|
|
202
|
-
const hue = parseInt(match[1]);
|
|
203
|
-
const sat = parseInt(match[2]);
|
|
204
|
-
const val = parseInt(match[3]);
|
|
205
|
-
return colorConvert.hsv.rgb([hue, sat, val]);
|
|
206
|
-
}
|
|
207
|
-
match = value.match(/temp\((\d+),(\d+)\)/i);
|
|
208
|
-
if (match) {
|
|
209
|
-
const brightness = parseFloat(match[1]) / 100;
|
|
210
|
-
const temperature = parseFloat(match[2]) / 100;
|
|
211
|
-
// based on http://www.tannerhelland.com/4435/convert-temperature-rgb-algorithm-code/
|
|
212
|
-
let red = 255;
|
|
213
|
-
let green = 255;
|
|
214
|
-
let blue = 255;
|
|
215
|
-
if (temperature <= 66) {
|
|
216
|
-
green = 99.4708025861 * Math.log(temperature) - 161.1195681661;
|
|
217
|
-
if (temperature <= 19) {
|
|
218
|
-
blue = 0;
|
|
219
|
-
}
|
|
220
|
-
else {
|
|
221
|
-
blue = 138.5177312231 * Math.log(temperature - 10) - 305.0447927307;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
else {
|
|
225
|
-
red = 329.698727446 * Math.pow(temperature - 60, -0.1332047592);
|
|
226
|
-
green = 288.1221695283 * Math.pow(temperature - 60, -0.0755148492);
|
|
227
|
-
}
|
|
228
|
-
red = Math.min(Math.max(red, 0), 255) * brightness;
|
|
229
|
-
green = Math.min(Math.max(green, 0), 255) * brightness;
|
|
230
|
-
blue = Math.min(Math.max(blue, 0), 255) * brightness;
|
|
231
|
-
return [Math.round(red), Math.round(green), Math.round(blue)];
|
|
232
|
-
}
|
|
233
|
-
return undefined;
|
|
234
|
-
}
|
|
235
|
-
loxoneColorToBrightnessTemperature(value) {
|
|
236
|
-
if (!value) {
|
|
237
|
-
return undefined;
|
|
238
|
-
}
|
|
239
|
-
value = value.toString();
|
|
240
|
-
const match = value.match(/temp\((\d+),(\d+)\)/i);
|
|
241
|
-
if (match) {
|
|
242
|
-
const brightness = parseFloat(match[1]);
|
|
243
|
-
const temperature = parseFloat(match[2]);
|
|
244
|
-
return [Math.round(brightness), Math.round(temperature)];
|
|
245
|
-
}
|
|
246
|
-
return undefined;
|
|
247
|
-
}
|
|
248
|
-
lumitechColorToBrightnessTemperature(value) {
|
|
249
|
-
if (!value) {
|
|
250
|
-
return undefined;
|
|
251
|
-
}
|
|
252
|
-
value = value.toString();
|
|
253
|
-
const match = value.match(/lumitech\((\d+),(\d+)\)/i);
|
|
254
|
-
if (match) {
|
|
255
|
-
const brightness = parseFloat(match[1]);
|
|
256
|
-
const temperature = parseFloat(match[2]);
|
|
257
|
-
return [Math.round(brightness), Math.round(temperature)];
|
|
258
|
-
}
|
|
259
|
-
return undefined;
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
exports.ColorpickerBase = ColorpickerBase;
|
|
263
|
-
//# sourceMappingURL=ColorpickerBase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ColorpickerBase.js","sourceRoot":"","sources":["../../src/controls/ColorpickerBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Daytimer = void 0;
|
|
4
|
-
const control_base_1 = require("./control-base");
|
|
5
|
-
class Daytimer extends control_base_1.ControlBase {
|
|
6
|
-
async loadAsync(type, uuid, control) {
|
|
7
|
-
var _a;
|
|
8
|
-
await this.updateObjectAsync(uuid, {
|
|
9
|
-
type: type,
|
|
10
|
-
common: {
|
|
11
|
-
name: control.name,
|
|
12
|
-
role: 'timer',
|
|
13
|
-
},
|
|
14
|
-
native: { control },
|
|
15
|
-
});
|
|
16
|
-
await this.loadOtherControlStatesAsync(control.name, uuid, control.states, [
|
|
17
|
-
'mode',
|
|
18
|
-
'override',
|
|
19
|
-
'value',
|
|
20
|
-
'needsActivation',
|
|
21
|
-
'modeList',
|
|
22
|
-
'entriesAndDefaultValue',
|
|
23
|
-
'resetActive',
|
|
24
|
-
]);
|
|
25
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'mode', 'number', 'value');
|
|
26
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'override', 'number', 'value', { unit: 'sec' });
|
|
27
|
-
// value is a number for analog daytimers and a boolean for digital ones
|
|
28
|
-
if (control.details.analog) {
|
|
29
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'value', 'number', 'value');
|
|
30
|
-
if (control.details.hasOwnProperty('format')) {
|
|
31
|
-
await this.updateStateObjectAsync(uuid + '.value-formatted', {
|
|
32
|
-
name: control.name + ': formatted value',
|
|
33
|
-
read: true,
|
|
34
|
-
write: false,
|
|
35
|
-
type: 'string',
|
|
36
|
-
role: 'text',
|
|
37
|
-
// TODO: re-add: smartIgnore: true,
|
|
38
|
-
}, control.states.value, async (name, value) => {
|
|
39
|
-
await this.setFormattedStateAck(name, value, control.details.format);
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'value', 'boolean', 'indicator');
|
|
45
|
-
if (control.details.hasOwnProperty('text')) {
|
|
46
|
-
const text = (_a = control.details) === null || _a === void 0 ? void 0 : _a.text;
|
|
47
|
-
await this.updateStateObjectAsync(uuid + '.value-formatted', {
|
|
48
|
-
name: control.name + ': formatted value',
|
|
49
|
-
read: true,
|
|
50
|
-
write: false,
|
|
51
|
-
type: 'string',
|
|
52
|
-
role: 'text',
|
|
53
|
-
// TODO: re-add: smartIgnore: true,
|
|
54
|
-
}, control.states.value, async (name, value) => {
|
|
55
|
-
await this.setStateAck(name, (this.convertStateToBoolean(value) ? text === null || text === void 0 ? void 0 : text.on : text === null || text === void 0 ? void 0 : text.off) || null);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'needsActivation', 'boolean', 'indicator');
|
|
60
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'resetActive', 'boolean', 'indicator');
|
|
61
|
-
if (control.states.hasOwnProperty('mode') && control.states.hasOwnProperty('modeList')) {
|
|
62
|
-
const obj = {
|
|
63
|
-
type: 'state',
|
|
64
|
-
common: {
|
|
65
|
-
name: control.name + ': mode as text',
|
|
66
|
-
read: true,
|
|
67
|
-
write: false,
|
|
68
|
-
type: 'string',
|
|
69
|
-
role: 'text',
|
|
70
|
-
// TODO: re-add: smartIgnore: true,
|
|
71
|
-
},
|
|
72
|
-
native: {
|
|
73
|
-
mode: control.states.mode,
|
|
74
|
-
modeList: control.states.modeList,
|
|
75
|
-
},
|
|
76
|
-
};
|
|
77
|
-
await this.updateObjectAsync(uuid + '.mode-text', obj);
|
|
78
|
-
let modeNames = {};
|
|
79
|
-
let mode = '-';
|
|
80
|
-
const updateModeText = async () => {
|
|
81
|
-
if (modeNames.hasOwnProperty(mode)) {
|
|
82
|
-
await this.setStateAck(uuid + '.mode-text', modeNames[mode]);
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
this.addStateEventHandler(control.states.mode, async (value) => {
|
|
86
|
-
mode = this.convertStateToInt(value).toString();
|
|
87
|
-
await updateModeText();
|
|
88
|
-
});
|
|
89
|
-
this.addStateEventHandler(control.states.modeList, async (value) => {
|
|
90
|
-
if (!value) {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
// format of value: 0:mode=0;name=\"Feiertag\",1:mode=1;name=\"Urlaub\"
|
|
94
|
-
modeNames = value
|
|
95
|
-
.toString()
|
|
96
|
-
.split(',')
|
|
97
|
-
.map((item) => item
|
|
98
|
-
.split(':', 2)[1]
|
|
99
|
-
.split(';')
|
|
100
|
-
.map((pair) => pair.split('=', 2)))
|
|
101
|
-
.reduce((old, pairs) => {
|
|
102
|
-
const modePair = pairs.find((p) => p[0] === 'mode');
|
|
103
|
-
const namePair = pairs.find((p) => p[0] === 'name');
|
|
104
|
-
if (!modePair || !namePair) {
|
|
105
|
-
return old;
|
|
106
|
-
}
|
|
107
|
-
return { ...old, [modePair[1]]: namePair[1].replace(/^\\?"(.+?)\\?"$/g, '$1') };
|
|
108
|
-
}, {});
|
|
109
|
-
await updateModeText();
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
await this.createButtonCommandStateObjectAsync(control.name, uuid, 'pulse');
|
|
113
|
-
this.addStateChangeListener(uuid + '.pulse', () => {
|
|
114
|
-
this.sendCommand(control.uuidAction, 'pulse');
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
exports.Daytimer = Daytimer;
|
|
119
|
-
//# sourceMappingURL=Daytimer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Daytimer.js","sourceRoot":"","sources":["../../src/controls/Daytimer.ts"],"names":[],"mappings":"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"}
|
package/build/controls/Dimmer.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Dimmer = void 0;
|
|
4
|
-
const control_base_1 = require("./control-base");
|
|
5
|
-
class Dimmer extends control_base_1.ControlBase {
|
|
6
|
-
async loadAsync(type, uuid, control) {
|
|
7
|
-
await this.updateObjectAsync(uuid, {
|
|
8
|
-
type: type,
|
|
9
|
-
common: {
|
|
10
|
-
name: control.name,
|
|
11
|
-
role: 'light',
|
|
12
|
-
},
|
|
13
|
-
native: { control },
|
|
14
|
-
});
|
|
15
|
-
await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['position', 'min', 'max', 'step']);
|
|
16
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'position', 'number', 'level.dimmer', { write: true });
|
|
17
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'min', 'number', 'value');
|
|
18
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'max', 'number', 'value');
|
|
19
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'step', 'number', 'value');
|
|
20
|
-
this.addStateChangeListener(uuid + '.position', (oldValue, newValue) => {
|
|
21
|
-
this.sendCommand(control.uuidAction, this.convertStateToInt(newValue).toString());
|
|
22
|
-
});
|
|
23
|
-
await this.createButtonCommandStateObjectAsync(control.name, uuid, 'on');
|
|
24
|
-
this.addStateChangeListener(uuid + '.on', () => {
|
|
25
|
-
this.sendCommand(control.uuidAction, 'on');
|
|
26
|
-
});
|
|
27
|
-
await this.createButtonCommandStateObjectAsync(control.name, uuid, 'off');
|
|
28
|
-
this.addStateChangeListener(uuid + '.off', () => {
|
|
29
|
-
this.sendCommand(control.uuidAction, 'off');
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.Dimmer = Dimmer;
|
|
34
|
-
//# sourceMappingURL=Dimmer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dimmer.js","sourceRoot":"","sources":["../../src/controls/Dimmer.ts"],"names":[],"mappings":";;;AAEA,iDAA0D;AAE1D,MAAa,MAAO,SAAQ,0BAAW;IACnC,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO;aAChB;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;QAE/G,MAAM,IAAI,CAAC,mCAAmC,CAC1C,OAAO,CAAC,IAAI,EACZ,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,UAAU,EACV,QAAQ,EACR,cAAc,EACd,EAAE,KAAK,EAAE,IAAI,EAAE,CAClB,CAAC;QACF,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7G,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7G,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAE9G,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,QAAuB,EAAE,QAA2B,EAAE,EAAE;YACrG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,KAAK,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,MAAM,EAAE,GAAG,EAAE;YAC5C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAxCD,wBAwCC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EIBDimmer = void 0;
|
|
4
|
-
const control_base_1 = require("./control-base");
|
|
5
|
-
class EIBDimmer extends control_base_1.ControlBase {
|
|
6
|
-
async loadAsync(type, uuid, control) {
|
|
7
|
-
await this.updateObjectAsync(uuid, {
|
|
8
|
-
type: type,
|
|
9
|
-
common: {
|
|
10
|
-
name: control.name,
|
|
11
|
-
role: 'light',
|
|
12
|
-
},
|
|
13
|
-
native: { control },
|
|
14
|
-
});
|
|
15
|
-
await this.loadOtherControlStatesAsync(control.name, uuid, control.states, ['position']);
|
|
16
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'position', 'number', 'level.dimmer', { write: true });
|
|
17
|
-
this.addStateChangeListener(uuid + '.position', (oldValue, newValue) => {
|
|
18
|
-
this.sendCommand(control.uuidAction, this.convertStateToInt(newValue).toString());
|
|
19
|
-
});
|
|
20
|
-
await this.createButtonCommandStateObjectAsync(control.name, uuid, 'on');
|
|
21
|
-
this.addStateChangeListener(uuid + '.on', () => {
|
|
22
|
-
this.sendCommand(control.uuidAction, 'on');
|
|
23
|
-
});
|
|
24
|
-
await this.createButtonCommandStateObjectAsync(control.name, uuid, 'off');
|
|
25
|
-
this.addStateChangeListener(uuid + '.off', () => {
|
|
26
|
-
this.sendCommand(control.uuidAction, 'off');
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.EIBDimmer = EIBDimmer;
|
|
31
|
-
//# sourceMappingURL=EIBDimmer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EIBDimmer.js","sourceRoot":"","sources":["../../src/controls/EIBDimmer.ts"],"names":[],"mappings":";;;AAEA,iDAA0D;AAE1D,MAAa,SAAU,SAAQ,0BAAW;IACtC,KAAK,CAAC,SAAS,CAAC,IAAiB,EAAE,IAAY,EAAE,OAAgB;QAC7D,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC/B,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO;aAChB;YACD,MAAM,EAAE,EAAE,OAAO,EAAE;SACtB,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAEzF,MAAM,IAAI,CAAC,mCAAmC,CAC1C,OAAO,CAAC,IAAI,EACZ,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,UAAU,EACV,QAAQ,EACR,cAAc,EACd,EAAE,KAAK,EAAE,IAAI,EAAE,CAClB,CAAC;QAEF,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,WAAW,EAAE,CAAC,QAAuB,EAAE,QAA2B,EAAE,EAAE;YACrG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtF,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,KAAK,EAAE,GAAG,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mCAAmC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,sBAAsB,CAAC,IAAI,GAAG,MAAM,EAAE,GAAG,EAAE;YAC5C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AArCD,8BAqCC"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Fronius = void 0;
|
|
4
|
-
const control_base_1 = require("./control-base");
|
|
5
|
-
class Fronius extends control_base_1.ControlBase {
|
|
6
|
-
async loadAsync(type, uuid, control) {
|
|
7
|
-
const systemConfig = await this.adapter.getForeignObjectAsync('system.config');
|
|
8
|
-
const currency = systemConfig === null || systemConfig === void 0 ? void 0 : systemConfig.common.currency;
|
|
9
|
-
await this.updateObjectAsync(uuid, {
|
|
10
|
-
type: type,
|
|
11
|
-
common: {
|
|
12
|
-
name: control.name,
|
|
13
|
-
role: 'sensor',
|
|
14
|
-
},
|
|
15
|
-
native: { control },
|
|
16
|
-
});
|
|
17
|
-
await this.loadOtherControlStatesAsync(control.name, uuid, control.states, [
|
|
18
|
-
'prodCurr',
|
|
19
|
-
'prodCurrDay',
|
|
20
|
-
'prodCurrMonth',
|
|
21
|
-
'prodCurrYear',
|
|
22
|
-
'prodTotal',
|
|
23
|
-
'consCurr',
|
|
24
|
-
'consCurrDay',
|
|
25
|
-
'consTotal',
|
|
26
|
-
'deliveryDay',
|
|
27
|
-
'earningsDay',
|
|
28
|
-
'earningsMonth',
|
|
29
|
-
'earningsYear',
|
|
30
|
-
'earningsTotal',
|
|
31
|
-
'gridCurr',
|
|
32
|
-
'batteryCurr',
|
|
33
|
-
'stateOfCharge',
|
|
34
|
-
'priceDelivery',
|
|
35
|
-
'priceConsumption',
|
|
36
|
-
'co2Factor',
|
|
37
|
-
'generatorType',
|
|
38
|
-
'mode',
|
|
39
|
-
'online',
|
|
40
|
-
]);
|
|
41
|
-
// note: priceDelivery, priceConsumption, generatorType and mode are ignored
|
|
42
|
-
// because they represent static data that is of no use to ioBroker
|
|
43
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurr', 'number', 'value', { unit: 'kW' });
|
|
44
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrDay', 'number', 'value', { unit: 'kWh' });
|
|
45
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrMonth', 'number', 'value', { unit: 'kWh' });
|
|
46
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodCurrYear', 'number', 'value', { unit: 'kWh' });
|
|
47
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'prodTotal', 'number', 'value', { unit: 'kWh' });
|
|
48
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consCurr', 'number', 'value', { unit: 'kW' });
|
|
49
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consCurrDay', 'number', 'value.power.consumption', { unit: 'kWh' });
|
|
50
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'consTotal', 'number', 'value.power.consumption', { unit: 'kWh' });
|
|
51
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'gridCurr', 'number', 'value', { unit: 'kW' });
|
|
52
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'batteryCurr', 'number', 'value', { unit: 'kW' });
|
|
53
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'stateOfCharge', 'number', 'value', { unit: '%' });
|
|
54
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'deliveryDay', 'number', 'value', { unit: 'kWh' });
|
|
55
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsDay', 'number', 'value', { unit: currency });
|
|
56
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsMonth', 'number', 'value', { unit: currency });
|
|
57
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsYear', 'number', 'value', { unit: currency });
|
|
58
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'earningsTotal', 'number', 'value', { unit: currency });
|
|
59
|
-
await this.createSimpleControlStateObjectAsync(control.name, uuid, control.states, 'co2Factor', 'number', 'value');
|
|
60
|
-
await this.createBooleanControlStateObjectAsync(control.name, uuid, control.states, 'online', 'indicator.reachable', {}, (value) => value != 1);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
exports.Fronius = Fronius;
|
|
64
|
-
//# sourceMappingURL=Fronius.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Fronius.js","sourceRoot":"","sources":["../../src/controls/Fronius.ts"],"names":[],"mappings":"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"}
|