iobroker.zendure-solarflow 1.14.1 → 1.14.2

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
@@ -55,6 +55,10 @@ You can still do firmware updates with the official Zendure app via bluetooth an
55
55
  Credits goes to https://github.com/reinhard-brandstaedter/solarflow which helped a lot with the knowledge about the MQTT server from Zendure! Thanks!
56
56
 
57
57
  ## Changelog
58
+ ### 1.14.2 (2025-06-07)
59
+
60
+ - Fix control states not writable.
61
+
58
62
  ### 1.14.1 (2025-06-07)
59
63
 
60
64
  - IMPORTANT: This version will use a new way to check which states should be created for the device, so maybe something is broken on state creation!
@@ -77,7 +77,7 @@ const createControlStates = async (adapter, productKey, deviceKey, productName)
77
77
  desc: state.title,
78
78
  role: state.role,
79
79
  read: true,
80
- write: false,
80
+ write: true,
81
81
  unit: state.unit,
82
82
  states: state.states
83
83
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/helpers/createControlStates.ts"],
4
- "sourcesContent": ["/* eslint-disable @typescript-eslint/indent */\r\n\r\nimport { ac2400ControlStates } from \"../constants/ac2400ControlStates\";\r\nimport { aceControlStates } from \"../constants/aceControlStates\";\r\nimport { aioControlStates } from \"../constants/aioControlStates\";\r\nimport { hubControlStates } from \"../constants/hubControlStates\";\r\nimport { hyperControlStates } from \"../constants/hyperControlStates\";\r\nimport { solarflow800ControlStates } from \"../constants/solarflow800ControlStates\";\r\nimport { solarflow800ProControlStates } from \"../constants/solarflow800ProControlStates\";\r\nimport { ZendureSolarflow } from \"../main\";\r\nimport { ISolarflowState } from \"../models/ISolarflowState\";\r\n\r\nexport const getControlStateDefinition = (\r\n productName: string\r\n): ISolarflowState[] => {\r\n switch (productName.toLocaleLowerCase()) {\r\n case \"hyper 2000\":\r\n return hyperControlStates;\r\n case \"solarflow 800\":\r\n return solarflow800ControlStates;\r\n case \"solarflow2.0\":\r\n return hubControlStates;\r\n case \"solarflow hub 2000\":\r\n return hubControlStates;\r\n case \"solarflow aio zy\":\r\n return aioControlStates;\r\n case \"ace 1500\":\r\n return aceControlStates;\r\n case \"solarflow 800 pro\":\r\n return solarflow800ProControlStates;\r\n case \"solarflow 2400 ac\":\r\n return ac2400ControlStates;\r\n default:\r\n return [];\r\n }\r\n};\r\n\r\nexport const createControlStates = async (\r\n adapter: ZendureSolarflow,\r\n productKey: string,\r\n deviceKey: string,\r\n productName: string\r\n): Promise<void> => {\r\n // Create control folder\r\n await adapter?.extendObject(`${productKey}.${deviceKey}.control`, {\r\n type: \"channel\",\r\n common: {\r\n name: {\r\n de: \"Steuerung f\u00FCr Ger\u00E4t \" + deviceKey,\r\n en: \"Control for device \" + deviceKey,\r\n },\r\n },\r\n native: {},\r\n });\r\n\r\n const controlStateDefinitions = getControlStateDefinition(productName);\r\n\r\n controlStateDefinitions.forEach(async (state: ISolarflowState) => {\r\n await adapter?.extendObject(\r\n `${productKey}.${deviceKey}.control.${state.title}`,\r\n {\r\n type: \"state\",\r\n common: {\r\n name: {\r\n de: state.nameDe,\r\n en: state.nameEn,\r\n },\r\n type: state.type,\r\n desc: state.title,\r\n role: state.role,\r\n read: true,\r\n write: false,\r\n unit: state.unit,\r\n states: state.states,\r\n },\r\n native: {},\r\n }\r\n );\r\n\r\n // Subscribe to state\r\n adapter?.subscribeStates(\r\n `${productKey}.${deviceKey}.control.${state.title}`\r\n );\r\n });\r\n};\r\n"],
4
+ "sourcesContent": ["/* eslint-disable @typescript-eslint/indent */\r\n\r\nimport { ac2400ControlStates } from \"../constants/ac2400ControlStates\";\r\nimport { aceControlStates } from \"../constants/aceControlStates\";\r\nimport { aioControlStates } from \"../constants/aioControlStates\";\r\nimport { hubControlStates } from \"../constants/hubControlStates\";\r\nimport { hyperControlStates } from \"../constants/hyperControlStates\";\r\nimport { solarflow800ControlStates } from \"../constants/solarflow800ControlStates\";\r\nimport { solarflow800ProControlStates } from \"../constants/solarflow800ProControlStates\";\r\nimport { ZendureSolarflow } from \"../main\";\r\nimport { ISolarflowState } from \"../models/ISolarflowState\";\r\n\r\nexport const getControlStateDefinition = (\r\n productName: string\r\n): ISolarflowState[] => {\r\n switch (productName.toLocaleLowerCase()) {\r\n case \"hyper 2000\":\r\n return hyperControlStates;\r\n case \"solarflow 800\":\r\n return solarflow800ControlStates;\r\n case \"solarflow2.0\":\r\n return hubControlStates;\r\n case \"solarflow hub 2000\":\r\n return hubControlStates;\r\n case \"solarflow aio zy\":\r\n return aioControlStates;\r\n case \"ace 1500\":\r\n return aceControlStates;\r\n case \"solarflow 800 pro\":\r\n return solarflow800ProControlStates;\r\n case \"solarflow 2400 ac\":\r\n return ac2400ControlStates;\r\n default:\r\n return [];\r\n }\r\n};\r\n\r\nexport const createControlStates = async (\r\n adapter: ZendureSolarflow,\r\n productKey: string,\r\n deviceKey: string,\r\n productName: string\r\n): Promise<void> => {\r\n // Create control folder\r\n await adapter?.extendObject(`${productKey}.${deviceKey}.control`, {\r\n type: \"channel\",\r\n common: {\r\n name: {\r\n de: \"Steuerung f\u00FCr Ger\u00E4t \" + deviceKey,\r\n en: \"Control for device \" + deviceKey,\r\n },\r\n },\r\n native: {},\r\n });\r\n\r\n const controlStateDefinitions = getControlStateDefinition(productName);\r\n\r\n controlStateDefinitions.forEach(async (state: ISolarflowState) => {\r\n await adapter?.extendObject(\r\n `${productKey}.${deviceKey}.control.${state.title}`,\r\n {\r\n type: \"state\",\r\n common: {\r\n name: {\r\n de: state.nameDe,\r\n en: state.nameEn,\r\n },\r\n type: state.type,\r\n desc: state.title,\r\n role: state.role,\r\n read: true,\r\n write: true,\r\n unit: state.unit,\r\n states: state.states,\r\n },\r\n native: {},\r\n }\r\n );\r\n\r\n // Subscribe to state\r\n adapter?.subscribeStates(\r\n `${productKey}.${deviceKey}.control.${state.title}`\r\n );\r\n });\r\n};\r\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,iCAAoC;AACpC,8BAAiC;AACjC,8BAAiC;AACjC,8BAAiC;AACjC,gCAAmC;AACnC,uCAA0C;AAC1C,0CAA6C;AAItC,MAAM,4BAA4B,CACvC,gBACsB;AACtB,UAAQ,YAAY,kBAAkB,GAAG;AAAA,IACvC,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO,CAAC;AAAA,EACZ;AACF;AAEO,MAAM,sBAAsB,OACjC,SACA,YACA,WACA,gBACkB;AAElB,SAAM,mCAAS,aAAa,GAAG,UAAU,IAAI,SAAS,YAAY;AAAA,IAChE,MAAM;AAAA,IACN,QAAQ;AAAA,MACN,MAAM;AAAA,QACJ,IAAI,+BAAyB;AAAA,QAC7B,IAAI,wBAAwB;AAAA,MAC9B;AAAA,IACF;AAAA,IACA,QAAQ,CAAC;AAAA,EACX;AAEA,QAAM,0BAA0B,0BAA0B,WAAW;AAErE,0BAAwB,QAAQ,OAAO,UAA2B;AAChE,WAAM,mCAAS;AAAA,MACb,GAAG,UAAU,IAAI,SAAS,YAAY,MAAM,KAAK;AAAA,MACjD;AAAA,QACE,MAAM;AAAA,QACN,QAAQ;AAAA,UACN,MAAM;AAAA,YACJ,IAAI,MAAM;AAAA,YACV,IAAI,MAAM;AAAA,UACZ;AAAA,UACA,MAAM,MAAM;AAAA,UACZ,MAAM,MAAM;AAAA,UACZ,MAAM,MAAM;AAAA,UACZ,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM,MAAM;AAAA,UACZ,QAAQ,MAAM;AAAA,QAChB;AAAA,QACA,QAAQ,CAAC;AAAA,MACX;AAAA;AAIF,uCAAS;AAAA,MACP,GAAG,UAAU,IAAI,SAAS,YAAY,MAAM,KAAK;AAAA;AAAA,EAErD,CAAC;AACH;",
6
6
  "names": []
7
7
  }
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "zendure-solarflow",
4
- "version": "1.14.1",
4
+ "version": "1.14.2",
5
5
  "news": {
6
+ "1.14.2": {
7
+ "en": "Fix control states not writable.",
8
+ "de": "Kontrollzustände nicht schreibbar reparieren.",
9
+ "ru": "Установить контрольные состояния, не подлежащие написанию.",
10
+ "pt": "Corrigir estados de controle não graváveis.",
11
+ "nl": "Regel controle staten niet schrijfbaar.",
12
+ "fr": "Fixez les états de contrôle qui ne sont pas lisibles.",
13
+ "it": "Fissare gli stati di controllo non scrivibile.",
14
+ "es": "Arreglar estados de control no es obligatorio.",
15
+ "pl": "Naprawa stanów kontroli nie jest możliwa do zapisu.",
16
+ "uk": "Виправлення контрольних станів не дратуються.",
17
+ "zh-cn": "修复控制状态不可写入 ."
18
+ },
6
19
  "1.14.1": {
7
20
  "en": "IMPORTANT: This version will use a new way to check which states should be created for the device, so maybe something is broken on state creation!\nAdd support for AC2400, Solarflow 800 and Solarflow 800 Pro. All devices are untested as Zendure won't allow to share data to other users on these new devices AND I don't own any of the devices!\nRemoved the \"standby usage\" on batteries, as it confused some people.",
8
21
  "de": "WICHTIG: Diese Version wird einen neuen Weg verwenden, um zu überprüfen, welche Zustände für das Gerät erstellt werden sollten, also ist vielleicht etwas auf die staatliche Schöpfung gebrochen!\nUnterstützung für AC2400, Solarflow 800 und Solarflow 800 Pro. Alle Geräte sind nicht getestet, da Zendure nicht zulassen wird, Daten an andere Benutzer auf diesen neuen Geräten zu teilen und ich habe keine der Geräte!\nEntfernt die \"Standby-Nutzung\" auf Batterien, da es einige Leute verwirrt.",
@@ -80,19 +93,6 @@
80
93
  "pl": "Dodaj produkt Klucz \"gDa3tb\" dla Hyper 2000",
81
94
  "uk": "Додати товар Ключ \"gDa3tb\" для Hyper 2000",
82
95
  "zh-cn": "添加产品 Hyper 2000 的密钥“ gDa3tb ”"
83
- },
84
- "1.12.6": {
85
- "en": "Fix onMessage Debug message",
86
- "de": "Fix onMessage Debug-Nachricht",
87
- "ru": "Отправить сообщение Message Debug",
88
- "pt": "Corrigir mensagem de depuração na mensagem",
89
- "nl": "OnMessage-debugbericht herstellen",
90
- "fr": "Correction du message de débogage surMessage",
91
- "it": "Fissare il messaggio Debug suMessage",
92
- "es": "Corregir el mensaje de depuración de mensajes",
93
- "pl": "Popraw wiadomość o debugowaniu wiadomości",
94
- "uk": "Виправлення onMessage Debug повідомлення",
95
- "zh-cn": "在 Message 调试消息上修正"
96
96
  }
97
97
  },
98
98
  "titleLang": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.zendure-solarflow",
3
- "version": "1.14.1",
3
+ "version": "1.14.2",
4
4
  "description": "zendure-solarflow",
5
5
  "author": {
6
6
  "name": "Peter",