iobroker-ucl 1.0.47 → 1.0.49
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/!!!_INSTRUCTIONS_!!!.ts +20 -0
- package/homematicFunctions.js +1 -1
- package/homematicFunctions.ts +10 -10
- package/main.js +37 -1
- package/main.ts +10 -1
- package/package.json +1 -1
- package/zigbeeClasses.js +1229 -0
- package/zigbeeClasses.ts +1346 -0
- package/zigbeeFunctions.js +936 -0
- package/zigbeeFunctions.ts +1085 -0
@@ -0,0 +1,20 @@
|
|
1
|
+
// ===================================================================================================
|
2
|
+
// WORKFLOW nach Änderungen hier in einer TS-Datei:
|
3
|
+
// ===================================================================================================
|
4
|
+
|
5
|
+
// 1.) "Aus TS Dateien JS Dateien machen: (unten im TERMINAL-Fenster)
|
6
|
+
tsc date.ts test.ts main.ts html.ts homematicClasses.ts homematicFunctions.ts zigbeeClasses.ts
|
7
|
+
|
8
|
+
// 2.) In package.json eine Nummer hochzählen bei der Version
|
9
|
+
|
10
|
+
// 3.) Danach auf NPM Repository pushen: (unten im TERMINAL-Fenster)
|
11
|
+
npm publish
|
12
|
+
|
13
|
+
// 4.) In docker iobroker Container rein: (PUTTY)
|
14
|
+
docker exec -it iobroker bash
|
15
|
+
|
16
|
+
// 5.) Im Docker iobroker container drin das NPM module aktualisieren: (PUTTY)
|
17
|
+
npm update iobroker-ucl
|
18
|
+
npm ls --depth=0 (um sicher zu gehen, dass richtige Version auch gezogen wurde)
|
19
|
+
|
20
|
+
// 6.) In iobroker Weboberfläche die Javascript Instance restarten
|
package/homematicFunctions.js
CHANGED
@@ -7,7 +7,7 @@ var attributeBaseState = "baseState";
|
|
7
7
|
var attributeEtage = "etage";
|
8
8
|
var attributeRaum = "raum";
|
9
9
|
var attributeDevice = "device";
|
10
|
-
var attributeCategory = "
|
10
|
+
var attributeCategory = "category";
|
11
11
|
var attributeTypeNumber = "number";
|
12
12
|
var attributeTypeString = "string";
|
13
13
|
function createHomematicDevice(adapter, rawId, baseState, etage, raum, device, category) {
|
package/homematicFunctions.ts
CHANGED
@@ -1,16 +1,16 @@
|
|
1
|
-
const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer} = require('./homematicClasses.js');
|
1
|
+
const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer } = require('./homematicClasses.js');
|
2
2
|
|
3
3
|
const attributeRawID = "rawId";
|
4
4
|
const attributeBaseState = "baseState";
|
5
5
|
const attributeEtage = "etage";
|
6
6
|
const attributeRaum = "raum";
|
7
7
|
const attributeDevice = "device";
|
8
|
-
const attributeCategory = "
|
8
|
+
const attributeCategory = "category";
|
9
9
|
|
10
10
|
const attributeTypeNumber = "number";
|
11
11
|
const attributeTypeString = "string";
|
12
12
|
|
13
|
-
export function createHomematicDevice(adapter:any, rawId, baseState, etage, raum, device, category) {
|
13
|
+
export function createHomematicDevice(adapter: any, rawId: number, baseState: string, etage: string, raum: string, device: string, category: string) {
|
14
14
|
createDatenpunktSingle(adapter, rawId, attributeTypeNumber, attributeRawID, rawId);
|
15
15
|
createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeCategory, category);
|
16
16
|
createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeBaseState, baseState);
|
@@ -19,22 +19,22 @@ export function createHomematicDevice(adapter:any, rawId, baseState, etage, raum
|
|
19
19
|
createDatenpunktSingle(adapter, rawId, attributeTypeString, attributeDevice, device);
|
20
20
|
}
|
21
21
|
|
22
|
-
function createDatenpunktSingle(adapter:any, deviceRawId, attributeType, attributeName, attributeValue) {
|
22
|
+
function createDatenpunktSingle(adapter: any, deviceRawId, attributeType, attributeName, attributeValue) {
|
23
23
|
var stateDatenpunkt = "0_userdata.0.devices.homematic." + deviceRawId + "." + attributeName;
|
24
24
|
adapter.createState(stateDatenpunkt, null, {
|
25
25
|
name: stateDatenpunkt,
|
26
26
|
desc: stateDatenpunkt,
|
27
|
-
type: attributeType,
|
27
|
+
type: attributeType,
|
28
28
|
read: true,
|
29
29
|
write: true
|
30
30
|
});
|
31
31
|
adapter.setState(stateDatenpunkt, attributeValue);
|
32
32
|
}
|
33
33
|
|
34
|
-
export function getHomematicDevices(adapter:any, filterCategory:string) {
|
34
|
+
export function getHomematicDevices(adapter: any, filterCategory: string) {
|
35
35
|
var homematicArray = [];
|
36
36
|
//var homematicArray : Array<InstanceType<typeof AbstractHomematic>> = [];
|
37
|
-
|
37
|
+
|
38
38
|
adapter.$('state[id=0_userdata.0.devices.homematic.*.type]').each(datenpunktKey => { // 0_userdata.0.devices.homematic.30.type
|
39
39
|
var datenpunktPraefix = datenpunktKey.replaceAll(".type", "");
|
40
40
|
if (adapter.getState(datenpunktKey).val == filterCategory) {
|
@@ -183,17 +183,17 @@ export function getHomematicDevices(adapter:any, filterCategory:string) {
|
|
183
183
|
adapter.getState(datenpunktPraefix + "." + attributeDevice).val // [4] Device (z.B. Stehlampe)
|
184
184
|
));
|
185
185
|
}
|
186
|
-
}
|
186
|
+
}
|
187
187
|
|
188
188
|
});
|
189
189
|
return homematicArray;
|
190
190
|
}
|
191
191
|
|
192
|
-
export function getHomematicDevicesAll(adapter:any) {
|
192
|
+
export function getHomematicDevicesAll(adapter: any) {
|
193
193
|
//var homematicArray : Array<InstanceType<typeof AbstractHomematic>> = [];
|
194
194
|
var homematicArray = [];
|
195
195
|
|
196
|
-
|
196
|
+
|
197
197
|
adapter.getHomematicDevices(adapter, deviceHomematicWandthermostat).forEach(homematic => {
|
198
198
|
// @ts-ignore
|
199
199
|
homematicArray.push(homematic);
|
package/main.js
CHANGED
@@ -3,6 +3,8 @@ var DateCalendarTest = require('./test.js').DateCalendarTest;
|
|
3
3
|
var _a = require('./html.js'), AbstractColumn = _a.AbstractColumn, HtmlTable = _a.HtmlTable, HtmlCreator = _a.HtmlCreator, StaticIconColumn = _a.StaticIconColumn, AbstractStandardTextColumn = _a.AbstractStandardTextColumn;
|
4
4
|
var _b = require('./homematicClasses.js'), HomematicWindow = _b.HomematicWindow, HomematicSteckdose = _b.HomematicSteckdose, HomematicHeizkoerper = _b.HomematicHeizkoerper, HomematicDimmer = _b.HomematicDimmer, HomematicWandthermostat = _b.HomematicWandthermostat, HomematicFussbodenheizung = _b.HomematicFussbodenheizung, HomematicWandschalter = _b.HomematicWandschalter, HomematicDoor = _b.HomematicDoor, HomematicWetterstation = _b.HomematicWetterstation, HomematicAccessPoint = _b.HomematicAccessPoint, HomematicRollladen = _b.HomematicRollladen, HomematicWandtaster = _b.HomematicWandtaster, HomematicTemperatursensor = _b.HomematicTemperatursensor, HomematicRauchmelder = _b.HomematicRauchmelder, HomematicPraesenzmelder = _b.HomematicPraesenzmelder, AbstractHomematic = _b.AbstractHomematic, HomematicFunkschaltaktor = _b.HomematicFunkschaltaktor, deviceHomematicWandthermostat = _b.deviceHomematicWandthermostat, deviceHomematicPraesenzmelder = _b.deviceHomematicPraesenzmelder, deviceHomematicWetterstation = _b.deviceHomematicWetterstation, deviceHomematicDoor = _b.deviceHomematicDoor, deviceHomematicRollladen = _b.deviceHomematicRollladen, deviceHomematicWandschalter = _b.deviceHomematicWandschalter, deviceHomematicFussbodenheizung = _b.deviceHomematicFussbodenheizung, deviceHomematicWandtaster = _b.deviceHomematicWandtaster, deviceHomematicAccessPoint = _b.deviceHomematicAccessPoint, deviceHomematicTemperatursensor = _b.deviceHomematicTemperatursensor, deviceHomematicRauchmelder = _b.deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor = _b.deviceHomematicFunkSchaltaktor, deviceHomematicWindow = _b.deviceHomematicWindow, deviceHomematicSteckdose = _b.deviceHomematicSteckdose, deviceHomematicHeizkoerper = _b.deviceHomematicHeizkoerper, deviceHomematicDimmer = _b.deviceHomematicDimmer;
|
5
5
|
var _c = require('./homematicFunctions.js'), createHomematicDevice = _c.createHomematicDevice, getHomematicDevices = _c.getHomematicDevices, getHomematicDevicesAll = _c.getHomematicDevicesAll;
|
6
|
+
var _d = require('./zigbeeClasses.js'), AbstractZigbee = _d.AbstractZigbee, ColorScheme = _d.ColorScheme, RGBColorScheme = _d.RGBColorScheme, WhiteColorScheme = _d.WhiteColorScheme, ZigbeeLampeRGB = _d.ZigbeeLampeRGB, LampeWeissTasterScheme = _d.LampeWeissTasterScheme, LampeWeissAlexaScheme = _d.LampeWeissAlexaScheme, ZigbeeLampeWeiss = _d.ZigbeeLampeWeiss, ZigbeeSteckdose = _d.ZigbeeSteckdose, ZigbeeSchalter = _d.ZigbeeSchalter, ZigbeeRepeater = _d.ZigbeeRepeater, ZigbeeFenstersensor = _d.ZigbeeFenstersensor, ZigbeeRauchmelder = _d.ZigbeeRauchmelder, ZigbeeBewegungsmelder = _d.ZigbeeBewegungsmelder, ZigbeeWandtaster = _d.ZigbeeWandtaster, ZigbeeDosenrelais = _d.ZigbeeDosenrelais, AlexaInputConverter = _d.AlexaInputConverter, deviceZigbeeSteckdose = _d.deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder = _d.deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB = _d.deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss = _d.deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder = _d.deviceZigbeeRauchmelder, deviceZigbeeWandtaster = _d.deviceZigbeeWandtaster, deviceZigbeeDosenrelais = _d.deviceZigbeeDosenrelais, deviceZigbeeSchalter = _d.deviceZigbeeSchalter, deviceZigbeeRepeater = _d.deviceZigbeeRepeater, deviceZigbeeFenstersensor = _d.deviceZigbeeFenstersensor;
|
7
|
+
var _e = require('./zigbeeFunctions.js'), createZigbeeDevice = _e.createZigbeeDevice, createLampeWeiss = _e.createLampeWeiss, createSteckdose = _e.createSteckdose, getZigbeeDevices = _e.getZigbeeDevices, getZigbeeDevicesAll = _e.getZigbeeDevicesAll;
|
6
8
|
module.exports = {
|
7
9
|
// date.ts:
|
8
10
|
DateHelper: DateHelper,
|
@@ -51,5 +53,39 @@ module.exports = {
|
|
51
53
|
// homematicFunctions.ts
|
52
54
|
createHomematicDevice: createHomematicDevice,
|
53
55
|
getHomematicDevices: getHomematicDevices,
|
54
|
-
getHomematicDevicesAll: getHomematicDevicesAll
|
56
|
+
getHomematicDevicesAll: getHomematicDevicesAll,
|
57
|
+
// zigbeeClasses.ts
|
58
|
+
AbstractZigbee: AbstractZigbee,
|
59
|
+
ColorScheme: ColorScheme,
|
60
|
+
RGBColorScheme: RGBColorScheme,
|
61
|
+
WhiteColorScheme: WhiteColorScheme,
|
62
|
+
ZigbeeLampeRGB: ZigbeeLampeRGB,
|
63
|
+
LampeWeissTasterScheme: LampeWeissTasterScheme,
|
64
|
+
LampeWeissAlexaScheme: LampeWeissAlexaScheme,
|
65
|
+
ZigbeeLampeWeiss: ZigbeeLampeWeiss,
|
66
|
+
ZigbeeSteckdose: ZigbeeSteckdose,
|
67
|
+
ZigbeeSchalter: ZigbeeSchalter,
|
68
|
+
ZigbeeRepeater: ZigbeeRepeater,
|
69
|
+
ZigbeeFenstersensor: ZigbeeFenstersensor,
|
70
|
+
ZigbeeRauchmelder: ZigbeeRauchmelder,
|
71
|
+
ZigbeeBewegungsmelder: ZigbeeBewegungsmelder,
|
72
|
+
ZigbeeWandtaster: ZigbeeWandtaster,
|
73
|
+
ZigbeeDosenrelais: ZigbeeDosenrelais,
|
74
|
+
AlexaInputConverter: AlexaInputConverter,
|
75
|
+
deviceZigbeeSteckdose: deviceZigbeeSteckdose,
|
76
|
+
deviceZigbeeBewegungsmelder: deviceZigbeeBewegungsmelder,
|
77
|
+
deviceZigbeeLampeRGB: deviceZigbeeLampeRGB,
|
78
|
+
deviceZigbeeLampeWeiss: deviceZigbeeLampeWeiss,
|
79
|
+
deviceZigbeeRauchmelder: deviceZigbeeRauchmelder,
|
80
|
+
deviceZigbeeWandtaster: deviceZigbeeWandtaster,
|
81
|
+
deviceZigbeeDosenrelais: deviceZigbeeDosenrelais,
|
82
|
+
deviceZigbeeSchalter: deviceZigbeeSchalter,
|
83
|
+
deviceZigbeeRepeater: deviceZigbeeRepeater,
|
84
|
+
deviceZigbeeFenstersensor: deviceZigbeeFenstersensor,
|
85
|
+
// zigbeeFunctions.ts
|
86
|
+
createZigbeeDevice: createZigbeeDevice,
|
87
|
+
createLampeWeiss: createLampeWeiss,
|
88
|
+
createSteckdose: createSteckdose,
|
89
|
+
getZigbeeDevices: getZigbeeDevices,
|
90
|
+
getZigbeeDevicesAll: getZigbeeDevicesAll
|
55
91
|
};
|
package/main.ts
CHANGED
@@ -4,6 +4,8 @@ const { DateCalendarTest } = require('./test.js');
|
|
4
4
|
const { AbstractColumn, HtmlTable, HtmlCreator, StaticIconColumn, AbstractStandardTextColumn } = require('./html.js');
|
5
5
|
const { HomematicWindow, HomematicSteckdose, HomematicHeizkoerper, HomematicDimmer, HomematicWandthermostat, HomematicFussbodenheizung, HomematicWandschalter, HomematicDoor, HomematicWetterstation, HomematicAccessPoint, HomematicRollladen, HomematicWandtaster, HomematicTemperatursensor, HomematicRauchmelder, HomematicPraesenzmelder, AbstractHomematic, HomematicFunkschaltaktor, deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer} = require('./homematicClasses.js');
|
6
6
|
const { createHomematicDevice, getHomematicDevices, getHomematicDevicesAll } = require('./homematicFunctions.js');
|
7
|
+
const { AbstractZigbee, ColorScheme, RGBColorScheme, WhiteColorScheme, ZigbeeLampeRGB, LampeWeissTasterScheme, LampeWeissAlexaScheme, ZigbeeLampeWeiss, ZigbeeSteckdose, ZigbeeSchalter, ZigbeeRepeater, ZigbeeFenstersensor, ZigbeeRauchmelder, ZigbeeBewegungsmelder, ZigbeeWandtaster, ZigbeeDosenrelais,AlexaInputConverter, deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder, deviceZigbeeWandtaster, deviceZigbeeDosenrelais, deviceZigbeeSchalter, deviceZigbeeRepeater, deviceZigbeeFenstersensor } = require('./zigbeeClasses.js');
|
8
|
+
const { createZigbeeDevice, createLampeWeiss, createSteckdose, getZigbeeDevices, getZigbeeDevicesAll } = require('./zigbeeFunctions.js');
|
7
9
|
|
8
10
|
module.exports = {
|
9
11
|
|
@@ -21,5 +23,12 @@ module.exports = {
|
|
21
23
|
deviceHomematicWandthermostat, deviceHomematicPraesenzmelder, deviceHomematicWetterstation, deviceHomematicDoor, deviceHomematicRollladen, deviceHomematicWandschalter, deviceHomematicFussbodenheizung, deviceHomematicWandtaster, deviceHomematicAccessPoint, deviceHomematicTemperatursensor, deviceHomematicRauchmelder, deviceHomematicFunkSchaltaktor, deviceHomematicWindow, deviceHomematicSteckdose, deviceHomematicHeizkoerper, deviceHomematicDimmer,
|
22
24
|
|
23
25
|
// homematicFunctions.ts
|
24
|
-
createHomematicDevice, getHomematicDevices, getHomematicDevicesAll
|
26
|
+
createHomematicDevice, getHomematicDevices, getHomematicDevicesAll,
|
27
|
+
|
28
|
+
// zigbeeClasses.ts
|
29
|
+
AbstractZigbee, ColorScheme, RGBColorScheme, WhiteColorScheme, ZigbeeLampeRGB, LampeWeissTasterScheme, LampeWeissAlexaScheme, ZigbeeLampeWeiss, ZigbeeSteckdose, ZigbeeSchalter, ZigbeeRepeater, ZigbeeFenstersensor, ZigbeeRauchmelder, ZigbeeBewegungsmelder, ZigbeeWandtaster, ZigbeeDosenrelais,AlexaInputConverter,
|
30
|
+
deviceZigbeeSteckdose, deviceZigbeeBewegungsmelder, deviceZigbeeLampeRGB, deviceZigbeeLampeWeiss, deviceZigbeeRauchmelder, deviceZigbeeWandtaster, deviceZigbeeDosenrelais, deviceZigbeeSchalter, deviceZigbeeRepeater, deviceZigbeeFenstersensor,
|
31
|
+
|
32
|
+
// zigbeeFunctions.ts
|
33
|
+
createZigbeeDevice, createLampeWeiss, createSteckdose, getZigbeeDevices, getZigbeeDevicesAll
|
25
34
|
};
|