iobroker.telegram-menu 0.6.9 → 0.6.10

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 CHANGED
@@ -33,6 +33,10 @@ You can create different groups with separate menus, and then assign users to th
33
33
  Placeholder for the next version (at the beginning of the line):
34
34
  ### **WORK IN PROGRESS**
35
35
  -->
36
+ ### 0.6.10 (2023-09-23)
37
+
38
+ - bug fix
39
+
36
40
  ### 0.6.9 (2023-09-23)
37
41
 
38
42
  - Rearranging listed actions #49
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "telegram-menu",
4
- "version": "0.6.9",
4
+ "version": "0.6.10",
5
5
  "news": {
6
+ "0.6.10": {
7
+ "en": "bug fix",
8
+ "de": "fehlerbehebung",
9
+ "ru": "исправление ошибки",
10
+ "pt": "correção de bugs",
11
+ "nl": "insecten",
12
+ "fr": "bug fix",
13
+ "it": "correzione bug",
14
+ "es": "bug",
15
+ "pl": "błąd",
16
+ "uk": "виправлення помилок",
17
+ "zh-cn": "bug fix"
18
+ },
6
19
  "0.6.9": {
7
20
  "en": "Rearranging listed actions #49\nwhen calling up the submenu, Text was send no entry found, fixed\nbug switch menu, fixed\nset a state, and receive the change of another state",
8
21
  "de": "Rearrangieren von aufgelisteten Aktionen #49\nbeim Aufruf des Untermenüs, Text wurde nicht gefunden, behoben\nbugschalter-menü, fixiert\neinen zustand einstellen und die änderung eines anderen zustands empfangen",
@@ -80,19 +93,6 @@
80
93
  "pl": "Kontrola Triggera nie jest już dostępna w akcji, w nav jest wizualizowana, że wyzwalanie jest już w użyciu",
81
94
  "uk": "Перевірка тригера, використовувані тригери більше не доступні в дії, в нав він візуалізований, що тригер вже в використанні",
82
95
  "zh-cn": "突然的检查不再可供采取行动,在无知的情况下,触发者已经使用。"
83
- },
84
- "0.6.3": {
85
- "en": "user check, least one user must be checked",
86
- "de": "benutzerüberprüfung, mindestens ein benutzer muss überprüft werden",
87
- "ru": "проверка пользователя, хотя бы один пользователь должен быть проверен",
88
- "pt": "verificação do usuário, pelo menos um usuário deve ser verificado",
89
- "nl": "eén gebruiker moet gecontroleerd worden",
90
- "fr": "contrôle utilisateur, le moins d'un utilisateur doit être vérifié",
91
- "it": "controllo utente, almeno un utente deve essere controllato",
92
- "es": "control de usuario, al menos un usuario debe ser revisado",
93
- "pl": "wskaźnik użytkownika musi być sprawdzany przynajmniej jeden użytkownik",
94
- "uk": "перевірка користувачів, принаймні один користувач повинен перевіряти",
95
- "zh-cn": "用户检查,至少必须检查一名用户。"
96
96
  }
97
97
  },
98
98
  "titleLang": {
package/main.js CHANGED
@@ -315,6 +315,10 @@ class TelegramMenu extends utils.Adapter {
315
315
  // Schalten
316
316
  else if (part.switch) {
317
317
  setStateIdsToListenTo = setstate(_this, part, userToSend);
318
+
319
+ _this.log.debug("SubmenuData3" + JSON.stringify(setStateIdsToListenTo));
320
+ if (Array.isArray(setStateIdsToListenTo))
321
+ _subscribeAndUnSubscribeForeignStatesAsync(setStateIdsToListenTo, _this, true);
318
322
  return true;
319
323
  } else if (part.getData) {
320
324
  getstate(
@@ -429,18 +433,28 @@ class TelegramMenu extends utils.Adapter {
429
433
 
430
434
  /**
431
435
  *
432
- * @param {Array} array
436
+ * @param {*} array
433
437
  * @param {*} _this
434
438
  */
435
439
  function _subscribeForeignStatesAsync(array, _this) {
440
+ array = deleteDoubleEntrysInArray(array);
441
+ _this.log.debug("array " + JSON.stringify(array));
436
442
  array.forEach((element) => {
437
- if (element.id) _this.log.debug("Subscribe State" + JSON.stringify(element.id));
438
- _this.subscribeForeignStatesAsync(element.id);
443
+ _this.log.debug("Subscribe State: " + JSON.stringify(element));
444
+ _this.subscribeForeignStatesAsync(element);
439
445
  });
440
446
  }
447
+ /**
448
+ * Removes duplicate entries and saves the result
449
+ * @param {[]} arr Array
450
+ * @returns Array with unique entrys
451
+ */
452
+ function deleteDoubleEntrysInArray(arr) {
453
+ return arr.filter((item, index) => arr.indexOf(item) === index);
454
+ }
441
455
  /**
442
456
  *
443
- * @param {[]} array
457
+ * @param {any[]} array
444
458
  * @param {*} _this
445
459
  * @param {boolean} subscribe If true, then subscribe, else unsubscribe
446
460
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.telegram-menu",
3
- "version": "0.6.9",
3
+ "version": "0.6.10",
4
4
  "description": "Easily create Telegram Menus",
5
5
  "author": {
6
6
  "name": "MiRo1310",