iobroker.awattar 1.0.6 → 1.2.0
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 +21 -21
- package/README.md +110 -91
- package/admin/admin.d.ts +93 -93
- package/admin/awattar.png +0 -0
- package/admin/awattarBig.png +0 -0
- package/admin/i18n/de.json +8 -0
- package/admin/i18n/en.json +8 -0
- package/admin/i18n/es.json +8 -0
- package/admin/i18n/fr.json +8 -0
- package/admin/i18n/it.json +8 -0
- package/admin/i18n/nl.json +8 -0
- package/admin/i18n/pl.json +8 -0
- package/admin/i18n/pt.json +8 -0
- package/admin/i18n/ru.json +8 -0
- package/admin/i18n/uk.json +8 -0
- package/admin/i18n/zh-cn.json +8 -0
- package/admin/index_m.html +104 -104
- package/admin/style.css +31 -31
- package/admin/tsconfig.json +9 -0
- package/admin/words.js +83 -41
- package/io-package.json +131 -109
- package/lib/adapter-config.d.ts +16 -16
- package/lib/tools.js +105 -99
- package/main.js +471 -389
- package/package.json +72 -56
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
- package/.github/workflows/test-and-release.yml +0 -136
- package/main.test.js +0 -30
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c)
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 sirjojo69 <gtj.howe@gmx.de>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,92 +1,111 @@
|
|
|
1
|
-

