iobroker.senec 1.3.2 → 1.3.3

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/LICENSE CHANGED
@@ -1,7 +1,9 @@
1
- Copyright (c) 2021 NoBl <github@bluemle.org>
1
+ Copyright (c) 2022 NoBl <github@bluemle.org>
2
2
 
3
3
  MIT License
4
4
 
5
+ Copyright (c) 2022 Author <author@mail.com>
6
+
5
7
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
8
  of this software and associated documentation files (the "Software"), to deal
7
9
  in the Software without restriction, including without limitation the rights
package/README.md CHANGED
@@ -5,7 +5,6 @@
5
5
  [![Downloads](https://img.shields.io/npm/dm/iobroker.senec.svg)](https://www.npmjs.com/package/iobroker.senec)
6
6
  ![Number of Installations (latest)](http://iobroker.live/badges/senec-installed.svg)
7
7
  ![Number of Installations (stable)](http://iobroker.live/badges/senec-stable.svg)
8
- [![Dependency Status](https://img.shields.io/david/nobl/iobroker.senec.svg)](https://david-dm.org/nobl/iobroker.senec)
9
8
  [![Known Vulnerabilities](https://snyk.io/test/github/nobl/ioBroker.senec/badge.svg)](https://snyk.io/test/github/nobl/ioBroker.senec)
10
9
 
11
10
  [![NPM](https://nodei.co/npm/iobroker.senec.png?downloads=true)](https://nodei.co/npm/iobroker.senec/)
@@ -371,6 +370,9 @@ This channel contains calculated values. Currently these are day/week/month/year
371
370
  *Read-only number, which designates the number of wallbox [0..3]. This is only available on systems with configured wallboxes.*
372
371
 
373
372
  ## Changelog
373
+ ### 1.3.3 (NoBl)
374
+ * Updated to current template.
375
+
374
376
  ### 1.3.2 (NoBl)
375
377
  * Autarky without decimal places (again). They are causing more updates than we really need.
376
378
  * Autarky values won't reset to 0 at change of timeframe (day, week, ...) anymore. They are calculated based on reference values anyways.
@@ -403,7 +405,7 @@ This channel contains calculated values. Currently these are day/week/month/year
403
405
  ## License
404
406
  MIT License
405
407
 
406
- Copyright (c) 2021 Norbert Bluemle <github@bluemle.org>
408
+ Copyright (c) 2022 Norbert Bluemle <github@bluemle.org>
407
409
 
408
410
  Permission is hereby granted, free of charge, to any person obtaining a copy
409
411
  of this software and associated documentation files (the "Software"), to deal
package/io-package.json CHANGED
@@ -1,8 +1,20 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "senec",
4
- "version": "1.3.2",
4
+ "version": "1.3.3",
5
5
  "news": {
6
+ "1.3.3": {
7
+ "en": "Update to current template.",
8
+ "de": "Update auf aktuelles Template.",
9
+ "ru": "Обновите текущий шаблон.",
10
+ "pt": "Atualize para o modelo atual.",
11
+ "nl": "Update naar huidige sjabloon.",
12
+ "fr": "Mettre à jour le modèle actuel.",
13
+ "it": "Aggiorna al modello corrente.",
14
+ "es": "Actualizar a la plantilla actual.",
15
+ "pl": "Zaktualizuj do bieżącego szablonu.",
16
+ "zh-cn": "更新到当前模板。"
17
+ },
6
18
  "1.3.2": {
7
19
  "en": "Autarky without decimal places (again) or they would cause too many updates that are irrelevant especially when considering precision. Values also won't reset to 0 at change of timeframe (day, week, ...) anymore. They are calculated based on reference values anyways. Ensuring that only values meant to be changeable by user are defined so (attribute changes upon the next update of value)",
8
20
  "de": "Autarkie (wieder) ohne Dezimalstellen, da sie mehr Updates verursachen, als wirklich benötigt werden (insbesondere im Rahmen der Rundungsgenauigkeiten). Auch werden die Werte bei Änderung des Zeitrahmens (Tag, Woche, ...) nicht mehr forciert auf 0 zurückgesetzt, da sie ohnehin anhand von Referenzwerten berechnet werden. Es wird auch sichergestellt, dass nur Werte geändert werden können, die vom Benutzer geändert werden sollen (Attributänderungen bei der nächsten Wertaktualisierung).",
@@ -50,199 +62,7 @@
50
62
  "es": "(NoBl) Se agregaron puntos de datos para: PM1OBJ1, PM1OBJ2, EG_CONTROL, RTC, PM1, TEMPMEASURE, DEBUG, SOCKETS, CASC, WALLBOX, CONNX50, STECA (informe las unidades incorrectas / faltantes); El adaptador ahora calcula los valores de día / semana / mes / año para: STATISTIC.LIVE_GRID_EXPORT, STATISTIC.LIVE_GRID_IMPORT, STATISTIC.LIVE_HOUSE_CONS, STATISTIC.LIVE_PV_GEN, STATISTIC.LIVE_BAT_CHARGE_MASTER, STATISTIC.LIVE_BARGE_DISTER, STATISTIC.LIVE_BARGE_DISTER. Los valores calculados se pueden encontrar debajo de _calc. punto de datos. La información sobre los valores diarios fue eliminada de la API por SENEC en el pasado. Aquí vamos de nuevo ...",
51
63
  "pl": "(NoBl) Dodano punkty danych dla: PM1OBJ1, PM1OBJ2, EG_CONTROL, RTC, PM1, TEMPMEASURE, DEBUG, SOCKETS, CASC, WALLBOX, CONNX50, STECA (proszę zgłosić błędne / brakujące jednostki) .; Adapter oblicza teraz wartości dzień / tydzień / miesiąc / rok dla: STATISTIC.LIVE_GRID_EXPORT, STATISTIC.LIVE_GRID_IMPORT, STATISTIC.LIVE_HOUSE_CONS, STATISTIC.LIVE_PV_GEN, STATISTIC.LIVE_BAT_CHARGE_MAPORT, STATISTIC.LIVE_HOUSE_CONS, STATISTIC.LIVE_PV_GEN, STATISTIC.LIVE_BAT_CHARGE_MASTER_BATISTIC_STERMADIS. Obliczone wartości można znaleźć poniżej _calc. punkt danych. Informacje o wartościach dziennych zostały w przeszłości usunięte z API przez SENEC. Więc zaczynamy znowu ...",
52
64
  "zh-cn": "(NoBl)添加了以下数据点:PM1OBJ1,PM1OBJ2,EG_CONTROL,RTC,PM1,TEMPMEASURE,DEBUG,SOCKETS,CASC,WALLBOX,CONNX50,STECA(请报告错误/丢失的单元)。适配器现在为以下日期计算日/周/月/年值:STATISTIC.LIVE_GRID_EXPORT,STATISTIC.LIVE_GRID_IMPORT,STATISTIC.LIVE_HOUSE_CONS,STATISTIC.LIVE_PV_GEN,STATISTIC.LIVE_BAT_CHARGE_MASTER,STATISTIC.LIVE_BAT_DISCHARGE_MASTER。计算值可以在_calc下面找到。数据点。过去,SENEC已从API中删除了有关每日值的信息。所以我们再来一次..."
53
- },
54
- "1.1.1": {
55
- "en": "(NoBl) Object attributes are updated to what they are expected to be: unit, description, datatype (this will break anything that still relies on datapoints being STRING that aren't meant to be string)",
56
- "de": "(NoBl) Objektattribute werden bei Bedarf korrigiert: Einheit, Beschreibung, Datentyp (Es ist jetzt nicht mehr alles STRING).",
57
- "ru": "(NoBl) Атрибуты объекта обновляются до ожидаемых значений: единица измерения, описание, тип данных (это нарушит все, что все еще зависит от точек данных, являющихся STRING, а не строками)",
58
- "pt": "(NoBl) Os atributos do objeto são atualizados para o que se espera que sejam: unidade, descrição, tipo de dados (isso quebrará qualquer coisa que ainda dependa de pontos de dados sendo STRING que não deveriam ser strings)",
59
- "nl": "(NoBl) Objectkenmerken worden bijgewerkt naar wat ze worden verwacht: eenheid, beschrijving, datatype (dit zal alles verbreken dat nog steeds afhankelijk is van datapunten die STRING zijn en die niet bedoeld zijn als tekenreeks)",
60
- "fr": "(NoBl) Les attributs d'objet sont mis à jour pour ce qu'ils devraient être: unité, description, type de données (cela cassera tout ce qui repose encore sur des points de données STRING qui ne sont pas censés être une chaîne)",
61
- "it": "(NoBl) Gli attributi degli oggetti vengono aggiornati a quello che dovrebbero essere: unità, descrizione, tipo di dati (questo interromperà tutto ciò che si basa ancora sul fatto che i punti dati siano STRINGA che non devono essere stringa)",
62
- "es": "(NoBl) Los atributos de objeto se actualizan a lo que se espera que sean: unidad, descripción, tipo de datos (esto romperá cualquier cosa que todavía dependa de que los puntos de datos sean STRING y que no estén destinados a ser cadenas)",
63
- "pl": "(NoBl) Atrybuty obiektów są aktualizowane zgodnie z oczekiwaniami: jednostka, opis, typ danych (to zepsuje wszystko, co nadal zależy od punktów danych będących STRING, które nie mają być ciągiem)",
64
- "zh-cn": "(NoBl) 对象属性已更新为预期的值:单位,描述,数据类型(这将破坏仍然依赖于数据点为STRING而不是字符串的任何内容)"
65
- },
66
- "1.1.0": {
67
- "en": "(NoBl) Updated to current adapter template, Integrated GitHub Testing and auto npm publishing, Some other administrative updates",
68
- "de": "(NoBl) Aktualisierung auf aktuelles Adaptertemplate, GitHub Testing und auto npm-Publish übernommen, zzgl. administrativer Aenderungen",
69
- "ru": "(NoBl) Обновлено до текущего шаблона адаптера, интегрированного тестирования GitHub и автоматической публикации npm, некоторых других административных обновлений",
70
- "pt": "(NoBl) Atualizado para o modelo do adaptador atual, teste integrado do GitHub e publicação automática de npm, algumas outras atualizações administrativas",
71
- "nl": "(NoBl) Bijgewerkt naar huidig adaptersjabloon, geïntegreerde GitHub-tests en automatische npm-publicatie, enkele andere administratieve updates",
72
- "fr": "(NoBl) Mise à jour du modèle d'adaptateur actuel, test GitHub intégré et publication automatique de npm, quelques autres mises à jour administratives",
73
- "it": "(NoBl) Aggiornato al modello di adattatore corrente, Test GitHub integrato e pubblicazione automatica npm, Alcuni altri aggiornamenti amministrativi",
74
- "es": "(NoBl) Actualizado a la plantilla de adaptador actual, pruebas de GitHub integradas y publicación automática de npm, algunas otras actualizaciones administrativas",
75
- "pl": "(NoBl) Zaktualizowano do aktualnego szablonu adaptera, zintegrowane testowanie GitHub i automatyczne publikowanie npm, kilka innych aktualizacji administracyjnych",
76
- "zh-cn": "(NoBl)已更新为当前的适配器模板,集成的GitHub测试和自动npm发布,其他一些管理更新"
77
- },
78
- "1.0.13": {
79
- "en": "(NoBl) Added System Description 19 for Senec.Home V3 Hybrid and Added Mode Descriptions for 86-91. (Credits to noffycws)",
80
- "de": "(NoBl) Systembeschreibung 19 für Senec.Home V3 Hybrid hinzugefügt und Modusbeschreibungen für 86-91 hinzugefügt. (Dank an noffycws)",
81
- "ru": "(NoBl) Добавлено описание системы 19 для гибридного Senec.Home V3 и добавлены описания режимов для 86-91. (Кредиты для noffycws)",
82
- "pt": "(NoBl) Descrição do sistema adicionada 19 para Senec.Home V3 Hybrid e Descrições do modo adicionado para 86-91. (Créditos para noffycws)",
83
- "nl": "(NoBl) Systeembeschrijving 19 toegevoegd voor Senec.Home V3 Hybride en Toegevoegde modusbeschrijvingen voor 86-91. (Credits aan noffycws)",
84
- "fr": "(NoBl) Ajout de la description du système 19 pour Senec.Home V3 Hybrid et des descriptions du mode ajouté pour 86-91. (Crédits à noffycws)",
85
- "it": "(NoBl) Aggiunta la descrizione del sistema 19 per Senec.Home V3 Hybrid e aggiunte le descrizioni delle modalità per 86-91. (Crediti a noffycws)",
86
- "es": "(NoBl) Descripción de sistema agregada 19 para Senec.Home V3 Hybrid y Descripciones de modo agregadas para 86-91. (Créditos a noffycws)",
87
- "pl": "(NoBl) Dodano opis systemu 19 dla Senec.Home V3 Hybrid i dodano opisy trybów dla 86-91. (Kredyty dla noffycws)",
88
- "zh-cn": "(NoBl)为Senec.Home V3 Hybrid添加了系统说明19,并为86-91添加了模式说明。 (归功于noffycws)"
89
- },
90
- "1.0.12": {
91
- "en": "(NoBl) Just set 'supportCustoms' to false so it won't show up in admin custom config",
92
- "de": "(NoBl) 'supportCustoms' auf false gesetzt, damit keine benutzerdefinierte Admin-Konfig mehr angezeigt wird.",
93
- "ru": "(NoBl) Просто установите для параметра supportCustoms значение false, чтобы оно не отображалось в пользовательской конфигурации администратора.",
94
- "pt": "(NoBl) Basta definir 'supportCustoms' como false para que não apareça na configuração personalizada do administrador",
95
- "nl": "(NoBl) Stel gewoon 'supportCustoms' in op false zodat het niet wordt weergegeven in de aangepaste configuratie van de beheerder",
96
- "fr": "(NoBl) Il suffit de définir 'supportCustoms' sur false pour qu'il n'apparaisse pas dans la configuration personnalisée de l'administrateur",
97
- "it": "(NoBl) Basta impostare \"supportCustoms\" su false in modo che non venga visualizzato nella configurazione personalizzata dell'amministratore",
98
- "es": "(NoBl) Simplemente configure 'supportCustoms' en falso para que no se muestre en la configuración personalizada del administrador",
99
- "pl": "(NoBl) Po prostu ustaw „supportCustoms” na false, aby nie pojawiło się w niestandardowej konfiguracji administratora",
100
- "zh-cn": "(NoBl)只需将'supportCustoms'设置为false,这样它就不会显示在管理员自定义配置中"
101
- },
102
- "1.0.11": {
103
- "en": "(NoBl) Update to current adapter template; Added Datapoints: PV1.MPP_CUR, MPP_VOL, MPP_POWER (former: MPP_INT which is unused at this moment but does still exist); Added Datapoints (please feedback any improvements for their descriptions, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.SERIAL, BMS.START_SELFTEST, BAT1.RESET, BAT1.SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
104
- "de": "(NoBl) Update auf aktuelle Adaptervorlage; Hinzugefügte Datenpunkte: PV1.MPP_CUR, MPP_VOL, MPP_POWER (früher: MPP_INT, das derzeit nicht verwendet wird, aber noch vorhanden ist); Hinzugefügte Datenpunkte (bitte Feedback zu Verbesserungen für deren Beschreibungen, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKS, BMS.ERROR, BMS.RECOVERLOCKS SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
105
- "ru": "(NoBl) Обновление до текущего шаблона адаптера; Добавлены точки данных: PV1.MPP_CUR, MPP_VOL, MPP_POWER (ранее: MPP_INT, который в данный момент не используется, но все еще существует); Добавлены точки данных (сообщите об улучшениях их описания, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.ERROR, BMS.RECOVERLOCKED, BMS. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
106
- "pt": "(NoBl) Atualizar o modelo do adaptador atual; Pontos de dados adicionados: PV1.MPP_CUR, MPP_VOL, MPP_POWER (antigo: MPP_INT que não é usado no momento, mas ainda existe); Datapoints adicionados (por favor, indique quaisquer melhorias para as suas descrições, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.SERSTART_SAT1, BMS.SERIAL_SAT1. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
107
- "nl": "(NoBl) Update naar huidige adaptersjabloon; Datapunten toegevoegd: PV1.MPP_CUR, MPP_VOL, MPP_POWER (voorheen: MPP_INT die op dit moment ongebruikt is maar nog steeds bestaat); Datapunten toegevoegd (geef alsjeblieft feedback op eventuele verbeteringen voor hun beschrijvingen, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERETART, BATTERIJ, BMS.RECOVERLOCKED, BATTERIJ. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
108
- "fr": "(NoBl) Mise à jour du modèle d'adaptateur actuel; Points de données ajoutés: PV1.MPP_CUR, MPP_VOL, MPP_POWER (anciennement: MPP_INT qui est inutilisé en ce moment mais qui existe toujours); Points de données ajoutés (merci de nous signaler toute amélioration pour leurs descriptions, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.SERIAL, BMS.RECOVERLOCKED, BMS.SERIAL. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1. GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
109
- "it": "(NoBl) Aggiorna al modello di adattatore corrente; Datapoint aggiunti: PV1.MPP_CUR, MPP_VOL, MPP_POWER (ex: MPP_INT che al momento non è utilizzato ma esiste ancora); Datapoint aggiunti (si prega di inviare un feedback su eventuali miglioramenti per le loro descrizioni, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.ERROR, BMS.RECOVERLOCKED, BMS.ERROR, BMS.RECOVERLOCKED, BMS. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
110
- "es": "(NoBl) Actualización a la plantilla de adaptador actual; Puntos de datos agregados: PV1.MPP_CUR, MPP_VOL, MPP_POWER (antes: MPP_INT que no se usa en este momento pero aún existe); Puntos de datos agregados (por favor, envíe sus comentarios sobre las mejoras para sus descripciones, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BMS.ESTREL. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
111
- "pl": "(NoBl) Aktualizacja do bieżącego szablonu adaptera; Dodano punkty danych: PV1.MPP_CUR, MPP_VOL, MPP_POWER (dawniej: MPP_INT, który jest obecnie nieużywany, ale nadal istnieje); Dodano punkty danych (prosimy o opinie na temat ulepszeń ich opisów, ...): FEATURES.SGREADY, WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCK_TOTAL_CURRENT_BY_GRID, WIZARD.SG_READY_CURR_MODE, BMS.ERROR, BMS.RECOVERLOCKED, BATSART.SETER. SELFTEST_ACT, BAT1.SELFTEST_LIMIT, BAT1.SELFTEST_OFF, BAT1.SELFTEST_OVERALL_STATE, BAT1.SELFTEST_STATE, BAT1.SELFTEST_STEP, BAT1.SELFTEST_TIME, BAT1.SERIAL, BAT1.TRIG_ITALY_SELF, BAT1OBJ1.COMM, GRIDCONFIG.AU_SOFT_RAMP_EN, GRIDCONFIG.AU_VRR_MAX, GRIDCONFIG.AU_VRR_MIN, GRIDCONFIG.AU_VVAR_PERCENTAGE, GRIDCONFIG.AU_VVAR_P_MAX, GRIDCONFIG.AU_VVAR_P_MIN, GRIDCONFIG.AU_VVAR_VOLTAGE, GRIDCONFIG.AU_VWC_VOLTAGE, GRIDCONFIG.AU_VWD_VOLTAGE, GRIDCONFIG.CEI_SEGNALE_ESTERNO, GRIDCONFIG.VDELVFRTDISABLE, GRIDCONFIG.VDEURMSMAX10",
112
- "zh-cn": "(NoBl)更新到当前的适配器模板;添加的数据点:PV1.MPP_CUR,MPP_VOL,MPP_POWER(以前为MPP_INT,目前尚未使用,但仍然存在);添加了数据点(请反馈对其描述的任何改进,...):FEATURES.SGREADY,WIZARD.SETUP_WALLBOX_MAX_TOTAL_CURRENT_BY_GRID,WIZARD.SG_READY_CURR_MODE,BMS.ERROR,BMS.RECOVERLOCKED,BMS.SERIAL,BMS.START1.RESET。 SELFTEST_ACT,BAT1.SELFTEST_LIMIT,BAT1.SELFTEST_OFF,BAT1.SELFTEST_OVERALL_STATE,BAT1.SELFTEST_STATE,BAT1.SELFTEST_STEP,BAT1.SELFTEST_TIME,BAT1.SERIAL,BAT1.TRIG_ITALY_SEL_CONR,_FIG.CONID,GR.FIG,CON。 GRIDCONFIG.AU_VVAR_PERCENTAGE,GRIDCONFIG.AU_VVAR_P_MAX,GRIDCONFIG.AU_VVAR_P_MIN,GRIDCONFIG.AU_VVAR_VOLTAGE,GRIDCONFIG.AU_VWC_VOLTAGE,GRIDCONFIG.AU_VWD_VOLTAGE,GRIDCONFIG.CEIVSEVALEV,GRIDCONFIGV。"
113
- },
114
- "1.0.10": {
115
- "en": "(NoBl) DateType objects are stored as date again, changed WIZARD.SETUP_POWER_RULE unit to '%', changed name of STATISTIC.STAT_SUM_E_PU to \"STAT_SUM Energy PowerUnit\", changed name of STATISTIC.STAT_SUM_E_WB to \"STAT_SUM Energy Wallbox\", changed name of STATISTIC.LIVE_WB_ENERGY to \"Live Wallbox Energy\", changed name of STATISTIC.LIVE_PU_ENERGY to \"Live PowerUnit Energy\", changed name of WIZARD.PWRCFG_PEAK_PV_POWER to \"Configured Peak PV Power\", enforcing conversion of number values to Number(). Otherwise they are created as String in ioBroker (manually delete existing datapoints in ioBroker to change them!), fixed representation for temp values (off by *10), json delivers a non-value (apparently an error message produced by senec itself), (smartpran) Added variable mpp_int to high priority and changed unit it.",
116
- "de": "(NoBl) DateType-Objekte werden erneut als Datum gespeichert, die WIZARD.SETUP_POWER_RULE-Einheit in '%' geändert, der Name von STATISTIC.STAT_SUM_E_PU in \"STAT_SUM Energy PowerUnit\" geändert, der Name von STATISTIC.STAT_SUM_E_WB in \"STAT_SUM Energy Wallbox\" geändert STATISTIC.LIVE_WB_ENERGY in \"Live Wallbox Energy\", geänderter Name von STATISTIC.LIVE_PU_ENERGY in \"Live PowerUnit Energy\", geänderter Name von WIZARD.PWRCFG_PEAK_PV_POWER in \"Configured Peak PV Power\", wodurch die Konvertierung von Zahlenwerten in Number () erzwungen wird. Andernfalls werden sie in ioBroker als String erstellt (vorhandene Datenpunkte in ioBroker manuell löschen, um sie zu ändern!), Feste Darstellung für temporäre Werte (deaktiviert um * 10), json liefert einen Nichtwert (anscheinend eine von senec selbst erzeugte Fehlermeldung). (smartpran) Variable mpp_int zur hohen Priorität hinzugefügt und Einheit geändert.",
117
- "ru": "(NoBl) Объекты DateType снова сохраняются как дата, изменена единица WIZARD.SETUP_POWER_RULE на '%', изменено имя STATISTIC.STAT_SUM_E_PU на «STAT_SUM Energy PowerUnit», изменено имя STATISTIC.STAT_SUM_E_WB на «STAT_SUM Имя Energy Wallbox», изменено STATISTIC.LIVE_WB_ENERGY на «Live Wallbox Energy», измененное имя STATISTIC.LIVE_PU_ENERGY на «Live PowerUnit Energy», измененное имя WIZARD.PWRCFG_PEAK_PV_POWER на «Configured Peak PV Power», принудительное преобразование числовых значений в Number (). В противном случае они создаются как String в ioBroker (вручную удалите существующие точки данных в ioBroker, чтобы изменить их!), Фиксированное представление для временных значений (отключено на * 10), json доставляет не-значение (очевидно, сообщение об ошибке, созданное самим senec), (smartpran) Добавлена переменная mpp_int с высоким приоритетом и изменена ее единица.",
118
- "pt": "(NoBl) Objetos DateType são armazenados como data novamente, mudou a unidade WIZARD.SETUP_POWER_RULE para '%', mudou o nome de STATISTIC.STAT_SUM_E_PU para \"STAT_SUM Energy PowerUnit\", mudou o nome de STATISTIC.STAT_SUM_E_WB para \"STAT_SUM Energy Wallbox\", mudou o nome de STATISTIC.LIVE_WB_ENERGY para \"Live Wallbox Energy\", nome alterado de STATISTIC.LIVE_PU_ENERGY para \"Live PowerUnit Energy\", nome alterado de WIZARD.PWRCFG_PEAK_PV_POWER para \"Configured Peak PV Power\", impondo a conversão de valores numéricos para Number (). Caso contrário, eles são criados como String no ioBroker (exclua manualmente pontos de dados existentes no ioBroker para alterá-los!), Representação fixa para valores temporários (desativado por * 10), json fornece um não-valor (aparentemente uma mensagem de erro produzida pelo próprio senec), (smartpran) Adicionada a variável mpp_int para alta prioridade e alterada a unidade.",
119
- "nl": "(NoBl) DateType-objecten worden opnieuw als datum opgeslagen, veranderde WIZARD.SETUP_POWER_RULE-eenheid in '%', veranderde naam van STATISTIC.STAT_SUM_E_PU in \"STAT_SUM Energy PowerUnit\", veranderde naam van STATISTIC.STAT_SUM_E_WB in \"STAT_SUM Energy Wallbox\", veranderde naam van STATISTIC.STAT_SUM_E_WB in \"STAT_SUM Energy Wallbox\" STATISTIC.LIVE_WB_ENERGY in \"Live Wallbox Energy\", gewijzigde naam van STATISTIC.LIVE_PU_ENERGY in \"Live PowerUnit Energy\", gewijzigde naam van WIZARD.PWRCFG_PEAK_PV_POWER in \"Configured Peak PV Power\", waardoor conversie van getalswaarden naar Number () wordt afgedwongen. Anders worden ze gemaakt als String in ioBroker (verwijder handmatig bestaande datapunten in ioBroker om ze te wijzigen!), Vaste weergave voor tijdelijke waarden (uit door * 10), levert json een niet-waarde (blijkbaar een foutmelding geproduceerd door senec zelf), (smartpran) Variabele mpp_int toegevoegd aan hoge prioriteit en eenheid gewijzigd.",
120
- "fr": "(NoBl) Les objets DateType sont à nouveau stockés en tant que date, modification de l'unité WIZARD.SETUP_POWER_RULE en '%', changement du nom de STATISTIC.STAT_SUM_E_PU en \"STAT_SUM Energy PowerUnit\", changement de nom de STATISTIC.STAT_SUM_E_WB en \"STAT_SUM Energy Wallbox\", changement de nom de STAT_SUM Energy Wallbox \" STATISTIC.LIVE_WB_ENERGY en \"Live Wallbox Energy\", changement du nom de STATISTIC.LIVE_PU_ENERGY en \"Live PowerUnit Energy\", changement du nom de WIZARD.PWRCFG_PEAK_PV_POWER en \"Configured Peak PV Power\", imposant la conversion des valeurs numériques en Number (). Sinon, ils sont créés en tant que String dans ioBroker (supprimez manuellement les points de données existants dans ioBroker pour les modifier!), Représentation fixe des valeurs temporaires (désactivée par * 10), json délivre une non-valeur (apparemment un message d'erreur produit par senec lui-même), (smartpran) Ajout de la variable mpp_int à la haute priorité et modification de l'unité.",
121
- "it": "(NoBl) Gli oggetti DateType vengono nuovamente memorizzati come data, modificato l'unità WIZARD.SETUP_POWER_RULE in '%', cambiato il nome di STATISTIC.STAT_SUM_E_PU in \"STAT_SUM Energy PowerUnit\", cambiato il nome di STATISTIC.STAT_SUM_E_WB in \"STAT_SUM Energy Wallbox\", cambiato il nome di STATISTIC.LIVE_WB_ENERGY in \"Live Wallbox Energy\", cambiato il nome di STATISTIC.LIVE_PU_ENERGY in \"Live PowerUnit Energy\", cambiato il nome di WIZARD.PWRCFG_PEAK_PV_POWER in \"Configured Peak PV Power\", imponendo la conversione dei valori numerici in Number (). Altrimenti vengono creati come String in ioBroker (elimina manualmente i datapoint esistenti in ioBroker per cambiarli!), Rappresentazione fissa per i valori temporanei (disattivati per * 10), json fornisce un non valore (apparentemente un messaggio di errore prodotto da senec stesso), (smartpran) Aggiunta la variabile mpp_int ad alta priorità e modificata l'unità.",
122
- "es": "(NoBl) Los objetos DateType se almacenan nuevamente como fecha, se cambió la unidad WIZARD.SETUP_POWER_RULE a '%', se cambió el nombre de STATISTIC.STAT_SUM_E_PU a \"STAT_SUM Energy PowerUnit\", se cambió el nombre de STATISTIC.STAT_SUM_E_WB a \"STAT_SUM Energy Wallbox\", STATISTIC.LIVE_WB_ENERGY a \"Live Wallbox Energy\", cambió el nombre de STATISTIC.LIVE_PU_ENERGY a \"Live PowerUnit Energy\", cambió el nombre de WIZARD.PWRCFG_PEAK_PV_POWER a \"Configured Peak PV Power\", forzando la conversión de valores numéricos a Number (). De lo contrario, se crean como String en ioBroker (¡elimine manualmente los puntos de datos existentes en ioBroker para cambiarlos!), Representación fija para los valores temporales (desactivado en * 10), json entrega un valor sin valor (aparentemente un mensaje de error producido por el propio senec), (smartpran) Se agregó la variable mpp_int a alta prioridad y se cambió la unidad.",
123
- "pl": "(NoBl) Obiekty DateType są ponownie zapisywane jako data, zmieniono jednostkę WIZARD.SETUP_POWER_RULE na „%”, zmieniono nazwę STATISTIC.STAT_SUM_E_PU na „STAT_SUM Energy PowerUnit”, zmieniono nazwę STATISTIC.STAT_SUM_E_WB na „STAT_SUM”, zmieniono nazwę Energy Wallbox STATISTIC.LIVE_WB_ENERGY na „Live Wallbox Energy”, zmieniono nazwę STATISTIC.LIVE_PU_ENERGY na „Live PowerUnit Energy”, zmieniono nazwę WIZARD.PWRCFG_PEAK_PV_POWER na „Configured Peak PV Power”, wymuszając konwersję wartości liczbowych na Number (). W przeciwnym razie są tworzone jako ciąg w ioBroker (ręcznie usuń istniejące punkty danych w ioBroker, aby je zmienić!), Stała reprezentacja dla wartości tymczasowych (wyłączone o * 10), json dostarcza wartość nie będącą wartością (najwyraźniej komunikat o błędzie wygenerowany przez sam senec), (smartpran) Dodano zmienną mpp_int do wysokiego priorytetu i zmieniono jednostkę it.",
124
- "zh-cn": "(NoBl)DateType对象再次存储为日期,将WIZARD.SETUP_POWER_RULE单位更改为“%”,将STATISTIC.STAT_SUM_E_PU的名称更改为“ STAT_SUM Energy PowerUnit”,将STATISTIC.STAT_SUM_E_WB的名称更改为“ STAT_SUM Energy Wallbox”,将其名称更改为将STATISTIC.LIVE_WB_ENERGY更改为“ Live Wallbox Energy”,将STATISTIC.LIVE_PU_ENERGY的名称更改为“ Live PowerUnit Energy”,将WIZARD.PWRCFG_PEAK_PV_POWER的名称更改为“ Configured Peak PV Power”,将数值转换为Number()。否则,它们将在ioBroker中创建为String(手动删除ioBroker中的现有数据点以对其进行更改!),固定表示温度值(以* 10偏移),json传递非值(显然是senec本身产生的错误消息), (smartpran)将变量mpp_int添加到高优先级并更改了单位。"
125
- },
126
- "1.0.9": {
127
- "en": "(NoBl) IP types are shown as IP again; added datapoints for FACTORY along with more state descriptions for Battery Type, Country and System Type; added datapoints for GRIDCONFIG",
128
- "de": "(NoBl) IP Adressen werden wieder als solche angezeigt. Datenpunkte für FACTORY zusammen mit weiteren Statusbeschreibungen für Batterietyp, Land und Systemtyp hinzugefügt; Datenpunkte für GRIDCONFIG hinzugefügt",
129
- "ru": "(NoBl) Типы IP снова отображаются как IP; добавлены точки данных для FACTORY вместе с дополнительными описаниями состояния для типа батареи, страны и типа системы; добавлены точки данных для GRIDCONFIG",
130
- "pt": "Os tipos de IP (NoBl) são mostrados como IP novamente; pontos de dados adicionados para FACTORY, além de mais descrições de estado para Tipo de bateria, país e tipo de sistema; pontos de dados adicionados para GRIDCONFIG",
131
- "nl": "(NoBl) IP-typen worden opnieuw weergegeven als IP; datapunten toegevoegd voor FACTORY samen met meer statusbeschrijvingen voor batterijtype, land en systeemtype; datapunten toegevoegd voor GRIDCONFIG",
132
- "fr": "(NoBl) Les types IP sont à nouveau affichés comme IP; points de données ajoutés pour FACTORY ainsi que des descriptions d'état supplémentaires pour le type de batterie, le pays et le type de système; points de données ajoutés pour GRIDCONFIG",
133
- "it": "(NoBl) I tipi di IP vengono nuovamente visualizzati come IP; aggiunti punti dati per FABBRICA insieme a più descrizioni di stato per tipo di batteria, paese e tipo di sistema; aggiunti punti dati per GRIDCONFIG",
134
- "es": "(NoBl) Los tipos de IP se muestran como IP nuevamente; puntos de datos agregados para FACTORY junto con más descripciones de estado para Tipo de batería, País y Tipo de sistema; puntos de datos agregados para GRIDCONFIG",
135
- "pl": "(NoBl) Typy adresów IP są ponownie wyświetlane jako adresy IP; dodano punkty danych dla FACTORY wraz z dodatkowymi opisami stanów dla typu baterii, kraju i typu systemu; dodano punkty danych dla GRIDCONFIG",
136
- "zh-cn": "(NoBl)IP类型再次显示为IP;添加了FACTORY的数据点,以及有关电池类型,国家和系统类型的更多状态描述;为GRIDCONFIG添加了数据点"
137
- },
138
- "1.0.8": {
139
- "en": "(NoBl) Added more states to known states (please feedback if they need special handling (unit, special description, value modification, ...)), Bugfix in creating debug data, Unknown states are now reported in debug instead of info, Code cleanup",
140
- "de": "(NoBl) Weitere SENEC States hinzugefügt (bitte Feedback, falls eine spezielle Behandlung erforderlich ist (Einheit, spezielle Beschreibung, Wertanpassung, ...)). Bugfix beim Erzeugen von Debug-Daten. Unbekannte Zustände werden jetzt in Debug- und nicht mehr Info-Mode gemeldet. Code-Cleanup.",
141
- "ru": "(NoBl) Добавлено больше состояний в известные состояния (пожалуйста, сообщите, если они нуждаются в специальной обработке (единица, специальное описание, изменение значения, ...)), Исправлена ошибка при создании данных отладки, Неизвестные состояния теперь сообщаются в отладке вместо информации, Код уборка",
142
- "pt": "(NoBl) Adicionado mais estados aos estados conhecidos (por favor, envie um feedback se eles precisarem de tratamento especial (unidade, descrição especial, modificação de valor, ...)), Correção de bug na criação de dados de depuração, Estados desconhecidos agora são relatados em depuração em vez de informações, Código Limpar",
143
- "nl": "(NoBl) Meer staten toegevoegd aan bekende staten (geef feedback als ze speciale afhandeling nodig hebben (eenheid, speciale beschrijving, waardewijziging, ...)), Bugfix bij het maken van foutopsporingsgegevens, Onbekende staten worden nu gerapporteerd in foutopsporing in plaats van info, Code opruimen",
144
- "fr": "(NoBl) Ajout de plus d'états aux états connus (merci de nous faire part de vos commentaires s'ils ont besoin d'une manipulation particulière (unité, description spéciale, modification de valeur, ...)), Bugfix lors de la création des données de débogage, Les états inconnus sont désormais signalés dans le débogage au lieu des informations, Code nettoyer",
145
- "it": "(NoBl) Aggiunti più stati a stati noti (si prega di feedback se hanno bisogno di una gestione speciale (unità, descrizione speciale, modifica del valore, ...)), Bugfix nella creazione di dati di debug, Gli stati sconosciuti sono ora riportati nel debug invece di informazioni, Codice pulire",
146
- "es": "(NoBl) Se agregaron más estados a los estados conocidos (envíe sus comentarios si necesitan un manejo especial (unidad, descripción especial, modificación de valor, ...)), Corrección de errores al crear datos de depuración, Los estados desconocidos ahora se informan en depuración en lugar de información, Código limpiar",
147
- "pl": "(NoBl) Dodano więcej stanów do znanych stanów (proszę o informację, jeśli wymagają specjalnej obsługi (jednostka, specjalny opis, modyfikacja wartości, ...)), Bugfix w tworzeniu danych debugowania, Nieznane stany są teraz zgłaszane podczas debugowania zamiast informacji, Kod sprzątać",
148
- "zh-cn": "(NoBl)在已知状态中添加了更多状态(如果需要特殊处理(单位,特殊描述,值修改等),请提供反馈),创建调试数据时的错误修正,现在在调试中报告未知状态,而不是信息,代码清理"
149
- },
150
- "1.0.7": {
151
- "en": "(NoBl) Reading all known states from SENEC. Split states into high/low priority (heavy requesting the SENEC system renders it unable to sync with the SENEC datacenter). Updated adapter-core and testing versions. Added more state descriptions to manual. But need input on these and those that are still not documented.",
152
- "de": "(NoBl) Lesen aller bekannten Zustände aus SENEC. Aufteilen von Zuständen in hohe / niedrige Priorität (eine starke Belastung des SENEC-Systems mit Anfragen führt dazu, dass es nicht SENEC-Rechenzentrum synchronisieren kann). Adapter-Core- und Testversionen aktualisiert. Weitere Statusbeschreibungen zum Handbuch hinzugefügt. Aber weitere Informationen zu diesen benötigt, sowie zu noch nicht beschriebenen States.",
153
- "ru": "(NoBl) Чтение всех известных состояний от SENEC. Разделение состояний на высокий / низкий приоритет (тяжелый запрос системы SENEC делает невозможной синхронизацию с центром данных SENEC). Обновлены ядро адаптера и тестовые версии. Добавлено больше описаний состояний в руководство. Но нужен вклад по этим и тем, которые еще не документированы.",
154
- "pt": "(NoBl) Lendo todos os estados conhecidos do SENEC. Divida os estados em prioridade alta / baixa (a solicitação pesada do sistema SENEC torna incapaz de sincronizar com o datacenter SENEC). Versões de núcleo e adaptador atualizadas do adaptador. Adicionado mais descrições de estado ao manual. Mas é necessário contribuir com esses e aqueles que ainda não estão documentados.",
155
- "nl": "(NoBl) Het lezen van alle bekende staten van SENEC. Splitst staten in hoge / lage prioriteit (zwaar verzoek van het SENEC-systeem maakt het niet mogelijk om te synchroniseren met het SENEC-datacenter). Bijgewerkte adapter-core en testversies. Meer staatsbeschrijvingen toegevoegd aan handleiding. Maar heb input nodig over deze en degenen die nog niet zijn gedocumenteerd.",
156
- "fr": "(NoBl) Lecture de tous les états connus du SENEC. Fractionner les états en priorité haute / basse (une demande importante du système SENEC le rend incapable de se synchroniser avec le centre de données SENEC). Mise à jour du noyau d'adaptateur et des versions de test. Ajout de plus de descriptions d'état au manuel. Mais vous avez besoin de commentaires sur ceux-ci et ceux qui ne sont toujours pas documentés.",
157
- "it": "(NoBl) Lettura di tutti gli stati noti dal SENEC. Dividere gli stati in priorità alta / bassa (la pesante richiesta del sistema SENEC rende impossibile la sincronizzazione con il centro dati SENEC). Core adattatore e versioni di test aggiornati. Aggiunte ulteriori descrizioni di stato al manuale. Ma hanno bisogno di input su questi e quelli che non sono ancora documentati.",
158
- "es": "(NoBl) Lectura de todos los estados conocidos de SENEC. Divida los estados en alta / baja prioridad (la gran solicitud del sistema SENEC hace que no pueda sincronizarse con el centro de datos SENEC). Adaptador actualizado núcleo y versiones de prueba. Se agregaron más descripciones de estado al manual. Pero necesita información sobre estos y aquellos que aún no están documentados.",
159
- "pl": "(NoBl) Czytanie wszystkich znanych stanów z SENEC. Podziel stany na wysoki / niski priorytet (ciężkie żądanie systemu SENEC uniemożliwia synchronizację z centrum danych SENEC). Zaktualizowano wersje rdzenia adaptera i testowania. Dodano więcej opisów stanów do instrukcji. Ale potrzebujesz wkładu w te i te, które wciąż nie są udokumentowane.",
160
- "zh-cn": "(NoBl)从SENEC读取所有已知状态。将状态分为高/低优先级(繁重的SENEC系统请求使其无法与SENEC数据中心同步)。更新了适配器核心和测试版本。在手册中增加了更多状态描述。但是需要这些以及尚未记录的内容的输入。"
161
- },
162
- "1.0.6": {
163
- "en": "(NoBl) Added missing state descriptions, Moved senec states and state attributes to libs",
164
- "de": "(NoBl) Fehlende Statusbeschreibungen, verschobene Senec-Status und Statusattribute zu libs hinzugefügt",
165
- "ru": "(NoBl) Добавлены отсутствующие описания состояний, перемещенные состояния senec и атрибуты состояний в библиотеки",
166
- "pt": "(NoBl) Adicionadas descrições de estado ausentes, estados senec movidos e atributos de estado para libs",
167
- "nl": "(NoBl) Ontbrekende statusbeschrijvingen, Verplaatste senec-staten en statusattributen aan bibliotheken toegevoegd",
168
- "fr": "(NoBl) Ajout des descriptions d'états manquants, des états senec déplacés et des attributs d'état aux bibliothèques",
169
- "it": "(NoBl) Aggiunte descrizioni di stati mancanti, stati senec spostati e attributi di stato nelle librerie",
170
- "es": "(NoBl) Se agregaron descripciones de estado faltantes, Senec movidos y atributos de estado a libs",
171
- "pl": "(NoBl) Dodano brakujące opisy stanów, przeniesiono stany senec i atrybuty stanu do bibliotek",
172
- "zh-cn": "(NoBl)添加了缺少的状态描述,将senec状态和状态属性移至库"
173
- },
174
- "1.0.5": {
175
- "en": "(NoBl) Added States for: Energy: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Wizard: APPLICATION_VERSION, INTERFACE_VERSION; Readme and Documentation (EN exists, now) updated; Changed behavior for unknown values completely. They will now be stored as string plus prefixed with \"REPORT TO DEV:\" so users can easily report back what needs updating. ; added handling for \"st_\" values in json; added additional configuration options; changed retry-behaviour in case of connection issues, ...",
176
- "de": "(NoBl) Hinzugefügte Zustände für: Energie: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Assistent: APPLICATION_VERSION, INTERFACE_VERSION; Readme und Dokumentation (EN existiert, jetzt) aktualisiert; Verhalten für unbekannte Werte komplett geändert. Sie werden jetzt als Zeichenfolge mit dem Präfix \"REPORT TO DEV:\" gespeichert, sodass Benutzer problemlos zurückmelden können, was aktualisiert werden muss. ;; Behandlung für \"st_\" -Werte in json hinzugefügt; zusätzliche Konfigurationsoptionen hinzugefügt; Wiederholtes Wiederholungsverhalten bei Verbindungsproblemen, ...",
177
- "ru": "(NoBl) Добавлены состояния для: Энергия: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Wizard: APPLICATION_VERSION, INTERFACE_VERSION; Readme и документация (EN существует, сейчас) обновлены; Полностью изменено поведение для неизвестных значений. Теперь они будут храниться в виде строки с префиксом «REPORT TO DEV:», чтобы пользователи могли легко сообщить, что нужно обновить. ; добавлена обработка значений \"st_\" в json; добавлены дополнительные параметры конфигурации; изменил повторное поведение в случае проблем с подключением, ...",
178
- "pt": "(NoBl) Estados adicionados para: Energia: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Assistente: APPLICATION_VERSION, INTERFACE_VERSION; Leiame e documentação (EN existe, agora) atualizado; Comportamento alterado para valores desconhecidos completamente. Agora eles serão armazenados como string e prefixados com \"REPORT TO DEV:\", para que os usuários possam relatar facilmente o que precisa ser atualizado. ; manipulação adicionada para valores \"st_\" em json; adicionadas opções de configuração adicionais; comportamento de nova tentativa alterado em caso de problemas de conexão, ...",
179
- "nl": "(NoBl) Toegevoegde staten voor: Energie: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Wizard: APPLICATION_VERSION, INTERFACE_VERSION; Leesmij en documentatie (EN bestaat, nu) bijgewerkt; Gedrag voor onbekende waarden volledig gewijzigd. Ze worden nu opgeslagen als tekenreeks plus voorafgegaan door \"RAPPORT AAN DEV:\" zodat gebruikers gemakkelijk kunnen rapporteren wat moet worden bijgewerkt. ; verwerking voor \"st_\" -waarden in json toegevoegd; extra configuratie-opties toegevoegd; gewijzigd retry-gedrag in geval van verbindingsproblemen, ...",
180
- "fr": "(NoBl) États ajoutés pour: Énergie: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Assistant: APPLICATION_VERSION, INTERFACE_VERSION; Readme et documentation (EN existe, maintenant) mis à jour; Comportement modifié pour les valeurs inconnues complètement. Ils seront désormais stockés sous forme de chaîne plus préfixée de \"REPORT TO DEV:\" afin que les utilisateurs puissent facilement signaler ce qui doit être mis à jour. ; ajout de la gestion des valeurs \"st_\" dans json; ajout d'options de configuration supplémentaires; modification du comportement de nouvelle tentative en cas de problèmes de connexion, ...",
181
- "it": "(NoBl) Stati aggiunti per: Energia: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Aggiornamento_sys: NPU_VER, NPU_IMAGE_VERSION, Wizard: APPLICATION_VERSION, INTERFACE_VERSION; Leggimi e documentazione (EN esiste, ora) aggiornati; Comportamento modificato per valori sconosciuti completamente. Ora saranno memorizzati come stringa più preceduto da \"REPORT TO DEV:\" in modo che gli utenti possano facilmente riportare ciò che deve essere aggiornato. ; aggiunta la gestione per i valori \"st_\" in json; aggiunte ulteriori opzioni di configurazione; modifica del comportamento dei tentativi in caso di problemi di connessione, ...",
182
- "es": "(NoBl) Estados agregados para: Energía: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Asistente: APPLICATION_VERSION, INTERFACE_VERSION; Léame y documentación (EN existe, ahora) actualizado; Se modificó completamente el comportamiento de los valores desconocidos. Ahora se almacenarán como una cadena más con el prefijo \"REPORT TO DEV:\" para que los usuarios puedan informar fácilmente sobre lo que necesita actualizarse. ; manejo agregado para valores \"st_\" en json; opciones de configuración adicionales agregadas; cambio de comportamiento de reintento en caso de problemas de conexión, ...",
183
- "pl": "(NoBl) Dodano Stany dla: Energii: GUI_BAT_DATA_VOLTAGE, GUI_BAT_DATA_CURRENT, STAT_HOURS_OF_OPERATION; Sys_update: NPU_VER, NPU_IMAGE_VERSION, Wizard: APPLICATION_VERSION, INTERFACE_VERSION; Readme and Documentation (EN istnieje, teraz) zaktualizowane; Całkowicie zmieniono zachowanie nieznanych wartości. Będą teraz przechowywane jako ciąg plus przedrostek „REPORT TO DEV:”, aby użytkownicy mogli łatwo zgłaszać, co wymaga aktualizacji. ; dodano obsługę wartości „st_” w json; dodano dodatkowe opcje konfiguracji; zmieniono zachowanie ponownych prób w przypadku problemów z połączeniem ...",
184
- "zh-cn": "(NoBl)为以下项添加了状态:能源:GUI_BAT_DATA_VOLTAGE,GUI_BAT_DATA_CURRENT,STAT_HOURS_OF_OPERATION; Sys_update:NPU_VER,NPU_IMAGE_VERSION,向导:APPLICATION_VERSION,INTERFACE_VERSION;自述文件和文档(现已存在EN)已更新;完全更改了未知值的行为。现在,它们将以字符串形式存储,并以“ REPORT TO DEV:”为前缀,因此用户可以轻松地报告需要更新的内容。 ;在json中添加了对“ st_”值的处理;添加了其他配置选项;在出现连接问题的情况下更改了重试行为,..."
185
- },
186
- "1.0.4": {
187
- "en": "(NoBl) Repo URL updated",
188
- "de": "(NoBl) Repo-URL aktualisiert",
189
- "ru": "(NoBl) URL репо обновлен",
190
- "pt": "(NoBl) URL do repositório atualizado",
191
- "nl": "(NoBl) Repo-URL bijgewerkt",
192
- "fr": "(NoBl) URL de dépôt mise à jour",
193
- "it": "(NoBl) URL Repo aggiornato",
194
- "es": "(NoBl) URL del repositorio actualizada",
195
- "pl": "(NoBl) Zaktualizowano adres URL repozytorium",
196
- "zh-cn": "(NoBl)回购网址已更新"
197
- },
198
- "1.0.3": {
199
- "en": "(NoBl) link to german documentation added",
200
- "de": "(NoBl) Link zur deutschen Dokumentation hinzugefügt",
201
- "ru": "(NoBl) добавлена ссылка на немецкую документацию",
202
- "pt": "(NoBl) Link para a documentação alemã adicionada",
203
- "nl": "(NoBl) link naar Duitse documentatie toegevoegd",
204
- "fr": "(NoBl) lien vers la documentation allemande ajouté",
205
- "it": "(NoBl) Aggiunto il link alla documentazione tedesca",
206
- "es": "(NoBl) Enlace a la documentación alemana agregada",
207
- "pl": "(NoBl) Dodano link do niemieckiej dokumentacji",
208
- "zh-cn": "(NoBl)链接到德语文档"
209
- },
210
- "1.0.2": {
211
- "en": "(NoBl) added missing status codes, added status code to status message, added states for wallboxes and battery modules",
212
- "de": "(NoBl) fehlende Statuscodes hinzugefügt, Statuscode zur Statusmeldung hinzugefügt, Status für Wallboxen und Batteriemodule hinzugefügt",
213
- "ru": "(NoBl) добавлены отсутствующие коды состояния, добавлен код состояния в сообщение о состоянии, добавлены состояния для настенных ящиков и модулей батарей",
214
- "pt": "(NoBl) adicionou códigos de status ausentes, adicionou código de status à mensagem de status, adicionou estados para caixas de parede e módulos de bateria",
215
- "nl": "(NoBl) ontbrekende statuscodes toegevoegd, statuscode toegevoegd aan statusbericht, statussen toegevoegd voor wallboxes en batterijmodules",
216
- "fr": "(NoBl) ajout de codes d'état manquants, ajout d'un code d'état au message d'état, ajout d'états pour les boîtiers muraux et les modules de batterie",
217
- "it": "(NoBl) ha aggiunto codici di stato mancanti, aggiunto il codice di stato al messaggio di stato, stati aggiunti per wallbox e moduli batteria",
218
- "es": "(NoBl) agregó códigos de estado faltantes, código de estado agregado al mensaje de estado, estados agregados para wallboxes y módulos de batería",
219
- "pl": "(NoBl) dodano brakujące kody stanu, dodano kod statusu do komunikatu o stanie, dodano stany dla wallboxów i modułów akumulatorów",
220
- "zh-cn": "(NoBl)添加了丢失的状态代码,向状态消息添加了状态代码,添加了壁挂箱和电池模块的状态"
221
- },
222
- "1.0.1": {
223
- "en": "(NoBl) Updated readme",
224
- "de": "(NoBl) Readme aktualisiert",
225
- "ru": "(NoBl) Обновленный файл readme",
226
- "pt": "(NoBl) Leia-me atualizado",
227
- "nl": "(NoBl) Bijgewerkt leesmij",
228
- "fr": "(NoBl) Readme mis à jour",
229
- "it": "(NoBl) Leggimi aggiornato",
230
- "es": "(NoBl) Léame actualizado",
231
- "pl": "(NoBl) Zaktualizowano plik Readme",
232
- "zh-cn": "(NoBl)更新了自述文件"
233
- },
234
- "1.0.0": {
235
- "en": "(NoBl) Initial release version",
236
- "de": "(NoBl) Erstversion",
237
- "ru": "(NoBl) Начальная версия выпуска",
238
- "pt": "(NoBl) Versão de lançamento inicial",
239
- "nl": "(NoBl) Eerste versie",
240
- "fr": "(NoBl) Version de sortie initiale",
241
- "it": "(NoBl) Versione di rilascio iniziale",
242
- "es": "(NoBl) Versión de lanzamiento inicial",
243
- "pl": "(NoBl) Pierwsza wersja wydania",
244
- "zh-cn": " (NoBl) 初始发行版本"
245
- }
65
+ }
246
66
  },
247
67
  "docs": {
248
68
  "en": "docs/en/README.md",
@@ -288,6 +108,23 @@
288
108
  "compact": true,
289
109
  "materialize": true,
290
110
  "materializeTab": false,
111
+ "adminTab": {
112
+ "singleton": true,
113
+ "name": {
114
+ "en": "Senec (JavaScript)",
115
+ "de": "Senec (JavaScript)",
116
+ "ru": "Senec (JavaScript)",
117
+ "pt": "Senec (JavaScript)",
118
+ "nl": "Senec (JavaScript)",
119
+ "fr": "Senec (JavaScript)",
120
+ "it": "Senec (JavaScript)",
121
+ "es": "Senec (JavaScript)",
122
+ "pl": "Senec (JavaScript)",
123
+ "zh-cn": "塞内克 (JavaScript)"
124
+ },
125
+ "link": "",
126
+ "fa-icon": "info"
127
+ },
291
128
  "supportCustoms": false,
292
129
  "dependencies": [
293
130
  {
@@ -1,19 +1,19 @@
1
1
  // This file extends the AdapterConfig type from "@types/iobroker"
2
- // using the actual properties present in io-package.json
3
- // in order to provide typings for adapter.config properties
4
-
5
- import { native } from '../io-package.json';
6
-
7
- type _AdapterConfig = typeof native;
8
-
9
- // Augment the globally declared type ioBroker.AdapterConfig
10
- declare global {
11
- namespace ioBroker {
12
- interface AdapterConfig extends _AdapterConfig {
13
- // Do not enter anything here!
14
- }
15
- }
16
- }
17
-
18
- // this is required so the above AdapterConfig is found by TypeScript / type checking
19
- export {};
2
+ // using the actual properties present in io-package.json
3
+ // in order to provide typings for adapter.config properties
4
+
5
+ import { native } from '../io-package.json';
6
+
7
+ type _AdapterConfig = typeof native;
8
+
9
+ // Augment the globally declared type ioBroker.AdapterConfig
10
+ declare global {
11
+ namespace ioBroker {
12
+ interface AdapterConfig extends _AdapterConfig {
13
+ // Do not enter anything here!
14
+ }
15
+ }
16
+ }
17
+
18
+ // this is required so the above AdapterConfig is found by TypeScript / type checking
19
+ export {};
package/lib/tools.js CHANGED
@@ -1,99 +1,100 @@
1
1
  const axios = require('axios').default;
2
-
3
- /**
4
- * Tests whether the given variable is a real object and not an Array
5
- * @param {any} it The variable to test
6
- * @returns {it is Record<string, any>}
7
- */
8
- function isObject(it) {
9
- // This is necessary because:
10
- // typeof null === 'object'
11
- // typeof [] === 'object'
12
- // [] instanceof Object === true
13
- return Object.prototype.toString.call(it) === '[object Object]';
14
- }
15
-
16
- /**
17
- * Tests whether the given variable is really an Array
18
- * @param {any} it The variable to test
19
- * @returns {it is any[]}
20
- */
21
- function isArray(it) {
22
- if (typeof Array.isArray === 'function') return Array.isArray(it);
23
- return Object.prototype.toString.call(it) === '[object Array]';
24
- }
25
-
26
- /**
27
- * Translates text to the target language. Automatically chooses the right translation API.
28
- * @param {string} text The text to translate
29
- * @param {string} targetLang The target languate
30
- * @param {string} [yandexApiKey] The yandex API key. You can create one for free at https://translate.yandex.com/developers
31
- * @returns {Promise<string>}
32
- */
33
- async function translateText(text, targetLang, yandexApiKey) {
34
- if (targetLang === 'en') {
35
- return text;
36
- } else if (!text) {
37
- return '';
38
- }
39
- if (yandexApiKey) {
40
- return translateYandex(text, targetLang, yandexApiKey);
41
- } else {
42
- return translateGoogle(text, targetLang);
43
- }
44
- }
45
-
46
- /**
47
- * Translates text with Yandex API
48
- * @param {string} text The text to translate
49
- * @param {string} targetLang The target languate
50
- * @param {string} apiKey The yandex API key. You can create one for free at https://translate.yandex.com/developers
51
- * @returns {Promise<string>}
52
- */
53
- async function translateYandex(text, targetLang, apiKey) {
54
- if (targetLang === 'zh-cn') {
55
- targetLang = 'zh';
56
- }
57
- try {
58
- const url = `https://translate.yandex.net/api/v1.5/tr.json/translate?key=${apiKey}&text=${encodeURIComponent(text)}&lang=en-${targetLang}`;
59
- const response = await axios({url, timeout: 15000});
60
- if (response.data && response.data.text && isArray(response.data.text)) {
61
- return response.data.text[0];
62
- }
63
- throw new Error('Invalid response for translate request');
64
- } catch (e) {
65
- throw new Error(`Could not translate to "${targetLang}": ${e}`);
66
- }
67
- }
68
-
69
- /**
70
- * Translates text with Google API
71
- * @param {string} text The text to translate
72
- * @param {string} targetLang The target languate
73
- * @returns {Promise<string>}
74
- */
75
- async function translateGoogle(text, targetLang) {
76
- try {
77
- const url = `http://translate.googleapis.com/translate_a/single?client=gtx&sl=en&tl=${targetLang}&dt=t&q=${encodeURIComponent(text)}&ie=UTF-8&oe=UTF-8`;
78
- const response = await axios({url, timeout: 15000});
79
- if (isArray(response.data)) {
80
- // we got a valid response
81
- return response.data[0][0][0];
82
- }
83
- throw new Error('Invalid response for translate request');
84
- } catch (e) {
85
- if (e.response && e.response.status === 429) {
86
- throw new Error(
87
- `Could not translate to "${targetLang}": Rate-limited by Google Translate`
88
- );
89
- } else {
90
- throw new Error(`Could not translate to "${targetLang}": ${e}`);
91
- }
92
- }
93
- }
94
-
95
- module.exports = {
96
- isArray,
97
- isObject,
98
- translateText
99
- };
2
+
3
+ /**
4
+ * Tests whether the given variable is a real object and not an Array
5
+ * @param {any} it The variable to test
6
+ * @returns {it is Record<string, any>}
7
+ */
8
+ function isObject(it) {
9
+ // This is necessary because:
10
+ // typeof null === 'object'
11
+ // typeof [] === 'object'
12
+ // [] instanceof Object === true
13
+ return Object.prototype.toString.call(it) === '[object Object]';
14
+ }
15
+
16
+ /**
17
+ * Tests whether the given variable is really an Array
18
+ * @param {any} it The variable to test
19
+ * @returns {it is any[]}
20
+ */
21
+ function isArray(it) {
22
+ if (typeof Array.isArray === 'function') return Array.isArray(it);
23
+ return Object.prototype.toString.call(it) === '[object Array]';
24
+ }
25
+
26
+ /**
27
+ * Translates text to the target language. Automatically chooses the right translation API.
28
+ * @param {string} text The text to translate
29
+ * @param {string} targetLang The target languate
30
+ * @param {string} [yandexApiKey] The yandex API key. You can create one for free at https://translate.yandex.com/developers
31
+ * @returns {Promise<string>}
32
+ */
33
+ async function translateText(text, targetLang, yandexApiKey) {
34
+ if (targetLang === 'en') {
35
+ return text;
36
+ } else if (!text) {
37
+ return '';
38
+ }
39
+ if (yandexApiKey) {
40
+ return translateYandex(text, targetLang, yandexApiKey);
41
+ } else {
42
+ return translateGoogle(text, targetLang);
43
+ }
44
+ }
45
+
46
+ /**
47
+ * Translates text with Yandex API
48
+ * @param {string} text The text to translate
49
+ * @param {string} targetLang The target languate
50
+ * @param {string} apiKey The yandex API key. You can create one for free at https://translate.yandex.com/developers
51
+ * @returns {Promise<string>}
52
+ */
53
+ async function translateYandex(text, targetLang, apiKey) {
54
+ if (targetLang === 'zh-cn') {
55
+ targetLang = 'zh';
56
+ }
57
+ try {
58
+ const url = `https://translate.yandex.net/api/v1.5/tr.json/translate?key=${apiKey}&text=${encodeURIComponent(text)}&lang=en-${targetLang}`;
59
+ /** @type {any} */
60
+ const response = await axios({url, timeout: 15000});
61
+ if (response.data && response.data.text && isArray(response.data.text)) {
62
+ return response.data.text[0];
63
+ }
64
+ throw new Error('Invalid response for translate request');
65
+ } catch (e) {
66
+ throw new Error(`Could not translate to "${targetLang}": ${e}`);
67
+ }
68
+ }
69
+
70
+ /**
71
+ * Translates text with Google API
72
+ * @param {string} text The text to translate
73
+ * @param {string} targetLang The target languate
74
+ * @returns {Promise<string>}
75
+ */
76
+ async function translateGoogle(text, targetLang) {
77
+ try {
78
+ const url = `http://translate.googleapis.com/translate_a/single?client=gtx&sl=en&tl=${targetLang}&dt=t&q=${encodeURIComponent(text)}&ie=UTF-8&oe=UTF-8`;
79
+ const response = await axios({url, timeout: 15000});
80
+ if (isArray(response.data)) {
81
+ // we got a valid response
82
+ return response.data[0][0][0];
83
+ }
84
+ throw new Error('Invalid response for translate request');
85
+ } catch (e) {
86
+ if (e.response && e.response.status === 429) {
87
+ throw new Error(
88
+ `Could not translate to "${targetLang}": Rate-limited by Google Translate`
89
+ );
90
+ } else {
91
+ throw new Error(`Could not translate to "${targetLang}": ${e}`);
92
+ }
93
+ }
94
+ }
95
+
96
+ module.exports = {
97
+ isArray,
98
+ isObject,
99
+ translateText
100
+ };
package/main.js CHANGED
@@ -357,7 +357,11 @@ class Senec extends utils.Adapter {
357
357
  await this.doState(key + ".ref" + day, curDay, descRefDay, unitRefDay, false);
358
358
  await this.doState(key + yesterday, valToday, descYesterday, unitYesterday, false);
359
359
  await this.doState(key + today, 0, descToday, unitToday, false);
360
- await this.doState(key + refValue, valCur, descRef, unitRef, true);
360
+ if (valRef < valCur) {
361
+ await this.doState(key + refValue, valCur, descRef, unitRef, true);
362
+ } else {
363
+ this.log.warning("Not updating reference value for: " + name.substring(10) + "! Old RefValue (" + valRef + ") >= new RefValue (" + valCur + "). Impossible situation. If this is intentional, please update via admin!");
364
+ }
361
365
  } else {
362
366
  this.log.debug("Updating " + day +" value for: " + name.substring(10));
363
367
  // update today's value