iobroker.solarviewdatareader 1.0.7 → 1.0.8
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 +1 -1
- package/README.md +5 -4
- package/admin/index_m.html +92 -93
- package/admin/jsonConfig.json +167 -0
- package/admin/words.js +38 -41
- package/io-package.json +29 -25
- package/package.json +17 -14
- package/lib/tools.js +0 -91
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2019-
|
|
3
|
+
Copyright (c) 2019-2024 Achim Fürhoff <achim.fuerhoff@outlook.de>
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
package/README.md
CHANGED
|
@@ -64,6 +64,10 @@ TKK= Temperature inverter
|
|
|
64
64
|
Placeholder for the next version (at the beginning of the line):
|
|
65
65
|
### __WORK IN PROGRESS__
|
|
66
66
|
-->
|
|
67
|
+
### 1.0.8 (2024-01-18)
|
|
68
|
+
* (afuerhoff) dependencies updated
|
|
69
|
+
* (afuerhoff) translations updated
|
|
70
|
+
|
|
67
71
|
### 1.0.7 (2022-12-21)
|
|
68
72
|
* (afuerhoff) dependencies updated
|
|
69
73
|
|
|
@@ -81,13 +85,10 @@ TKK= Temperature inverter
|
|
|
81
85
|
* (afuerhoff) dependencies updated
|
|
82
86
|
* (afuerhoff) issue #20 fixed
|
|
83
87
|
|
|
84
|
-
### 1.0.3 (2021-12-08)
|
|
85
|
-
* (afuerhoff) dependencies updated
|
|
86
|
-
|
|
87
88
|
## License
|
|
88
89
|
MIT License
|
|
89
90
|
|
|
90
|
-
Copyright (c) 2019-
|
|
91
|
+
Copyright (c) 2019-2024 Achim Fürhoff <achim.fuerhoff@outlook.de>
|
|
91
92
|
|
|
92
93
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
93
94
|
of this software and associated documentation files (the "Software"), to deal
|
package/admin/index_m.html
CHANGED
|
@@ -91,109 +91,108 @@
|
|
|
91
91
|
</div>
|
|
92
92
|
<!-- Put your content here -->
|
|
93
93
|
<div class="row">
|
|
94
|
-
<div class="col s12
|
|
95
|
-
<div class="card
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
<span class="tooltiptext translate">Please enter the IP-Address from your SolarView data logger</span>
|
|
103
|
-
</div>
|
|
104
|
-
<div class="col s2 input-field tooltip">
|
|
105
|
-
<input type="text" class="value" maxlength="5" id="port"/>
|
|
106
|
-
<label for="port" class="translate">Port</label>
|
|
107
|
-
<span class="tooltiptext translate">Please enter the port</span>
|
|
108
|
-
</div>
|
|
109
|
-
<div class="col s3 input-field tooltip">
|
|
110
|
-
<input type="checkbox" class="value" id="d0converter"/>
|
|
111
|
-
<label for="d0converter" class="translate">d0-converter</label>
|
|
112
|
-
<span class="tooltiptext translate">Please enter if you have a d0-converter</span>
|
|
113
|
-
</div>
|
|
114
|
-
</div>
|
|
115
|
-
<div class="row">
|
|
116
|
-
<div class="col s4 input-field tooltip">
|
|
117
|
-
<input type="checkbox" class="value" id="scm0"/>
|
|
118
|
-
<label for="scm0" class="translate">Self consumption meter sum</label>
|
|
119
|
-
<span class="tooltiptext translate">Please check if you use the self consumption meter sum</span>
|
|
94
|
+
<div class="col s12">
|
|
95
|
+
<div class="card">
|
|
96
|
+
<div class="card-content">
|
|
97
|
+
<div class="row">
|
|
98
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
99
|
+
<input type="text" class="value" maxlength="15" id="ipaddress"/>
|
|
100
|
+
<label for="ipaddress" class="translate">IP-Address</label>
|
|
101
|
+
<span class="tooltiptext translate">Please enter the IP-Address from your SolarView data logger</span>
|
|
120
102
|
</div>
|
|
121
|
-
<div class="col
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
103
|
+
<div class="col s3 m2 l1 input-field tooltip">
|
|
104
|
+
<input type="text" class="value" maxlength="5" id="port"/>
|
|
105
|
+
<label for="port" class="translate">Port</label>
|
|
106
|
+
<span class="tooltiptext translate">Please enter the port</span>
|
|
125
107
|
</div>
|
|
126
|
-
<div class="col
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
108
|
+
<div class="col s6 m3 l2 input-field tooltip">
|
|
109
|
+
<input type="checkbox" class="value" id="d0converter"/>
|
|
110
|
+
<label for="d0converter" class="translate">d0-converter</label>
|
|
111
|
+
<span class="tooltiptext translate">Please enter if you have a d0-converter</span>
|
|
130
112
|
</div>
|
|
131
|
-
<div class="col s4 input-field tooltip">
|
|
132
|
-
<input type="checkbox" class="value" id="scm3"/>
|
|
133
|
-
<label for="scm3" class="translate">Self consumption meter 3</label>
|
|
134
|
-
<span class="tooltiptext translate">Please check if self consumption meter 3 is available</span>
|
|
135
113
|
</div>
|
|
136
|
-
<div class="
|
|
137
|
-
<
|
|
138
|
-
<
|
|
139
|
-
<
|
|
140
|
-
|
|
114
|
+
<div class="row">
|
|
115
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
116
|
+
<input type="checkbox" class="value" id="scm0"/>
|
|
117
|
+
<label for="scm0" class="translate">Self consumption meter sum</label>
|
|
118
|
+
<span class="tooltiptext translate">Please check if you use the self consumption meter sum</span>
|
|
119
|
+
</div>
|
|
120
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
121
|
+
<input type="checkbox" class="value" id="scm1"/>
|
|
122
|
+
<label for="scm1" class="translate">Self consumption meter 1</label>
|
|
123
|
+
<span class="tooltiptext translate">Please check if self consumption meter 1 is available</span>
|
|
124
|
+
</div>
|
|
125
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
126
|
+
<input type="checkbox" class="value" id="scm2"/>
|
|
127
|
+
<label for="scm2" class="translate">Self consumption meter 2</label>
|
|
128
|
+
<span class="tooltiptext translate">Please check if self consumption meter 2 is available</span>
|
|
129
|
+
</div>
|
|
130
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
131
|
+
<input type="checkbox" class="value" id="scm3"/>
|
|
132
|
+
<label for="scm3" class="translate">Self consumption meter 3</label>
|
|
133
|
+
<span class="tooltiptext translate">Please check if self consumption meter 3 is available</span>
|
|
134
|
+
</div>
|
|
135
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
136
|
+
<input type="checkbox" class="value" id="scm4"/>
|
|
137
|
+
<label for="scm4" class="translate">Self consumption meter 4</label>
|
|
138
|
+
<span class="tooltiptext translate">Please check if self consumption meter 4 is available</span>
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
<div class="row">
|
|
142
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
143
|
+
<input type="checkbox" class="value" id="pvi1"/>
|
|
144
|
+
<label for="pvi1" class="translate">Inverter 1</label>
|
|
145
|
+
<span class="tooltiptext translate">Please check if inverter 1 available</span>
|
|
141
146
|
</div>
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
<span class="tooltiptext translate">Please check if inverter 1 available</span>
|
|
147
|
-
</div>
|
|
148
|
-
<div class="col s3 input-field tooltip">
|
|
149
|
-
<input type="checkbox" class="value" id="pvi2"/>
|
|
150
|
-
<label for="pvi2" class="translate">Inverter 2</label>
|
|
151
|
-
<span class="tooltiptext translate">Please check if inverter 2 available</span>
|
|
152
|
-
</div>
|
|
153
|
-
<div class="col s3 input-field tooltip">
|
|
154
|
-
<input type="checkbox" class="value" id="pvi3"/>
|
|
155
|
-
<label for="pvi3" class="translate">Inverter 3</label>
|
|
156
|
-
<span class="tooltiptext translate">Please check if inverter 3 available</span>
|
|
157
|
-
</div>
|
|
158
|
-
<div class="col s3 input-field tooltip">
|
|
159
|
-
<input type="checkbox" class="value" id="pvi4"/>
|
|
160
|
-
<label for="pvi4" class="translate">Inverter 4</label>
|
|
161
|
-
<span class="tooltiptext translate">Please check if inverter 4 available</span>
|
|
162
|
-
</div>
|
|
163
|
-
</div>
|
|
164
|
-
<div class="row">
|
|
165
|
-
<div class="col s2 input-field tooltip">
|
|
166
|
-
<input type="number" class="value validate" min="10" max="3600" id="intervalVal" />
|
|
167
|
-
<label for="intervalVal" class="translate">polling interval in seconds</label>
|
|
168
|
-
<span class="tooltiptext translate">Here you can define the polling interval [between 10 to 3600 seconds]</span>
|
|
169
|
-
</div>
|
|
170
|
-
<div class="col s2 input-field tooltip">
|
|
171
|
-
<input type="text" class="timepicker value" id="intervalstart"/>
|
|
172
|
-
<label for="intervalstart" class="translate">Interval start</label>
|
|
173
|
-
<span class="tooltiptext translate">Please enter the interval start (e.g. 00:00)</span>
|
|
147
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
148
|
+
<input type="checkbox" class="value" id="pvi2"/>
|
|
149
|
+
<label for="pvi2" class="translate">Inverter 2</label>
|
|
150
|
+
<span class="tooltiptext translate">Please check if inverter 2 available</span>
|
|
174
151
|
</div>
|
|
175
|
-
<div class="col
|
|
176
|
-
<input type="
|
|
177
|
-
<label for="
|
|
178
|
-
<span class="tooltiptext translate">Please
|
|
152
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
153
|
+
<input type="checkbox" class="value" id="pvi3"/>
|
|
154
|
+
<label for="pvi3" class="translate">Inverter 3</label>
|
|
155
|
+
<span class="tooltiptext translate">Please check if inverter 3 available</span>
|
|
179
156
|
</div>
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
<
|
|
184
|
-
<label for="setCCU" class="translate">Set system variable CCU</label>
|
|
185
|
-
<span class="tooltiptext translate">Please check if you want to set a system variable in the CCU</span>
|
|
157
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
158
|
+
<input type="checkbox" class="value" id="pvi4"/>
|
|
159
|
+
<label for="pvi4" class="translate">Inverter 4</label>
|
|
160
|
+
<span class="tooltiptext translate">Please check if inverter 4 available</span>
|
|
186
161
|
</div>
|
|
187
|
-
<div class="col s4 input-field tooltip">
|
|
188
|
-
<input type="text" class="value" id="CCUSystemV"/>
|
|
189
|
-
<label for="CCUSystemV" class="translate">System variable</label>
|
|
190
|
-
<span class="tooltiptext translate">System variable e.g. hm-rega.0.12345</span>
|
|
191
162
|
</div>
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
163
|
+
<div class="row">
|
|
164
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
165
|
+
<input type="number" class="value validate" min="10" max="3600" id="intervalVal" />
|
|
166
|
+
<label for="intervalVal" class="translate">polling interval in seconds</label>
|
|
167
|
+
<span class="tooltiptext translate">Here you can define the polling interval [between 10 to 3600 seconds]</span>
|
|
168
|
+
</div>
|
|
169
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
170
|
+
<input type="text" class="timepicker value" id="intervalstart"/>
|
|
171
|
+
<label for="intervalstart" class="translate">Interval start</label>
|
|
172
|
+
<span class="tooltiptext translate">Please enter the interval start (e.g. 00:00)</span>
|
|
173
|
+
</div>
|
|
174
|
+
<div class="col s6 m4 l2 input-field tooltip">
|
|
175
|
+
<input type="text" class="timepicker value" id="intervalend"/>
|
|
176
|
+
<label for="intervalend" class="translate">Interval end</label>
|
|
177
|
+
<span class="tooltiptext translate">Please enter the interval end (e.g. 23:59)</span>
|
|
178
|
+
</div>
|
|
179
|
+
</div>
|
|
180
|
+
<div class="row">
|
|
181
|
+
<div class="col s12 m6 l3 input-field tooltip">
|
|
182
|
+
<input type="checkbox" class="value" id="setCCU"/>
|
|
183
|
+
<label for="setCCU" class="translate">Set system variable CCU</label>
|
|
184
|
+
<span class="tooltiptext translate">Please check if you want to set a system variable in the CCU</span>
|
|
185
|
+
</div>
|
|
186
|
+
<div class="col s8 m6 l3 input-field tooltip">
|
|
187
|
+
<input type="text" class="value" id="CCUSystemV"/>
|
|
188
|
+
<label for="CCUSystemV" class="translate">System variable</label>
|
|
189
|
+
<span class="tooltiptext translate">System variable e.g. hm-rega.0.12345</span>
|
|
190
|
+
</div>
|
|
191
|
+
</div>
|
|
192
|
+
</div>
|
|
193
|
+
</div>
|
|
195
194
|
</div>
|
|
196
|
-
</div>
|
|
195
|
+
</div>
|
|
197
196
|
</div>
|
|
198
197
|
</div>
|
|
199
198
|
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
{
|
|
2
|
+
"type": "tabs",
|
|
3
|
+
"i18n": true,
|
|
4
|
+
"items": {
|
|
5
|
+
"tab-main": {
|
|
6
|
+
"type": "panel",
|
|
7
|
+
"label": "Main settings",
|
|
8
|
+
"items": {
|
|
9
|
+
"ipaddress": {
|
|
10
|
+
"type": "text",
|
|
11
|
+
"label": "IP-Address",
|
|
12
|
+
"tooltip": "Please enter the IP-Address from your SolarView data logger",
|
|
13
|
+
"sm": 8,
|
|
14
|
+
"md": 6,
|
|
15
|
+
"lg": 3
|
|
16
|
+
},
|
|
17
|
+
"port": {
|
|
18
|
+
"type": "port",
|
|
19
|
+
"min": 1,
|
|
20
|
+
"max": 65565,
|
|
21
|
+
"label": "Port",
|
|
22
|
+
"tooltip": "Please enter the port",
|
|
23
|
+
"sm": 4,
|
|
24
|
+
"md": 3,
|
|
25
|
+
"lg": 2
|
|
26
|
+
},
|
|
27
|
+
"d0converter": {
|
|
28
|
+
"newLine": true,
|
|
29
|
+
"type": "checkbox",
|
|
30
|
+
"label": "d0-converter",
|
|
31
|
+
"tooltip": "Please enter if you have a d0-converter",
|
|
32
|
+
"sm": 6,
|
|
33
|
+
"md": 4,
|
|
34
|
+
"lg": 2
|
|
35
|
+
},
|
|
36
|
+
"scm0": {
|
|
37
|
+
"type": "checkbox",
|
|
38
|
+
"label": "Self consumption meter sum",
|
|
39
|
+
"tooltip": "Please check if you use the self consumption meter sum",
|
|
40
|
+
"sm": 12,
|
|
41
|
+
"md": 6,
|
|
42
|
+
"lg": 2
|
|
43
|
+
},
|
|
44
|
+
"scm1": {
|
|
45
|
+
"newLine": true,
|
|
46
|
+
"type": "checkbox",
|
|
47
|
+
"label": "Self consumption meter 1",
|
|
48
|
+
"tooltip": "Please check if self consumption meter 1 is available",
|
|
49
|
+
"sm": 12,
|
|
50
|
+
"md": 6,
|
|
51
|
+
"lg": 2
|
|
52
|
+
},
|
|
53
|
+
"scm2": {
|
|
54
|
+
"type": "checkbox",
|
|
55
|
+
"label": "Self consumption meter 2",
|
|
56
|
+
"tooltip": "Please check if self consumption meter 2 is available",
|
|
57
|
+
"sm": 12,
|
|
58
|
+
"md": 6,
|
|
59
|
+
"lg": 2
|
|
60
|
+
},
|
|
61
|
+
"scm3": {
|
|
62
|
+
"newLine": true,
|
|
63
|
+
"type": "checkbox",
|
|
64
|
+
"label": "Self consumption meter 3",
|
|
65
|
+
"tooltip": "Please check if self consumption meter 3 is available",
|
|
66
|
+
"sm": 12,
|
|
67
|
+
"md": 6,
|
|
68
|
+
"lg": 2
|
|
69
|
+
},
|
|
70
|
+
"scm4": {
|
|
71
|
+
"type": "checkbox",
|
|
72
|
+
"label": "Self consumption meter 4",
|
|
73
|
+
"tooltip": "Please check if self consumption meter 4 is available",
|
|
74
|
+
"sm": 12,
|
|
75
|
+
"md": 6,
|
|
76
|
+
"lg": 2
|
|
77
|
+
},
|
|
78
|
+
"pvi1": {
|
|
79
|
+
"newLine": true,
|
|
80
|
+
"type": "checkbox",
|
|
81
|
+
"label": "Inverter 1",
|
|
82
|
+
"tooltip": "Please check if inverter 1 available",
|
|
83
|
+
"sm": 12,
|
|
84
|
+
"md": 6,
|
|
85
|
+
"lg": 2
|
|
86
|
+
},
|
|
87
|
+
"pvi2": {
|
|
88
|
+
"type": "checkbox",
|
|
89
|
+
"label": "Inverter 2",
|
|
90
|
+
"tooltip": "Please check if inverter 2 available",
|
|
91
|
+
"sm": 12,
|
|
92
|
+
"md": 6,
|
|
93
|
+
"lg": 2
|
|
94
|
+
},
|
|
95
|
+
"pvi3": {
|
|
96
|
+
"newLine": true,
|
|
97
|
+
"type": "checkbox",
|
|
98
|
+
"label": "Inverter 3",
|
|
99
|
+
"tooltip": "Please check if inverter 3 available",
|
|
100
|
+
"sm": 12,
|
|
101
|
+
"md": 6,
|
|
102
|
+
"lg": 2
|
|
103
|
+
},
|
|
104
|
+
"pvi4": {
|
|
105
|
+
"type": "checkbox",
|
|
106
|
+
"label": "Inverter 4",
|
|
107
|
+
"tooltip": "Please check if inverter 4 available",
|
|
108
|
+
"sm": 12,
|
|
109
|
+
"md": 6,
|
|
110
|
+
"lg": 2
|
|
111
|
+
},
|
|
112
|
+
"intervalVal": {
|
|
113
|
+
"newLine": true,
|
|
114
|
+
"type": "number",
|
|
115
|
+
"label": "polling interval in seconds",
|
|
116
|
+
"help": "sec",
|
|
117
|
+
"tooltip": "Here you can define the polling interval [between 10 to 3600 seconds]",
|
|
118
|
+
"sm": 12,
|
|
119
|
+
"md": 6,
|
|
120
|
+
"lg": 2
|
|
121
|
+
},
|
|
122
|
+
"intervalstart": {
|
|
123
|
+
"type": "timePicker",
|
|
124
|
+
"label": "Interval start",
|
|
125
|
+
"tooltip": "Please enter the interval start (e.g. 00:00)",
|
|
126
|
+
"format": "HH:mm",
|
|
127
|
+
"sm": 12,
|
|
128
|
+
"md": 6,
|
|
129
|
+
"lg": 2
|
|
130
|
+
},
|
|
131
|
+
"intervalend": {
|
|
132
|
+
"type": "timePicker",
|
|
133
|
+
"label": "Interval end",
|
|
134
|
+
"tooltip": "Please enter the interval end (e.g. 23:59)",
|
|
135
|
+
"sm": 12,
|
|
136
|
+
"md": 6,
|
|
137
|
+
"lg": 2
|
|
138
|
+
},
|
|
139
|
+
"timePicker1val": {
|
|
140
|
+
"type": "pattern",
|
|
141
|
+
"pattern": "stored value is ${data.intervalstart}",
|
|
142
|
+
"sm":4,
|
|
143
|
+
"md":4,
|
|
144
|
+
"lg":4,
|
|
145
|
+
"xs":4
|
|
146
|
+
},
|
|
147
|
+
"setCCU": {
|
|
148
|
+
"newLine": true,
|
|
149
|
+
"type": "checkbox",
|
|
150
|
+
"label": "Set system variable CCU",
|
|
151
|
+
"tooltip": "Please check if you want to set a system variable in the CCU",
|
|
152
|
+
"sm": 6,
|
|
153
|
+
"md": 4,
|
|
154
|
+
"lg": 2
|
|
155
|
+
},
|
|
156
|
+
"CCUSystemV": {
|
|
157
|
+
"type": "text",
|
|
158
|
+
"label": "System variable",
|
|
159
|
+
"tooltip": "System variable e.g. hm-rega.0.12345",
|
|
160
|
+
"sm": 6,
|
|
161
|
+
"md": 4,
|
|
162
|
+
"lg": 2
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
package/admin/words.js
CHANGED
|
@@ -8,45 +8,42 @@
|
|
|
8
8
|
'use strict';
|
|
9
9
|
|
|
10
10
|
systemDictionary = {
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"Interval": {
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
"Inverter
|
|
19
|
-
"Inverter
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"Please check if inverter
|
|
23
|
-
"Please check if inverter
|
|
24
|
-
"Please check if
|
|
25
|
-
"Please check if
|
|
26
|
-
"Please check if self consumption meter
|
|
27
|
-
"Please check if self consumption meter
|
|
28
|
-
"Please check if self consumption meter
|
|
29
|
-
"Please check if
|
|
30
|
-
"Please
|
|
31
|
-
"Please
|
|
32
|
-
"Please enter
|
|
33
|
-
"Please enter the
|
|
34
|
-
"Please enter the
|
|
35
|
-
"Please enter the interval (
|
|
36
|
-
"Please enter the
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"Self consumption meter
|
|
40
|
-
"Self consumption meter
|
|
41
|
-
"Self consumption meter
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"solarviewdatareader adapter settings": { "en": "Adapter settings for solarviewdatareader", "de": "Adaptereinstellungen für solarviewdatareader", "ru": "Настройки адаптера для solarviewdatareader", "pt": "Configurações do adaptador para solarviewdatareader", "nl": "Adapterinstellingen voor solarviewdatareader", "fr": "Paramètres d'adaptateur pour solarviewdatareader", "it": "Impostazioni dell'adattatore per solarviewdatareader", "es": "Ajustes del adaptador para solarviewdatareader", "pl": "Ustawienia adaptera dla solarviewdatareader", "zh-cn": "solarviewdatareader的适配器设置"},
|
|
50
|
-
"Here you can define the polling interval [between 10 to 3600 seconds]": {"en": "Here you can define the polling interval [between 10 to 3600 seconds]", "de": "Hier können Sie das Polling-Intervall festlegen [zwischen 10 bis 3600 Sekunden]", "ru": "Здесь вы можете определить интервал опроса [от 10 до 3600 секунд]", "pt": "Aqui você pode definir o intervalo de sondagem [entre 10 a 3600 segundos]", "nl": "Hier kunt u het polling-interval definiëren [tussen 10 en 3600 seconden]", "fr": "Ici, vous pouvez définir l'intervalle d'interrogation [entre 10 et 3600 secondes]", "it": "Qui puoi definire l'intervallo di polling [tra 10 e 3600 secondi]", "es": "Aquí puede definir el intervalo de sondeo [entre 10 y 3600 segundos]", "pl": "Tutaj możesz zdefiniować interwał odpytywania [od 10 do 3600 sekund]", "zh-cn": "在这里您可以定义轮询间隔 [10 到 3600 秒之间]"},
|
|
51
|
-
"polling interval in seconds": { "en": "polling interval in seconds", "de": "Abfrageintervall in Sekunden", "ru": "интервал опроса в секундах", "pt": "intervalo de sondagem em segundos", "nl": "polling-interval in seconden", "fr": "intervalle d'interrogation en secondes", "it": "intervallo di polling in secondi", "es": "intervalo de sondeo en segundos", "pl": "interwał odpytywania w sekundach", "zh-cn": "以秒为单位的轮询间隔"},
|
|
11
|
+
"Here you can define the polling interval [between 10 to 3600 seconds]": {"en": "Here you can define the polling interval [between 10 to 3600 seconds]", "de": "Hier können Sie das Polling-Intervall festlegen [zwischen 10 bis 3600 Sekunden]", "ru": "Здесь вы можете определить интервал опроса [от 10 до 3600 секунд]", "pt": "Aqui você pode definir o intervalo de sondagem [entre 10 a 3600 segundos]", "nl": "Hier kunt u het polling-interval definiëren [tussen 10 en 3600 seconden]", "fr": "Ici, vous pouvez définir l'intervalle d'interrogation [entre 10 et 3600 secondes]", "it": "Qui puoi definire l'intervallo di polling [tra 10 e 3600 secondi]", "es": "Aquí puede definir el intervalo de sondeo [entre 10 y 3600 segundos]", "pl": "Tutaj możesz zdefiniować interwał odpytywania [od 10 do 3600 sekund]", "uk": "Тут ви можете визначити інтервал опитування [від 10 до 3600 секунд]", "zh-cn": "在这里您可以定义轮询间隔 [10 到 3600 秒之间]"},
|
|
12
|
+
"IP-Address": { "en": "IP-Address", "de": "IP Adresse", "ru": "Айпи адрес", "pt": "Endereço de IP", "nl": "IP adres", "fr": "Adresse IP", "it": "Indirizzo IP", "es": "Dirección IP", "pl": "Adres IP", "uk": "IP-адреса", "zh-cn": "IP地址"},
|
|
13
|
+
"Interval": { "en": "Interval", "de": "Intervall", "ru": "интервал", "pt": "Intervalo", "nl": "Interval", "fr": "Intervalle", "it": "Intervallo", "es": "Intervalo", "pl": "Interwał", "uk": "Інтервал", "zh-cn": "间隔"},
|
|
14
|
+
"Interval end": { "en": "Interval end", "de": "Intervallende", "ru": "Конец интервала", "pt": "Fim do intervalo", "nl": "Interval einde", "fr": "Fin d'intervalle", "it": "Intervallo di fine", "es": "Fin de intervalo", "pl": "Koniec interwału", "uk": "Кінець інтервалу", "zh-cn": "间隔结束"},
|
|
15
|
+
"Interval start": { "en": "Interval start", "de": "Intervallstart", "ru": "Интервальный старт", "pt": "Início do intervalo", "nl": "Interval start", "fr": "Début d'intervalle", "it": "Inizio intervallo", "es": "Inicio de intervalo", "pl": "Początek przerwy", "uk": "Інтервальний початок", "zh-cn": "间隔开始"},
|
|
16
|
+
"Inverter 1": { "en": "Inverter 1", "de": "Wechselrichter 1", "ru": "Инвертор 1", "pt": "Inversor 1", "nl": "Omvormer 1", "fr": "Onduleur 1", "it": "Inverter 1", "es": "Inversor 1", "pl": "Falownik 1", "uk": "Інвертор 1", "zh-cn": "逆变器1"},
|
|
17
|
+
"Inverter 2": { "en": "Inverter 2", "de": "Wechselrichter 2", "ru": "Инвертор 2", "pt": "Inversor 2", "nl": "Omvormer 2", "fr": "Onduleur 2", "it": "Inverter 2", "es": "Inversor 2", "pl": "Falownik 2", "uk": "Інвертор 2", "zh-cn": "逆变器2"},
|
|
18
|
+
"Inverter 3": { "en": "Inverter 3", "de": "Wechselrichter 3", "ru": "Инвертор 3", "pt": "Inversor 3", "nl": "Omvormer 3", "fr": "Onduleur 3", "it": "Inverter 3", "es": "Inversor 3", "pl": "Falownik 3", "uk": "Інвертор 3", "zh-cn": "逆变器3"},
|
|
19
|
+
"Inverter 4": { "en": "Inverter 4", "de": "Wechselrichter 4", "ru": "Инвертор 4", "pt": "Inversor 4", "nl": "Omvormer 4", "fr": "Onduleur 4", "it": "Inverter 4", "es": "Inversor 4", "pl": "Falownik 4", "uk": "Інвертор 4", "zh-cn": "逆变器4"},
|
|
20
|
+
"Please check if inverter 1 available": { "en": "Please check if inverter 1 available", "de": "Bitte prüfen Sie, ob Wechselrichter 1 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли инвертор 1", "pt": "Por favor, verifique se o inversor 1 está disponível", "nl": "Controleer of inverter 1 beschikbaar is", "fr": "Veuillez vérifier si le convertisseur 1 est disponible", "it": "Si prega di verificare se l'inverter 1 è disponibile", "es": "Por favor, compruebe si el inversor 1 disponible", "pl": "Sprawdź, czy dostępny jest falownik 1", "uk": "Будь ласка, перевірте, чи доступний інвертор 1", "zh-cn": "请检查逆变器1是否可用"},
|
|
21
|
+
"Please check if inverter 2 available": { "en": "Please check if inverter 2 available", "de": "Bitte prüfen Sie, ob Wechselrichter 2 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли инвертор 2", "pt": "Por favor, verifique se o inversor 2 está disponível", "nl": "Controleer of inverter 2 beschikbaar is", "fr": "Veuillez vérifier si l'onduleur 2 est disponible", "it": "Si prega di verificare se l'inverter 2 è disponibile", "es": "Por favor, compruebe si el inversor 2 está disponible", "pl": "Sprawdź, czy dostępny jest falownik 2", "uk": "Будь ласка, перевірте, чи доступний інвертор 2", "zh-cn": "请检查逆变器2是否可用"},
|
|
22
|
+
"Please check if inverter 3 available": { "en": "Please check if inverter 3 available", "de": "Bitte prüfen Sie, ob Wechselrichter 3 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли инвертор 3", "pt": "Por favor, verifique se o inversor 3 está disponível", "nl": "Controleer of inverter 3 beschikbaar is", "fr": "Veuillez vérifier si l'onduleur 3 est disponible", "it": "Si prega di verificare se l'inverter 3 è disponibile", "es": "Por favor verifica si el inversor 3 está disponible.", "pl": "Sprawdź, czy dostępny jest falownik 3", "uk": "Будь ласка, перевірте, чи доступний інвертор 3", "zh-cn": "请检查逆变器3是否可用"},
|
|
23
|
+
"Please check if inverter 4 available": { "en": "Please check if inverter 4 available", "de": "Bitte prüfen Sie, ob Wechselrichter 4 verfügbar ist", "ru": "Пожалуйста, проверьте, если инвертор 4 доступен", "pt": "Por favor, verifique se o inversor 4 está disponível", "nl": "Controleer of omvormer 4 beschikbaar is", "fr": "Veuillez vérifier si l'inverseur 4 est disponible", "it": "Si prega di verificare se l'inverter 4 è disponibile", "es": "Por favor, compruebe si el inversor 4 está disponible.", "pl": "Sprawdź, czy dostępny jest falownik 4", "uk": "Перевірте наявність інвертора 4", "zh-cn": "请检查逆变器4是否可用"},
|
|
24
|
+
"Please check if self consumption meter 1 is available": {"en": "Please check if self consumption meter 1 is available", "de": "Bitte prüfen Sie, ob der Eigenverbrauchsmesser 1 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли счетчик 1", "pt": "Verifique se o medidor de autoconsumo 1 está disponível", "nl": "Controleer of meter 1 voor eigen verbruik beschikbaar is", "fr": "Veuillez vérifier si le compteur d'autoconsommation 1 est disponible", "it": "Si prega di verificare se il contatore di autoconsumo 1 è disponibile", "es": "Compruebe si el medidor de autoconsumo 1 está disponible", "pl": "Sprawdź, czy miernik zużycia własnego 1 jest dostępny", "uk": "Будь ласка, перевірте, чи доступний лічильник власного споживання 1", "zh-cn": "请检查自用电表1是否可用"},
|
|
25
|
+
"Please check if self consumption meter 2 is available": {"en": "Please check if self consumption meter 2 is available", "de": "Bitte prüfen Sie, ob der Eigenverbrauchsmesser 2 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли счетчик потребления 2", "pt": "Verifique se o medidor de autoconsumo 2 está disponível", "nl": "Controleer of meter 2 voor eigen verbruik beschikbaar is", "fr": "Veuillez vérifier si le compteur d'autoconsommation 2 est disponible", "it": "Si prega di verificare se il misuratore di autoconsumo 2 è disponibile", "es": "Compruebe si el medidor de autoconsumo 2 está disponible", "pl": "Sprawdź, czy miernik zużycia własnego 2 jest dostępny", "uk": "Будь ласка, перевірте, чи доступний лічильник власного споживання 2", "zh-cn": "请检查自用电表2是否可用"},
|
|
26
|
+
"Please check if self consumption meter 3 is available": {"en": "Please check if self consumption meter 3 is available", "de": "Bitte prüfen Sie, ob der Eigenverbrauchsmesser 3 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли счетчик 3", "pt": "Verifique se o medidor de autoconsumo 3 está disponível", "nl": "Controleer of meter 3 voor eigen verbruik beschikbaar is", "fr": "Veuillez vérifier si le compteur d'autoconsommation 3 est disponible", "it": "Si prega di verificare se il misuratore di autoconsumo 3 è disponibile", "es": "Compruebe si el medidor de autoconsumo 3 está disponible", "pl": "Sprawdź, czy miernik zużycia własnego 3 jest dostępny", "uk": "Будь ласка, перевірте, чи доступний лічильник власного споживання 3", "zh-cn": "请检查自用电表3是否可用"},
|
|
27
|
+
"Please check if self consumption meter 4 is available": {"en": "Please check if self consumption meter 4 is available", "de": "Bitte prüfen Sie, ob der Eigenverbrauchsmesser 4 verfügbar ist", "ru": "Пожалуйста, проверьте, доступен ли счетчик 4", "pt": "Verifique se o medidor de autoconsumo 4 está disponível", "nl": "Controleer of zelfverbruiksmeter 4 beschikbaar is", "fr": "Veuillez vérifier si le compteur d'autoconsommation 4 est disponible", "it": "Verificare se è disponibile il contatore di autoconsumo 4", "es": "Compruebe si el medidor de autoconsumo 4 está disponible", "pl": "Sprawdź, czy miernik zużycia własnego 4 jest dostępny", "uk": "Будь ласка, перевірте, чи доступний лічильник власного споживання 4", "zh-cn": "请检查自用电度表4是否可用"},
|
|
28
|
+
"Please check if you use the self consumption meter sum": {"en": "Please check if you use the self consumption meter sum", "de": "Bitte überprüfen Sie, ob Sie die Selbstverbrauchsmessersumme verwenden", "ru": "Пожалуйста, проверьте, если вы используете сумму счетчика самопотребления", "pt": "Verifique se você usa a soma do medidor de autoconsumo", "nl": "Controleer of u de som van de meter voor eigen verbruik gebruikt", "fr": "Veuillez vérifier si vous utilisez la somme du compteur d'autoconsommation", "it": "Si prega di verificare se si utilizza la somma del contatore di autoconsumo", "es": "Compruebe si usa la suma del medidor de autoconsumo", "pl": "Sprawdź, czy używasz sumy licznika zużycia własnego", "uk": "Будь ласка, перевірте, чи використовуєте ви суму лічильника власного споживання", "zh-cn": "请检查您是否使用自费表的总和"},
|
|
29
|
+
"Please check if you want to set a system variable in the CCU": {"en": "Please check if you want to set a system variable in the CCU", "de": "Bitte prüfen Sie, ob Sie eine Systemvariable in der CCU setzen möchten", "ru": "Проверьте, хотите ли вы установить системную переменную в CCU", "pt": "Por favor, verifique se você deseja definir uma variável de sistema no CCU", "nl": "Controleer of u een systeemvariabele in de CCU wilt instellen", "fr": "Veuillez vérifier si vous souhaitez définir une variable système dans la CCU.", "it": "Si prega di verificare se si desidera impostare una variabile di sistema nella CCU", "es": "Por favor, compruebe si desea establecer una variable de sistema en la CCU", "pl": "Sprawdź, czy chcesz ustawić zmienną systemową w CCU", "uk": "Перевірте, чи хочете ви встановити системну змінну в CCU", "zh-cn": "请检查是否要在CCU中设置系统变量"},
|
|
30
|
+
"Please enter if you have a d0-converter": { "en": "Please enter if you have a d0-converter", "de": "Bitte geben Sie an, ob Sie einen d0-Konverter haben", "ru": "Пожалуйста, введите, если у вас есть d0-конвертер", "pt": "Por favor, digite se você tem um conversor de d0", "nl": "Voer alstublieft in als u een d0-converter heeft", "fr": "S'il vous plaît entrer si vous avez un convertisseur d0", "it": "Si prega di inserire se si dispone di un convertitore d0", "es": "Por favor ingresa si tienes un convertidor d0", "pl": "Wprowadź, jeśli masz konwerter d0", "uk": "Будь ласка, введіть, якщо у вас є d0-конвертер", "zh-cn": "如果您有d0转换器,请输入"},
|
|
31
|
+
"Please enter the CCU system variable": { "en": "Please enter the CCU system variable", "de": "Bitte geben Sie die CCU-Systemvariable ein", "ru": "Пожалуйста, введите системную переменную CCU", "pt": "Por favor insira a variável do sistema CCU", "nl": "Voer de CCU-systeemvariabele in", "fr": "Veuillez entrer la variable système CCU", "it": "Si prega di inserire la variabile di sistema CCU", "es": "Por favor ingrese la variable de sistema CCU", "pl": "Wprowadź zmienną systemową CCU", "uk": "Введіть системну змінну CCU", "zh-cn": "请输入CCU系统变量"},
|
|
32
|
+
"Please enter the IP-Address from your SolarView data logger": {"en": "Please enter the IP-Address from your SolarView data logger", "de": "Bitte geben Sie die IP-Adresse Ihres SolarView-Datenloggers ein", "ru": "Пожалуйста, введите IP-адрес из вашего регистратора данных SolarView", "pt": "Por favor, digite o endereço IP do seu data logger SolarView", "nl": "Voer het IP-adres in vanuit uw SolarView datalogger", "fr": "Veuillez saisir l'adresse IP de votre enregistreur de données SolarView.", "it": "Inserisci l'indirizzo IP dal tuo data logger SolarView", "es": "Introduzca la dirección IP de su registrador de datos SolarView", "pl": "Wprowadź adres IP z rejestratora danych SolarView", "uk": "Будь ласка, введіть IP-адресу з вашого реєстратора даних SolarView", "zh-cn": "请从SolarView数据记录器输入IP地址"},
|
|
33
|
+
"Please enter the interval (cron format)": { "en": "Please enter the interval (cron format)", "de": "Bitte geben Sie das Intervall ein (Cron-Format)", "ru": "Пожалуйста, введите интервал (cron формат)", "pt": "Por favor insira o intervalo (formato cron)", "nl": "Voer het interval in (cron-formaat)", "fr": "S'il vous plaît entrer l'intervalle (format cron)", "it": "Si prega di inserire l'intervallo (formato cron)", "es": "Por favor ingrese el intervalo (formato cron)", "pl": "Wprowadź interwał (format cron)", "uk": "Будь ласка, введіть інтервал (формат cron)", "zh-cn": "请输入间隔(cron格式)"},
|
|
34
|
+
"Please enter the interval end (e.g. 23:59)": { "en": "Please enter the interval end (e.g. 23:59)", "de": "Bitte geben Sie das Intervallende ein (z. B. 23:59).", "ru": "Введите конец интервала (например, 23:59)", "pt": "Insira o fim do intervalo (por exemplo, 23:59)", "nl": "Voer het einde van het interval in (bijv. 23:59)", "fr": "Veuillez saisir la fin de l'intervalle (par exemple 23:59)", "it": "Inserisci la fine dell'intervallo (ad es. 23:59)", "es": "Ingrese el final del intervalo (por ejemplo, 23:59)", "pl": "Wprowadź koniec interwału (np. 23:59)", "uk": "Будь ласка, введіть кінець інтервалу (наприклад, 23:59)", "zh-cn": "请输入间隔结束时间(例如23:59)"},
|
|
35
|
+
"Please enter the interval start (e.g. 00:00)": { "en": "Please enter the interval start (e.g. 00:00)", "de": "Bitte geben Sie den Intervallstart ein (z. B. 00:00).", "ru": "Введите начало интервала (например, 00:00)", "pt": "Insira o início do intervalo (por exemplo, 00:00)", "nl": "Voer de intervalstart in (bijv. 00:00)", "fr": "Veuillez saisir le début de l'intervalle (par exemple 00:00)", "it": "Si prega di inserire l'inizio dell'intervallo (es. 00:00)", "es": "Introduzca el inicio del intervalo (p. Ej., 00:00)", "pl": "Wprowadź początek interwału (np. 00:00)", "uk": "Будь ласка, введіть початок інтервалу (наприклад, 00:00)", "zh-cn": "请输入间隔开始时间(例如00:00)"},
|
|
36
|
+
"Please enter the port": { "en": "Please enter the port", "de": "Bitte geben Sie den Port ein", "ru": "Пожалуйста, введите порт", "pt": "Por favor, insira o porto", "nl": "Voer de poort in", "fr": "S'il vous plaît entrer le port", "it": "Si prega di inserire il porto", "es": "Por favor ingrese el puerto", "pl": "Proszę wejść do portu", "uk": "Будь ласка, введіть порт", "zh-cn": "请输入端口"},
|
|
37
|
+
"Self consumption meter 1": { "en": "Self consumption meter 1", "de": "Eigenverbrauchsmesser 1", "ru": "Счетчик собственного потребления 1", "pt": "Medidor de auto consumo 1", "nl": "Eigen verbruik meter 1", "fr": "Compteur d'autoconsommation 1", "it": "Indicatore di autoconsumo 1", "es": "Medidor de autoconsumo 1", "pl": "Licznik zużycia własnego 1", "uk": "Лічильник власного споживання 1", "zh-cn": "自用电表1"},
|
|
38
|
+
"Self consumption meter 2": { "en": "Self consumption meter 2", "de": "Eigenverbrauchsmesser 2", "ru": "Счетчик собственного потребления 2", "pt": "Medidor de autoconsumo 2", "nl": "Eigen verbruik meter 2", "fr": "Compteur d'autoconsommation 2", "it": "Contatore di autoconsumo 2", "es": "Medidor de autoconsumo 2", "pl": "Licznik zużycia własnego 2", "uk": "Лічильник власного споживання 2", "zh-cn": "自用电表2"},
|
|
39
|
+
"Self consumption meter 3": { "en": "Self consumption meter 3", "de": "Eigenverbrauchsmesser 3", "ru": "Счетчик собственного потребления 3", "pt": "Medidor de autoconsumo 3", "nl": "Eigen verbruik meter 3", "fr": "Compteur d'autoconsommation 3", "it": "Indicatore di autoconsumo 3", "es": "Medidor de autoconsumo 3", "pl": "Licznik zużycia własnego 3", "uk": "Лічильник власного споживання 3", "zh-cn": "自用电度表3"},
|
|
40
|
+
"Self consumption meter 4": { "en": "Self consumption meter 4", "de": "Eigenverbrauchsmesser 4", "ru": "Счетчик собственного потребления 4", "pt": "Medidor de autoconsumo 4", "nl": "Eigen verbruik meter 4", "fr": "Compteur d'autoconsommation 4", "it": "Indicatore di autoconsumo 4", "es": "Medidor de autoconsumo 4", "pl": "Licznik zużycia własnego 4", "uk": "Лічильник власного споживання 4", "zh-cn": "自用电度表4"},
|
|
41
|
+
"Self consumption meter sum": { "en": "Self consumption meter sum", "de": "Eigenverbrauchsmesser Summe", "ru": "Сумма счетчика собственного потребления", "pt": "Soma de medidor de autoconsumo", "nl": "Som van het eigen verbruik", "fr": "Somme du compteur d'autoconsommation", "it": "Somma dei contatori di autoconsumo", "es": "Suma del medidor de autoconsumo", "pl": "Suma licznika zużycia własnego", "uk": "Сума лічильника власного споживання", "zh-cn": "自耗表总和"},
|
|
42
|
+
"Set system variable CCU": { "en": "Set system variable CCU", "de": "Systemvariable CCU setzen", "ru": "Установить системную переменную CCU", "pt": "Definir CCU da variável do sistema", "nl": "Stel systeemvariabele CCU in", "fr": "Définir la variable système CCU", "it": "Imposta CCU variabile di sistema", "es": "Establecer variable de sistema CCU", "pl": "Ustaw zmienną systemową CCU", "uk": "Встановити системну змінну CCU", "zh-cn": "设置系统变量CCU"},
|
|
43
|
+
"SolarView Logger": { "en": "SolarView Logger", "de": "SolarView Logger", "ru": "SolarView Logger", "pt": "Logger SolarView", "nl": "SolarView Logger", "fr": "Enregistreur SolarView", "it": "Logger di SolarView", "es": "Registrador SolarView", "pl": "SolarView Logger", "uk": "SolarView Logger", "zh-cn": "SolarView记录器"},
|
|
44
|
+
"SolarView is a data logger for several inverter. Further informations can be get over the link.": {"en": "SolarView is a data logger for several inverter. Further informations can be get over the link.", "de": "SolarView ist ein Datenlogger für mehrere Wechselrichter. ", "ru": "SolarView - это регистратор данных для нескольких инверторов. ", "pt": "O SolarView é um data logger para vários inversores. ", "nl": "SolarView is een datalogger voor verschillende omvormers. ", "fr": "SolarView est un enregistreur de données pour plusieurs onduleurs. ", "it": "SolarView è un data logger per diversi inverter. ", "es": "SolarView es un registrador de datos para varios inversores. ", "pl": "SolarView to rejestrator danych dla kilku falowników. ", "uk": "SolarView — це реєстратор даних для кількох інверторів. Додаткову інформацію можна отримати за посиланням.", "zh-cn": "SolarView是多个逆变器的数据记录器。"},
|
|
45
|
+
"System variable": { "en": "System variable", "de": "Systemvariable", "ru": "Системная переменная", "pt": "Variável do sistema", "nl": "Systeemvariabele", "fr": "Variable système", "it": "Variabile di sistema", "es": "Variable del sistema", "pl": "Zmienna systemowa", "uk": "Системна змінна", "zh-cn": "系统变量"},
|
|
46
|
+
"polling interval in seconds": { "en": "polling interval in seconds", "de": "Abfrageintervall in Sekunden", "ru": "интервал опроса в секундах", "pt": "intervalo de sondagem em segundos", "nl": "polling-interval in seconden", "fr": "intervalle d'interrogation en secondes", "it": "intervallo di polling in secondi", "es": "intervalo de sondeo en segundos", "pl": "interwał odpytywania w sekundach", "uk": "інтервал опитування в секундах", "zh-cn": "以秒为单位的轮询间隔"},
|
|
47
|
+
"solarviewdatareader adapter settings": { "en": "Adapter settings for solarviewdatareader", "de": "Adaptereinstellungen für solarviewdatareader", "ru": "Настройки адаптера для solarviewdatareader", "pt": "Configurações do adaptador para solarviewdatareader", "nl": "Adapterinstellingen voor solarviewdatareader", "fr": "Paramètres d'adaptateur pour solarviewdatareader", "it": "Impostazioni dell'adattatore per solarviewdatareader", "es": "Ajustes del adaptador para solarviewdatareader", "pl": "Ustawienia adaptera dla solarviewdatareader", "uk": "Параметри адаптера для solarviewdatareader", "zh-cn": "solarviewdatareader的适配器设置"},
|
|
48
|
+
"System variable e.g. hm-rega.0.12345": { "en": "System variable e.g. hm-rega.0.12345", "de": "Systemvariable z.B. hm-rega.0.12345", "ru": "Системная переменная, например. хм-rega.0.12345", "pt": "Variável do sistema, por ex. hm-rega.0.12345", "nl": "Systeemvariabele, b.v. hm-rega.0.12345", "fr": "Variable système, par ex. hm-rega.0.12345", "it": "Variabile di sistema ad es. hm-rega.0.12345", "es": "Variable del sistema, p. hm-rega.0.12345", "pl": "Zmienna systemowa, np. hm-rega.0.12345", "uk": "Системна змінна напр. hm-rega.0.12345", "zh-cn": "系统变量例如hm-rega.0.12345"},
|
|
52
49
|
};
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "solarviewdatareader",
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.8",
|
|
5
5
|
"news": {
|
|
6
|
+
"1.0.8": {
|
|
7
|
+
"en": "dependencies updated\ntranslations updated",
|
|
8
|
+
"de": "aktualisierte abhängigkeiten\nübersetzungen aktualisiert",
|
|
9
|
+
"ru": "обновленная информация о зависимостях\nобновленные переводы",
|
|
10
|
+
"pt": "dependências atualizadas\ntraduções atualizadas",
|
|
11
|
+
"nl": "afhankelijkheden bijgewerkt\nvertalingen bijgewerkt",
|
|
12
|
+
"fr": "dépendances mises à jour\ntraductions mises à jour",
|
|
13
|
+
"it": "dipendenze aggiornate\ntraduzioni aggiornate",
|
|
14
|
+
"es": "dependencias actualizadas\ntraducciones actualizadas",
|
|
15
|
+
"pl": "zaktualizowane zależności\naktualizacja tłumaczeń",
|
|
16
|
+
"uk": "оновлені залежності\nпереклади оновлені",
|
|
17
|
+
"zh-cn": "更新依赖关系\n更新翻译"
|
|
18
|
+
},
|
|
6
19
|
"1.0.7": {
|
|
7
20
|
"en": "dependencies updated",
|
|
8
21
|
"de": "aktualisierte abhängigkeiten",
|
|
@@ -26,7 +39,8 @@
|
|
|
26
39
|
"it": "dipendenze aggiornate\nLe impostazioni di intervallazione sono cambiate da minuti a secondi\nStati solo dopo i cambiamenti",
|
|
27
40
|
"es": "dependencias actualizadas\nLos ajustes de intervalor cambiaron de minutos a segundos\nEstados sólo escriben después de los cambios",
|
|
28
41
|
"pl": "aktualizacja\nPrzeszłość zmieniała się z minut na sekundę\nPaństwa pisane są tylko po zmianach",
|
|
29
|
-
"zh-cn": "b. 更新的依赖\n汇率环境从分钟改为第二秒\n国家在修改后只写信"
|
|
42
|
+
"zh-cn": "b. 更新的依赖\n汇率环境从分钟改为第二秒\n国家在修改后只写信",
|
|
43
|
+
"uk": "залежності оновлено\nПараметри інтервалу змінено з хвилин на секунди\nСтани написані лише після змін"
|
|
30
44
|
},
|
|
31
45
|
"1.0.5": {
|
|
32
46
|
"en": "dependencies updated\ntest and release updated\nsmaller changes",
|
|
@@ -38,7 +52,8 @@
|
|
|
38
52
|
"it": "dipendenze aggiornate\ntest e rilascio aggiornati\npiccoli cambiamenti",
|
|
39
53
|
"es": "dependencias actualizadas\nprueba y versión actualizada\npequeños cambios",
|
|
40
54
|
"pl": "zaktualizowano zależności\nzaktualizowano test i wydanie\nmniejsze zmiany",
|
|
41
|
-
"zh-cn": "已更新依赖项\n测试和发布更新\n较小的变化"
|
|
55
|
+
"zh-cn": "已更新依赖项\n测试和发布更新\n较小的变化",
|
|
56
|
+
"uk": "залежності оновлено\nтестування та випуск оновлено\nменші зміни"
|
|
42
57
|
},
|
|
43
58
|
"1.0.4": {
|
|
44
59
|
"en": "dependencies updated\nissue #20 fixed",
|
|
@@ -50,7 +65,8 @@
|
|
|
50
65
|
"it": "dipendenze aggiornate\nproblema n. 20 risolto",
|
|
51
66
|
"es": "dependencias actualizadas\nproblema #20 solucionado",
|
|
52
67
|
"pl": "zaktualizowano zależności\nproblem nr 20 naprawiony",
|
|
53
|
-
"zh-cn": "已更新依赖项\n问题 #20 已修复"
|
|
68
|
+
"zh-cn": "已更新依赖项\n问题 #20 已修复",
|
|
69
|
+
"uk": "залежності оновлено\nпроблема №20 виправлена"
|
|
54
70
|
},
|
|
55
71
|
"1.0.3": {
|
|
56
72
|
"en": "dependencies updated",
|
|
@@ -62,7 +78,8 @@
|
|
|
62
78
|
"it": "dipendenze aggiornate",
|
|
63
79
|
"es": "dependencias actualizadas",
|
|
64
80
|
"pl": "zaktualizowano zależności",
|
|
65
|
-
"zh-cn": "依赖项已更新"
|
|
81
|
+
"zh-cn": "依赖项已更新",
|
|
82
|
+
"uk": "залежності оновлено"
|
|
66
83
|
},
|
|
67
84
|
"1.0.2": {
|
|
68
85
|
"en": "node.js 14 and 16 compatibilty\ndependencies updated",
|
|
@@ -74,22 +91,10 @@
|
|
|
74
91
|
"it": "Node.js 14 e 16 compatibilità\ndipendenze aggiornate",
|
|
75
92
|
"es": "Compatibilidad de node.js 14 y 16\ndependencias actualizadas",
|
|
76
93
|
"pl": "node.js 14 i 16 kompatybilność\nzaktualizowane zależności",
|
|
77
|
-
"zh-cn": "node.js 14和16的兼容性\n依赖关系已更新"
|
|
78
|
-
|
|
79
|
-
"1.0.1": {
|
|
80
|
-
"en": "changes due to js-controller 3.3.x",
|
|
81
|
-
"de": "Änderungen aufgrund von js-controller 3.3.x.",
|
|
82
|
-
"ru": "изменения из-за js-controller 3.3.x",
|
|
83
|
-
"pt": "mudanças devido ao js-controller 3.3.x",
|
|
84
|
-
"nl": "veranderingen als gevolg van js-controller 3.3.x",
|
|
85
|
-
"fr": "changements dus à js-controller 3.3.x",
|
|
86
|
-
"it": "modifiche dovute a js-controller 3.3.x",
|
|
87
|
-
"es": "cambios debido a js-controller 3.3.x",
|
|
88
|
-
"pl": "zmiany spowodowane przez js-controller 3.3.x",
|
|
89
|
-
"zh-cn": "由于js-controller 3.3.x而发生的更改"
|
|
94
|
+
"zh-cn": "node.js 14和16的兼容性\n依赖关系已更新",
|
|
95
|
+
"uk": "сумісність node.js 14 і 16\nзалежності оновлено"
|
|
90
96
|
}
|
|
91
97
|
},
|
|
92
|
-
"title": "SolarViewDataReader",
|
|
93
98
|
"titleLang": {
|
|
94
99
|
"en": "SolarViewDataReader",
|
|
95
100
|
"de": "SolarViewDataReader",
|
|
@@ -100,7 +105,8 @@
|
|
|
100
105
|
"it": "SolarViewDataReader",
|
|
101
106
|
"es": "SolarViewDataReader",
|
|
102
107
|
"pl": "SolarViewDataReader",
|
|
103
|
-
"zh-cn": "SolarViewDataReader"
|
|
108
|
+
"zh-cn": "SolarViewDataReader",
|
|
109
|
+
"uk": "SolarViewDataReader"
|
|
104
110
|
},
|
|
105
111
|
"desc": {
|
|
106
112
|
"en": "Get Data from SolarView",
|
|
@@ -112,7 +118,8 @@
|
|
|
112
118
|
"it": "Ottieni dati da SolarView",
|
|
113
119
|
"es": "Obtener datos de SolarView",
|
|
114
120
|
"pl": "Uzyskaj dane z SolarView",
|
|
115
|
-
"zh-cn": "从SolarView获取数据"
|
|
121
|
+
"zh-cn": "从SolarView获取数据",
|
|
122
|
+
"uk": "Отримайте дані від SolarView"
|
|
116
123
|
},
|
|
117
124
|
"authors": [
|
|
118
125
|
"Achim Fürhoff <achim.fuerhoff@outlook.de>"
|
|
@@ -138,10 +145,7 @@
|
|
|
138
145
|
"materialize": true,
|
|
139
146
|
"dependencies": [
|
|
140
147
|
{
|
|
141
|
-
"
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
"js-controller": ">=3.0.0"
|
|
148
|
+
"js-controller": ">=3.3.22"
|
|
145
149
|
}
|
|
146
150
|
]
|
|
147
151
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.solarviewdatareader",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.8",
|
|
4
4
|
"description": "Get data from SolarView",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Achim Fürhoff",
|
|
@@ -18,21 +18,22 @@
|
|
|
18
18
|
"url": "https://github.com/afuerhoff/ioBroker.solarviewdatareader"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@iobroker/adapter-core": "^
|
|
21
|
+
"@iobroker/adapter-core": "^3.0.4"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@alcalzone/release-script": "^3.
|
|
25
|
-
"@alcalzone/release-script-plugin-iobroker": "^3.
|
|
26
|
-
"@alcalzone/release-script-plugin-license": "^3.
|
|
24
|
+
"@alcalzone/release-script": "^3.7.0",
|
|
25
|
+
"@alcalzone/release-script-plugin-iobroker": "^3.7.0",
|
|
26
|
+
"@alcalzone/release-script-plugin-license": "^3.7.0",
|
|
27
|
+
"@alcalzone/release-script-plugin-manual-review": "^3.7.0",
|
|
27
28
|
"@iobroker/adapter-dev": "^1.2.0",
|
|
28
29
|
"@iobroker/testing": "^4.1.0",
|
|
29
|
-
"@types/chai": "^4.3.
|
|
30
|
-
"@types/chai-as-promised": "^7.1.
|
|
31
|
-
"@types/mocha": "^10.0.
|
|
32
|
-
"@types/node": "^
|
|
33
|
-
"chai": "^4.
|
|
30
|
+
"@types/chai": "^4.3.11",
|
|
31
|
+
"@types/chai-as-promised": "^7.1.8",
|
|
32
|
+
"@types/mocha": "^10.0.6",
|
|
33
|
+
"@types/node": "^20.11.5",
|
|
34
|
+
"chai": "^4.4.1",
|
|
34
35
|
"chai-as-promised": "^7.1.1",
|
|
35
|
-
"eslint": "^8.
|
|
36
|
+
"eslint": "^8.56.0",
|
|
36
37
|
"mocha": "^10.2.0"
|
|
37
38
|
},
|
|
38
39
|
"main": "main.js",
|
|
@@ -48,17 +49,19 @@
|
|
|
48
49
|
"scripts": {
|
|
49
50
|
"test:js": "mocha --config test/mocharc.custom.json \"{!(node_modules|test)/**/*.test.js,*.test.js,test/**/test!(PackageFiles|Startup).js}\"",
|
|
50
51
|
"test:package": "mocha test/package --exit",
|
|
51
|
-
"test:unit": "mocha test/unit --exit",
|
|
52
52
|
"test:integration": "mocha test/integration --exit",
|
|
53
53
|
"test": "npm run test:js && npm run test:package",
|
|
54
54
|
"aftest": "mocha test/af_test.js --exit",
|
|
55
55
|
"check": "tsc --noEmit -p tsconfig.check.json",
|
|
56
|
-
"lint": "eslint --ext .js,.jsx",
|
|
56
|
+
"lint": "eslint --ext .js,.jsx .",
|
|
57
57
|
"release": "release-script",
|
|
58
58
|
"translate": "translate-adapter"
|
|
59
59
|
},
|
|
60
60
|
"bugs": {
|
|
61
61
|
"url": "https://github.com/afuerhoff/ioBroker.solarviewdatareader/issues"
|
|
62
62
|
},
|
|
63
|
-
"readmeFilename": "README.md"
|
|
63
|
+
"readmeFilename": "README.md",
|
|
64
|
+
"engines": {
|
|
65
|
+
"node": ">=14"
|
|
66
|
+
}
|
|
64
67
|
}
|
package/lib/tools.js
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
const axios = require("axios");
|
|
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
|
-
}
|
|
37
|
-
if (yandexApiKey) {
|
|
38
|
-
return await translateYandex(text, targetLang, yandexApiKey);
|
|
39
|
-
} else {
|
|
40
|
-
return await translateGoogle(text, targetLang);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Translates text with Yandex API
|
|
46
|
-
* @param {string} text The text to translate
|
|
47
|
-
* @param {string} targetLang The target languate
|
|
48
|
-
* @param {string} [apiKey] The yandex API key. You can create one for free at https://translate.yandex.com/developers
|
|
49
|
-
* @returns {Promise<string>}
|
|
50
|
-
*/
|
|
51
|
-
async function translateYandex(text, targetLang, apiKey) {
|
|
52
|
-
if (targetLang === "zh-cn") {
|
|
53
|
-
targetLang = "zh";
|
|
54
|
-
}
|
|
55
|
-
try {
|
|
56
|
-
const url = `https://translate.yandex.net/api/v1.5/tr.json/translate?key=${apiKey}&text=${encodeURIComponent(text)}&lang=en-${targetLang}`;
|
|
57
|
-
const response = await axios({url, timeout: 15000});
|
|
58
|
-
if (response.data && response.data["text"]) {
|
|
59
|
-
return response.data["text"][0];
|
|
60
|
-
}
|
|
61
|
-
throw new Error("Invalid response for translate request");
|
|
62
|
-
} catch (e) {
|
|
63
|
-
throw new Error(`Could not translate to "${targetLang}": ${e}`);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Translates text with Google API
|
|
69
|
-
* @param {string} text The text to translate
|
|
70
|
-
* @param {string} targetLang The target languate
|
|
71
|
-
* @returns {Promise<string>}
|
|
72
|
-
*/
|
|
73
|
-
async function translateGoogle(text, targetLang) {
|
|
74
|
-
try {
|
|
75
|
-
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`;
|
|
76
|
-
const response = await axios({url, timeout: 15000});
|
|
77
|
-
if (isArray(response.data)) {
|
|
78
|
-
// we got a valid response
|
|
79
|
-
return response.data[0][0][0];
|
|
80
|
-
}
|
|
81
|
-
throw new Error("Invalid response for translate request");
|
|
82
|
-
} catch (e) {
|
|
83
|
-
throw new Error(`Could not translate to "${targetLang}": ${e}`);
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
module.exports = {
|
|
88
|
-
isArray,
|
|
89
|
-
isObject,
|
|
90
|
-
translateText
|
|
91
|
-
};
|