|
|
2
|
-
# ioBroker.awattar
|
|
3
|
-
|
|
4
|
-
[](https://www.npmjs.com/package/iobroker.awattar)
|
|
5
|
-
[](https://www.npmjs.com/package/iobroker.awattar)
|
|
6
|
-

|
|
7
|
-

|
|
8
|
-
[](https://david-dm.org/sirjojo69/iobroker.awattar)
|
|
9
|
-
[](https://snyk.io/test/github/sirjojo69/ioBroker.awattar)
|
|
10
|
-
|
|
11
|
-
[](https://nodei.co/npm/iobroker.awattar/)
|
|
12
|
-
|
|
13
|
-
**Tests:** 
|
|
14
|
-
|
|
15
|
-
<p>
|
|
16
|
-
<a href="https://www.awattar.de/" target="_blank">
|
|
17
|
-
<img border="0" alt="aWATTar" src="admin/awattarBig.png">
|
|
18
|
-
</a>
|
|
19
|
-
</p>
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
## aWATTar adapter for ioBroker
|
|
23
|
-
|
|
24
|
-
This adapter reads the hourly prices for the coming day of the electricity provider <a href="https://www.awattar.de/" target="_blank"> aWATTar </a>
|
|
25
|
-
for the hourly and hourly CAP tariffs.
|
|
26
|
-
With this information you can then control when e.g. your electric car or the home storage should be charged (namely at the cheapest time).
|
|
27
|
-
Since this provider offers its services only in Austria and Germany
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
<li>
|
|
36
|
-
<
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
<br>
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
* (
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
* (
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
* (
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
* (
|
|
64
|
-
|
|
65
|
-
### 1.
|
|
66
|
-
* (
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
* (SirJojo69)
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
1
|
+

|
|
2
|
+
# ioBroker.awattar
|
|
3
|
+
|
|
4
|
+
[](https://www.npmjs.com/package/iobroker.awattar)
|
|
5
|
+
[](https://www.npmjs.com/package/iobroker.awattar)
|
|
6
|
+

|
|
7
|
+

|
|
8
|
+
[](https://david-dm.org/sirjojo69/iobroker.awattar)
|
|
9
|
+
[](https://snyk.io/test/github/sirjojo69/ioBroker.awattar)
|
|
10
|
+
|
|
11
|
+
[](https://nodei.co/npm/iobroker.awattar/)
|
|
12
|
+
|
|
13
|
+
**Tests:** 
|
|
14
|
+
|
|
15
|
+
<p>
|
|
16
|
+
<a href="https://www.awattar.de/" target="_blank">
|
|
17
|
+
<img border="0" alt="aWATTar" src="admin/awattarBig.png">
|
|
18
|
+
</a>
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## aWATTar adapter for ioBroker
|
|
23
|
+
|
|
24
|
+
This adapter reads the hourly prices for the coming day of the electricity provider <a href="https://www.awattar.de/" target="_blank"> aWATTar </a>
|
|
25
|
+
for the hourly and hourly CAP tariffs.
|
|
26
|
+
With this information you can then control when e.g. your electric car or the home storage should be charged (namely at the cheapest time).
|
|
27
|
+
Since this provider offers its services only in Austria and Germany, note that some field labels in the admin UI are in German.
|
|
28
|
+
|
|
29
|
+
In the adapter settings you will find 5 fields (each pre-filled with default values):
|
|
30
|
+
<li>The variable "URL for aWATTar API" contains the URL for aWATTar's API price data feed.</li>
|
|
31
|
+
<li>If you want to know the cheapest hours during the night (e.g. for charging your EV), use the following two parameters.
|
|
32
|
+
<ul>The variable "Start Threshold Loading (e.g. for EV)" contains a time that marks the start of a period for which you want to get the cheapest hours in sorted order.</ul>
|
|
33
|
+
<ul>The variable "End Threshold Loading" contains a time that marks the end of a period for which you want to get the cheapest hours in sorted order.</ul>
|
|
34
|
+
</li>
|
|
35
|
+
<li>The variable "actual VAT rate (percent)" must contain the currently valid VAT rate. The prices delivered by the API do not include VAT.</li>
|
|
36
|
+
<li>The variable "Arbeitspreis ('Netznutzung' + 'Umlagen, Abgaben, Steuern' + 'Kosten für Ökostromzertifikate, Abrechnung und Vertrieb', incl. VAT)" lets you enter your personal energy rate (depends on your postal code / grid operator).</li>
|
|
37
|
+
<br>
|
|
38
|
+
The results are then available in the adapter's object tree (awattar.0).
|
|
39
|
+
The folder "prices" contains one entry per hour of the day with the electricity price for that hour.
|
|
40
|
+
The folder "prices_ordered" contains -sorted by hourly price- one entry for each hour of the period configured in the settings, with the electricity price for that hour.
|
|
41
|
+
<br><br>
|
|
42
|
+
By default the adapter is configured to fetch the values for the next 24 hours at 15:00.
|
|
43
|
+
This schedule can of course be adjusted.
|
|
44
|
+
According to the <a href="https://www.awattar.de/services/api" target="_blank">aWATTar API documentation</a>, these values are available every day starting at 14:00.
|
|
45
|
+
|
|
46
|
+
## Changelog
|
|
47
|
+
<!--
|
|
48
|
+
Placeholder for the next version (at the beginning of the line):
|
|
49
|
+
### **WORK IN PROGRESS**
|
|
50
|
+
-->
|
|
51
|
+
|
|
52
|
+
### 1.2.0
|
|
53
|
+
* (repository maintenance) Fixed: admin/i18n translations were excluded from the npm package (missing languages in Admin UI for installed users)
|
|
54
|
+
* (repository maintenance) Fixed: Admin UI translations (words.js) never matched the actual field labels; corrected and completed for all supported languages
|
|
55
|
+
* (repository maintenance) Fixed: replaced plain setTimeout() with adapter.setTimeout()/clearTimeout() so the shutdown timer is properly cleaned up
|
|
56
|
+
* (repository maintenance) Updated dependencies (@iobroker/adapter-core, @iobroker/adapter-dev, @iobroker/testing, @alcalzone/release-script)
|
|
57
|
+
* (repository maintenance) Migrated ESLint to @iobroker/eslint-config (flat config) and reformatted the codebase accordingly
|
|
58
|
+
* (repository maintenance) Raised minimum Node.js version to >=20, added Node.js 22/24/26 to the test matrix
|
|
59
|
+
* (repository maintenance) Updated js-controller/admin dependency requirements, fixed io-package.json schema issues (removed unknown/deprecated properties, invalid news entry)
|
|
60
|
+
* (repository maintenance) Migrated NPM publishing to Trusted Publishing (OIDC)
|
|
61
|
+
* (repository maintenance) Migrated admin/i18n to short format ({lang}.json)
|
|
62
|
+
* (repository maintenance) Removed obsolete gulpfile.js and .travis.yml, added Dependabot configuration and auto-merge workflow
|
|
63
|
+
* (repository maintenance) Translated README.md to English, fixed LICENSE copyright year
|
|
64
|
+
|
|
65
|
+
### 1.1.0
|
|
66
|
+
* (Apollon77) Updates to testing from ioBroker Core team to make testing compatible with js-controller 4.0
|
|
67
|
+
* (SirJojo69) changed copyright
|
|
68
|
+
* (SirJojo69) updated js-controller dependency to 5.0.19
|
|
69
|
+
* (SirJojo69) fixed stat and end date format to DD.MM.YYYY
|
|
70
|
+
* (SirJojo69) adapter runs once at start
|
|
71
|
+
* (mcm1957) Updates to testing
|
|
72
|
+
|
|
73
|
+
### 1.0.6
|
|
74
|
+
* (SirJojo69) new version for official repo
|
|
75
|
+
|
|
76
|
+
### 1.0.5
|
|
77
|
+
* (SirJojo69) Added total price and gross price, API call with start and end parameters. Some internal fixes.
|
|
78
|
+
|
|
79
|
+
### 1.0.3
|
|
80
|
+
* (SirJojo69) Changed some settings.
|
|
81
|
+
|
|
82
|
+
### 1.0.1
|
|
83
|
+
* (SirJojo69) deleted admin tab.
|
|
84
|
+
|
|
85
|
+
### 1.0.0
|
|
86
|
+
* (SirJojo69) first stable release.
|
|
87
|
+
|
|
88
|
+
### 0.0.1
|
|
89
|
+
* (SirJojo69) initial release.
|
|
90
|
+
|
|
91
|
+
## License
|
|
92
|
+
MIT License
|
|
93
|
+
Copyright (c) 2026 sirjojo69 <gtj.howe@gmx.de>
|
|
94
|
+
|
|
95
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
96
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
97
|
+
in the Software without restriction, including without limitation the rights
|
|
98
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
99
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
100
|
+
furnished to do so, subject to the following conditions:
|
|
101
|
+
|
|
102
|
+
The above copyright notice and this permission notice shall be included in all
|
|
103
|
+
copies or substantial portions of the Software.
|
|
104
|
+
|
|
105
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
106
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
107
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
108
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
109
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
110
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
92
111
|
SOFTWARE.
|
package/admin/admin.d.ts
CHANGED
|
@@ -1,93 +1,93 @@
|
|
|
1
|
-
declare let systemDictionary: Record<string, Record<string, string>>;
|
|
2
|
-
|
|
3
|
-
declare let load: (settings: Record<string, unknown>, onChange: (hasChanges: boolean) => void) => void;
|
|
4
|
-
declare let save: (callback: (settings: Record<string, unknown>) => void) => void;
|
|
5
|
-
|
|
6
|
-
// make load and save exist on the window object
|
|
7
|
-
interface Window {
|
|
8
|
-
load: typeof load;
|
|
9
|
-
save: typeof save;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
declare const instance: number;
|
|
13
|
-
declare const adapter: string;
|
|
14
|
-
/** Translates text */
|
|
15
|
-
declare function _(text: string): string;
|
|
16
|
-
declare const socket: ioBrokerSocket;
|
|
17
|
-
declare function sendTo(
|
|
18
|
-
instance: any | null,
|
|
19
|
-
command: string,
|
|
20
|
-
message: any,
|
|
21
|
-
callback: (result: SendToResult) => void | Promise<void>,
|
|
22
|
-
): void;
|
|
23
|
-
|
|
24
|
-
interface SendToResult {
|
|
25
|
-
error?: string | Error;
|
|
26
|
-
result?: any;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
// tslint:disable-next-line:class-name
|
|
30
|
-
interface ioBrokerSocket {
|
|
31
|
-
emit(
|
|
32
|
-
command: "subscribeObjects",
|
|
33
|
-
pattern: string,
|
|
34
|
-
callback?: (err?: string) => void | Promise<void>,
|
|
35
|
-
): void;
|
|
36
|
-
emit(
|
|
37
|
-
command: "subscribeStates",
|
|
38
|
-
pattern: string,
|
|
39
|
-
callback?: (err?: string) => void | Promise<void>,
|
|
40
|
-
): void;
|
|
41
|
-
emit(
|
|
42
|
-
command: "unsubscribeObjects",
|
|
43
|
-
pattern: string,
|
|
44
|
-
callback?: (err?: string) => void | Promise<void>,
|
|
45
|
-
): void;
|
|
46
|
-
emit(
|
|
47
|
-
command: "unsubscribeStates",
|
|
48
|
-
pattern: string,
|
|
49
|
-
callback?: (err?: string) => void | Promise<void>,
|
|
50
|
-
): void;
|
|
51
|
-
|
|
52
|
-
emit(
|
|
53
|
-
event: "getObjectView",
|
|
54
|
-
view: "system",
|
|
55
|
-
type: "device",
|
|
56
|
-
options: ioBroker.GetObjectViewParams,
|
|
57
|
-
callback: (
|
|
58
|
-
err: string | undefined,
|
|
59
|
-
result?: any,
|
|
60
|
-
) => void | Promise<void>,
|
|
61
|
-
): void;
|
|
62
|
-
emit(
|
|
63
|
-
event: "getStates",
|
|
64
|
-
callback: (
|
|
65
|
-
err: string | undefined,
|
|
66
|
-
result?: Record<string, any>,
|
|
67
|
-
) => void,
|
|
68
|
-
): void;
|
|
69
|
-
emit(
|
|
70
|
-
event: "getState",
|
|
71
|
-
id: string,
|
|
72
|
-
callback: (err: string | undefined, result?: ioBroker.State) => void,
|
|
73
|
-
): void;
|
|
74
|
-
emit(
|
|
75
|
-
event: "setState",
|
|
76
|
-
id: string,
|
|
77
|
-
state: unknown,
|
|
78
|
-
callback: (err: string | undefined, result?: any) => void,
|
|
79
|
-
): void;
|
|
80
|
-
|
|
81
|
-
on(event: "objectChange", handler: ioBroker.ObjectChangeHandler): void;
|
|
82
|
-
on(event: "stateChange", handler: ioBroker.StateChangeHandler): void;
|
|
83
|
-
removeEventHandler(
|
|
84
|
-
event: "objectChange",
|
|
85
|
-
handler: ioBroker.ObjectChangeHandler,
|
|
86
|
-
): void;
|
|
87
|
-
removeEventHandler(
|
|
88
|
-
event: "stateChange",
|
|
89
|
-
handler: ioBroker.StateChangeHandler,
|
|
90
|
-
): void;
|
|
91
|
-
|
|
92
|
-
// TODO: other events
|
|
93
|
-
}
|
|
1
|
+
declare let systemDictionary: Record<string, Record<string, string>>;
|
|
2
|
+
|
|
3
|
+
declare let load: (settings: Record<string, unknown>, onChange: (hasChanges: boolean) => void) => void;
|
|
4
|
+
declare let save: (callback: (settings: Record<string, unknown>) => void) => void;
|
|
5
|
+
|
|
6
|
+
// make load and save exist on the window object
|
|
7
|
+
interface Window {
|
|
8
|
+
load: typeof load;
|
|
9
|
+
save: typeof save;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
declare const instance: number;
|
|
13
|
+
declare const adapter: string;
|
|
14
|
+
/** Translates text */
|
|
15
|
+
declare function _(text: string): string;
|
|
16
|
+
declare const socket: ioBrokerSocket;
|
|
17
|
+
declare function sendTo(
|
|
18
|
+
instance: any | null,
|
|
19
|
+
command: string,
|
|
20
|
+
message: any,
|
|
21
|
+
callback: (result: SendToResult) => void | Promise<void>,
|
|
22
|
+
): void;
|
|
23
|
+
|
|
24
|
+
interface SendToResult {
|
|
25
|
+
error?: string | Error;
|
|
26
|
+
result?: any;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// tslint:disable-next-line:class-name
|
|
30
|
+
interface ioBrokerSocket {
|
|
31
|
+
emit(
|
|
32
|
+
command: "subscribeObjects",
|
|
33
|
+
pattern: string,
|
|
34
|
+
callback?: (err?: string) => void | Promise<void>,
|
|
35
|
+
): void;
|
|
36
|
+
emit(
|
|
37
|
+
command: "subscribeStates",
|
|
38
|
+
pattern: string,
|
|
39
|
+
callback?: (err?: string) => void | Promise<void>,
|
|
40
|
+
): void;
|
|
41
|
+
emit(
|
|
42
|
+
command: "unsubscribeObjects",
|
|
43
|
+
pattern: string,
|
|
44
|
+
callback?: (err?: string) => void | Promise<void>,
|
|
45
|
+
): void;
|
|
46
|
+
emit(
|
|
47
|
+
command: "unsubscribeStates",
|
|
48
|
+
pattern: string,
|
|
49
|
+
callback?: (err?: string) => void | Promise<void>,
|
|
50
|
+
): void;
|
|
51
|
+
|
|
52
|
+
emit(
|
|
53
|
+
event: "getObjectView",
|
|
54
|
+
view: "system",
|
|
55
|
+
type: "device",
|
|
56
|
+
options: ioBroker.GetObjectViewParams,
|
|
57
|
+
callback: (
|
|
58
|
+
err: string | undefined,
|
|
59
|
+
result?: any,
|
|
60
|
+
) => void | Promise<void>,
|
|
61
|
+
): void;
|
|
62
|
+
emit(
|
|
63
|
+
event: "getStates",
|
|
64
|
+
callback: (
|
|
65
|
+
err: string | undefined,
|
|
66
|
+
result?: Record<string, any>,
|
|
67
|
+
) => void,
|
|
68
|
+
): void;
|
|
69
|
+
emit(
|
|
70
|
+
event: "getState",
|
|
71
|
+
id: string,
|
|
72
|
+
callback: (err: string | undefined, result?: ioBroker.State) => void,
|
|
73
|
+
): void;
|
|
74
|
+
emit(
|
|
75
|
+
event: "setState",
|
|
76
|
+
id: string,
|
|
77
|
+
state: unknown,
|
|
78
|
+
callback: (err: string | undefined, result?: any) => void,
|
|
79
|
+
): void;
|
|
80
|
+
|
|
81
|
+
on(event: "objectChange", handler: ioBroker.ObjectChangeHandler): void;
|
|
82
|
+
on(event: "stateChange", handler: ioBroker.StateChangeHandler): void;
|
|
83
|
+
removeEventHandler(
|
|
84
|
+
event: "objectChange",
|
|
85
|
+
handler: ioBroker.ObjectChangeHandler,
|
|
86
|
+
): void;
|
|
87
|
+
removeEventHandler(
|
|
88
|
+
event: "stateChange",
|
|
89
|
+
handler: ioBroker.StateChangeHandler,
|
|
90
|
+
): void;
|
|
91
|
+
|
|
92
|
+
// TODO: other events
|
|
93
|
+
}
|
package/admin/awattar.png
CHANGED
|
File without changes
|
package/admin/awattarBig.png
CHANGED
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Adaptereinstellungen für awattar",
|
|
3
|
+
"URL for aWATTar API": "URL für aWATTar API",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Start Zeitraum nach Preis sortiert (z.B. für E-Auto)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Ende Zeitraum nach Preis sortiert",
|
|
6
|
+
"actual VAT rate (percent)": "aktuell gültige Mwst. (Prozent)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Arbeitspreis (\"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Adapter settings for awattar",
|
|
3
|
+
"URL for aWATTar API": "URL for aWATTar API",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Start Threshold Loading (e.g. for EV)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "End Threshold Loading (e.g. for EV)",
|
|
6
|
+
"actual VAT rate (percent)": "actual VAT rate (percent)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Energy rate (\"grid usage\" + \"levies, fees, taxes\" + \"cost for green power certificates, billing and distribution\", incl. VAT)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Ajustes del adaptador para awattar",
|
|
3
|
+
"URL for aWATTar API": "URL para la API de aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Inicio del umbral de carga (p. ej. para VE)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Fin del umbral de carga",
|
|
6
|
+
"actual VAT rate (percent)": "tipo de IVA actual (porcentaje)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Precio de la energía (\"uso de la red\" + \"tasas, cargos, impuestos\" + \"coste de certificados de energía verde, facturación y distribución\", IVA incl.)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Paramètres d'adaptateur pour awattar",
|
|
3
|
+
"URL for aWATTar API": "URL pour l'API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Début du seuil de charge (ex. pour véhicule électrique)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Fin du seuil de charge",
|
|
6
|
+
"actual VAT rate (percent)": "taux de TVA actuel (pourcentage)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Prix de l'énergie (\"utilisation du réseau\" + \"redevances, taxes, impôts\" + \"coût des certificats d'électricité verte, facturation et distribution\", TVA incl.)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Impostazioni dell'adattatore per awattar",
|
|
3
|
+
"URL for aWATTar API": "URL per l'API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Inizio soglia di carica (es. per veicolo elettrico)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Fine soglia di carica",
|
|
6
|
+
"actual VAT rate (percent)": "aliquota IVA attuale (percentuale)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Prezzo dell'energia (\"uso della rete\" + \"oneri, tasse, imposte\" + \"costo dei certificati di energia verde, fatturazione e distribuzione\", IVA incl.)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Adapterinstellingen voor awattar",
|
|
3
|
+
"URL for aWATTar API": "URL voor aWATTar API",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Start laaddrempel (bijv. voor EV)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Einde laaddrempel",
|
|
6
|
+
"actual VAT rate (percent)": "actueel btw-tarief (percentage)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Energietarief (\"netgebruik\" + \"heffingen, kosten, belastingen\" + \"kosten voor groene stroomcertificaten, facturatie en distributie\", incl. btw)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Ustawienia adaptera dla awattar",
|
|
3
|
+
"URL for aWATTar API": "URL API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Początek progu ładowania (np. dla EV)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Koniec progu ładowania",
|
|
6
|
+
"actual VAT rate (percent)": "aktualna stawka VAT (procent)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Cena energii (\"korzystanie z sieci\" + \"opłaty, daniny, podatki\" + \"koszt certyfikatów zielonej energii, rozliczenia i dystrybucji\", z VAT)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Configurações do adaptador para awattar",
|
|
3
|
+
"URL for aWATTar API": "URL para a API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Início do limite de carregamento (ex.: para veículo elétrico)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Fim do limite de carregamento",
|
|
6
|
+
"actual VAT rate (percent)": "taxa de IVA atual (percentual)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Preço de energia (\"uso da rede\" + \"taxas, encargos, impostos\" + \"custo de certificados de energia verde, faturação e distribuição\", incl. IVA)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Настройки адаптера для awattar",
|
|
3
|
+
"URL for aWATTar API": "URL для API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Начало периода зарядки (напр. для электромобиля)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Конец периода зарядки",
|
|
6
|
+
"actual VAT rate (percent)": "актуальная ставка НДС (в процентах)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Тариф за электроэнергию (\"использование сети\" + \"сборы, пошлины, налоги\" + \"стоимость сертификатов зелёной энергии, биллинга и сбыта\", вкл. НДС)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "Налаштування адаптера для awattar",
|
|
3
|
+
"URL for aWATTar API": "URL для API aWATTar",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "Початок порогу завантаження (напр. для електромобіля)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "Кінець порогу завантаження",
|
|
6
|
+
"actual VAT rate (percent)": "поточна ставка ПДВ (відсоток)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "Тариф на електроенергію (\"використання мережі\" + \"збори, платежі, податки\" + \"вартість сертифікатів зеленої енергії, білінгу та збуту\", з ПДВ)"
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"awattar adapter settings": "awattar的适配器设置",
|
|
3
|
+
"URL for aWATTar API": "aWATTar API 的 URL",
|
|
4
|
+
"Start Threshold Loading (e.g. for EV)": "开始充电阈值(例如用于电动车)",
|
|
5
|
+
"End Threshold Loading (e.g. for EV)": "结束充电阈值",
|
|
6
|
+
"actual VAT rate (percent)": "当前增值税税率(百分比)",
|
|
7
|
+
"Arbeitspreis ( \"Netznutzung\" + \"Umlagen, Abgaben, Steuern\" + \"Kosten für Ökostromzertifikate, Abrechnung und Vertrieb\", incl. MWSt.)": "电价(“电网使用费”+“税费、摊派、税款”+“绿色电力证书、结算与配送成本”,含增值税)"
|
|
8
|
+
}
|