iobroker.lorawan 1.22.19 → 1.22.20
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/README.md +3 -3
- package/io-package.json +14 -14
- package/lib/modules/bridge.js +45 -10
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -24,6 +24,9 @@ For now there is documentation in English here: https://wiki.hafenmeister.de
|
|
|
24
24
|
Placeholder for the next version (at the beginning of the line):
|
|
25
25
|
### **WORK IN PROGRESS**
|
|
26
26
|
-->
|
|
27
|
+
### 1.22.20 (2026-06-16)
|
|
28
|
+
- (BenAhrdt) Write publishIds and subscribedTopics delayed
|
|
29
|
+
|
|
27
30
|
### 1.22.19 (2026-06-16)
|
|
28
31
|
- (BenAhrdt) Test durch fehlerhaften git commit
|
|
29
32
|
|
|
@@ -36,9 +39,6 @@ For now there is documentation in English here: https://wiki.hafenmeister.de
|
|
|
36
39
|
### 1.22.16 (2026-06-06)
|
|
37
40
|
- (BenAhrdt) Bugfix COver in ToIob
|
|
38
41
|
|
|
39
|
-
### 1.22.15 (2026-06-05)
|
|
40
|
-
- (BenAhrdt) Add roles for some new devices
|
|
41
|
-
|
|
42
42
|
[Older changes can be found there](CHANGELOG_OLD.md)
|
|
43
43
|
|
|
44
44
|
## License
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "lorawan",
|
|
4
|
-
"version": "1.22.
|
|
4
|
+
"version": "1.22.20",
|
|
5
5
|
"news": {
|
|
6
|
+
"1.22.20": {
|
|
7
|
+
"en": "Write publishIds and subscribedTopics delayed",
|
|
8
|
+
"de": "Write publishIds und abonnierteTopics verzögert",
|
|
9
|
+
"ru": "Написать Ids и подписатьсяTopics задерживается",
|
|
10
|
+
"pt": "Escrever os IDs de publicação e os Topics subscritos atrasados",
|
|
11
|
+
"nl": "PublicerenIds en geabonneerdTopics vertraagd schrijven",
|
|
12
|
+
"fr": "Ecrire des Ids et s'abonnerSujets retardés",
|
|
13
|
+
"it": "Scrivere pubblicaIds e abbonati Argomenti ritardati",
|
|
14
|
+
"es": "Escribe publicacionesIds y suscritosTemas retrasados",
|
|
15
|
+
"pl": "Napisz publishIds i subskrybedTopics opóźnione",
|
|
16
|
+
"uk": "Напишіть відгукПрихильники та підписки",
|
|
17
|
+
"zh-cn": "写入 Publishing Ids 和订阅日期延迟"
|
|
18
|
+
},
|
|
6
19
|
"1.22.19": {
|
|
7
20
|
"en": "Test durch fehlerhaften git commit",
|
|
8
21
|
"de": "Test durch fehlerhaften git commit",
|
|
@@ -80,19 +93,6 @@
|
|
|
80
93
|
"pl": "Tolob suports tryb hs dla koloru (światła)\nkwestie związane z depandabot",
|
|
81
94
|
"uk": "ToIob suports hs режим для кольору (світло)\nпитання від depandabot",
|
|
82
95
|
"zh-cn": "颜色的 ToIob suports hs 模式( 浅色)\n发件人的问题"
|
|
83
|
-
},
|
|
84
|
-
"1.22.13": {
|
|
85
|
-
"en": "Changes in io-package.\nChanges in package.json",
|
|
86
|
-
"de": "Änderungen im io-Paket.\nÄnderungen im Paket.json",
|
|
87
|
-
"ru": "Изменения в io-пакете.\nИзменения в package.json",
|
|
88
|
-
"pt": "Alterações no pacote io.\nAlterações no package.json",
|
|
89
|
-
"nl": "Wijzigingen in de verpakking.\nWijzigingen in package.json",
|
|
90
|
-
"fr": "Changements dans l'emballage.\nChangements dans package.json",
|
|
91
|
-
"it": "Cambiamenti nel pacchetto io.\nModifiche nel pacchetto.json",
|
|
92
|
-
"es": "Cambios en io-paquete.\nCambios en package.json",
|
|
93
|
-
"pl": "Zmiany w pakiecie jo-.\nZmiany w package.json",
|
|
94
|
-
"uk": "Зміни в io-package.\nЗміни в package.json",
|
|
95
|
-
"zh-cn": "Io包装的变化.\n软件包的变化 json"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"titleLang": {
|
package/lib/modules/bridge.js
CHANGED
|
@@ -187,6 +187,10 @@ class bridgeClass extends EventEmiter {
|
|
|
187
187
|
assign: 'assign',
|
|
188
188
|
messageTo: 'messageTo',
|
|
189
189
|
};
|
|
190
|
+
|
|
191
|
+
// Timerwerte für verzögertes Schreiben
|
|
192
|
+
this.publishedIdsWriteTimer = undefined;
|
|
193
|
+
this.subscribedTopicsWriteTimer = undefined;
|
|
190
194
|
}
|
|
191
195
|
|
|
192
196
|
/*********************************************************************
|
|
@@ -234,7 +238,7 @@ class bridgeClass extends EventEmiter {
|
|
|
234
238
|
this.VitualIds[this.SubscribedTopics[topic].id] = message;
|
|
235
239
|
// Return the virtual mode
|
|
236
240
|
await this.publishId(this.SubscribedTopics[topic].id, message, {});
|
|
237
|
-
|
|
241
|
+
this.scheduleSubscribedTopicsWrite();
|
|
238
242
|
return;
|
|
239
243
|
}
|
|
240
244
|
|
|
@@ -278,7 +282,7 @@ class bridgeClass extends EventEmiter {
|
|
|
278
282
|
c: 'from bridge',
|
|
279
283
|
});
|
|
280
284
|
}
|
|
281
|
-
|
|
285
|
+
this.scheduleSubscribedTopicsWrite();
|
|
282
286
|
return;
|
|
283
287
|
}
|
|
284
288
|
|
|
@@ -367,7 +371,7 @@ class bridgeClass extends EventEmiter {
|
|
|
367
371
|
});
|
|
368
372
|
}
|
|
369
373
|
}
|
|
370
|
-
|
|
374
|
+
this.scheduleSubscribedTopicsWrite();
|
|
371
375
|
} else {
|
|
372
376
|
this.adapter.log.debug(`The received Topic ${topic} is not subscribed`);
|
|
373
377
|
}
|
|
@@ -379,13 +383,25 @@ class bridgeClass extends EventEmiter {
|
|
|
379
383
|
/**
|
|
380
384
|
* Write Subscribed Topics
|
|
381
385
|
*/
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
)
|
|
386
|
+
scheduleSubscribedTopicsWrite() {
|
|
387
|
+
if (this.subscribedTopicsWriteTimer) {
|
|
388
|
+
return;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
this.subscribedTopicsWriteTimer = setTimeout(async () => {
|
|
392
|
+
this.subscribedTopicsWriteTimer = undefined;
|
|
393
|
+
|
|
394
|
+
await this.adapter.setState(
|
|
395
|
+
'info.subscribedTopics',
|
|
396
|
+
{
|
|
397
|
+
val: JSON.stringify(this.SubscribedTopics),
|
|
398
|
+
c: 'from bridge',
|
|
399
|
+
},
|
|
400
|
+
true,
|
|
401
|
+
);
|
|
402
|
+
}, 1000);
|
|
388
403
|
}
|
|
404
|
+
|
|
389
405
|
/**
|
|
390
406
|
* @param {string} hex value of the color
|
|
391
407
|
*/
|
|
@@ -1097,7 +1113,7 @@ class bridgeClass extends EventEmiter {
|
|
|
1097
1113
|
options.retain = true;
|
|
1098
1114
|
}
|
|
1099
1115
|
await this.bridgeMqttClient.publish(topic, value, options);
|
|
1100
|
-
|
|
1116
|
+
this.schedulePublishedIdsWrite();
|
|
1101
1117
|
}
|
|
1102
1118
|
|
|
1103
1119
|
/* alt 26.11.2025
|
|
@@ -1363,6 +1379,25 @@ class bridgeClass extends EventEmiter {
|
|
|
1363
1379
|
}
|
|
1364
1380
|
}
|
|
1365
1381
|
|
|
1382
|
+
/**
|
|
1383
|
+
* schedule the Published Ids
|
|
1384
|
+
*/
|
|
1385
|
+
schedulePublishedIdsWrite() {
|
|
1386
|
+
if (this.publishedIdsWriteTimer) {
|
|
1387
|
+
return;
|
|
1388
|
+
}
|
|
1389
|
+
|
|
1390
|
+
this.publishedIdsWriteTimer = setTimeout(async () => {
|
|
1391
|
+
this.publishedIdsWriteTimer = undefined;
|
|
1392
|
+
|
|
1393
|
+
try {
|
|
1394
|
+
await this.adapter.setState('info.publishedIds', JSON.stringify(this.PublishedIds), true);
|
|
1395
|
+
} catch (error) {
|
|
1396
|
+
this.adapter.log.error(`schedulePublishedIdsWrite: ${error}`);
|
|
1397
|
+
}
|
|
1398
|
+
}, 1000);
|
|
1399
|
+
}
|
|
1400
|
+
|
|
1366
1401
|
/*********************************************************************
|
|
1367
1402
|
* **************** assign Structur of internal memory ***************
|
|
1368
1403
|
* ******************************************************************/
|