Skip to content
This repository was archived by the owner on Mar 18, 2025. It is now read-only.

Commit cbaae28

Browse files
committed
Objects tree changed: New, more readable objects added
1 parent 6f1f03a commit cbaae28

File tree

5 files changed

+62
-10
lines changed

5 files changed

+62
-10
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
# ioBroker.nibeuplink
22
This adapter is still in development. You can use it but without support and help. Later I will document it here.
33

4+
**Attention:**
5+
In version 0.1.0 new, more readable objects were added to the object tree. In a later version the old objects in the child paths will be removed!
6+
47
## Changelog
58

9+
### 0.1.0
10+
* Objects tree changed: New, more readable objects added
11+
612
### 0.0.2
713
* Language support for objects tree
814

io-package.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
{
22
"common": {
33
"name": "nibeuplink",
4-
"version": "0.0.2",
4+
"version": "0.1.0",
55
"news": {
6+
"0.1.0": {
7+
"en": "Objects tree changed: New, more readable objects added",
8+
"de": "Objektbaum wurde geändert: Neue, besser lesbare Objekte wurden hinzugefügt"
9+
},
610
"0.0.2": {
711
"en": "Language support for objects tree",
812
"de": "Unterstützung von Sprachen im Objektbaum"

main.js

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -185,21 +185,51 @@ function main() {
185185

186186
for (var i in data) {
187187
var par = data[i];
188+
var key = par["key"];
188189
var title = par["title"];
190+
var designation = par["designation"];
191+
if ((designation != undefined) && (designation != ""))
192+
{
193+
title = title + " (" + designation + ")";
194+
}
195+
var categoryId = par["categoryId"];
196+
createChannel(categoryId, par["categoryName"]);
197+
198+
var valuePath = categoryId + "." + key.toString().toUpperCase();
199+
adapter.setObjectNotExists(valuePath, {
200+
type: 'state',
201+
common: {
202+
name: title,
203+
type: 'number',
204+
role: 'value',
205+
unit: par["unit"]
206+
},
207+
native: {}
208+
});
209+
adapter.setState(valuePath, {val: par["value"], ack: true});
210+
var displayPath = categoryId + "." + key.toString().toUpperCase() + "_DISPLAY";
211+
adapter.setObjectNotExists(displayPath, {
212+
type: 'state',
213+
common: {
214+
name: title + " [Display]",
215+
type: 'string',
216+
role: 'text'
217+
},
218+
native: {}
219+
});
220+
adapter.setState(displayPath, {val: par["displayValue"], ack: true});
221+
189222
var parameterId = par["parameterId"];
190-
var categoryId = par ["categoryId"];
191223
var path = categoryId + "." + parameterId;
192224
createChannel(path, title);
193-
194225
for (var p in par) {
195226
var parPath = path + "." + p;
196-
var value = par[p];
197227
if ((p == "value") || (p == "rawValue" || (p == "divideBy") || (p == "parameterId")))
198228
createNumberObject(parPath, p);
199229
else if (p != "name")
200230
createStringObject(parPath, p);
201-
adapter.setState(parPath, {val: value, ack: true});
202-
}
231+
adapter.setState(parPath, {val: par[p], ack: true});
232+
}
203233
}
204234
adapter.log.debug("Data processed.");
205235
});

nibe-fetcher.js

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -524,15 +524,27 @@ class Fetcher extends EventEmitter {
524524
async.map(categories, (item, reply) => {
525525
this.fetchParams(item.categoryId).then((result) => {
526526
result.forEach((i) => {
527-
const name = i.parameterId || (item.categoryId + '_' + i.title.split(/[^a-z]+/gi).join('_')).toUpperCase().replace(/[_]+$/, '');
528-
const parameters = this.options.parameters[name];
527+
var name = i.title;
528+
if ((i.designation != undefined) && (i.designation != ""))
529+
{
530+
name = name + "_" + i.designation;
531+
}
532+
name = (name.split(/[^a-z]+/gi).join('_')).toUpperCase().replace(/[_]+$/, '');
533+
const parameters = this.options.parameters[i.parameterId];
529534
Object.assign(i, {
530535
key: name,
531-
categoryId: item.categoryId
536+
categoryId: item.categoryId,
537+
categoryName: item.name
532538
}, parameters)
533539

534540
if (i.divideBy > 0)
541+
{
535542
i.value = i.rawValue / i.divideBy;
543+
}
544+
else
545+
{
546+
i.value = i.rawValue;
547+
}
536548
})
537549
reply(null, result)
538550
}, (error) => {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "iobroker.nibeuplink",
3-
"version": "0.0.2",
3+
"version": "0.1.0",
44
"description": "nibeuplink",
55
"author": {
66
"name": "Sebastian Haesselbarth",

0 commit comments

Comments
 (0)