senec 0.19.0 → 0.21.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.
- checksums.yaml +4 -4
- data/.env +5 -1
- data/.env.test +1 -1
- data/.rspec_status +67 -69
- data/.ruby-lsp/Gemfile.lock +27 -6
- data/.ruby-lsp/last_updated +1 -0
- data/.ruby-lsp/main_lockfile_hash +1 -1
- data/README.md +8 -51
- data/coverage/.last_run.json +1 -1
- data/coverage/.resultset.json +261 -189
- data/coverage/coverage.json +298 -226
- data/coverage/index.html +2361 -1727
- data/lib/senec/.DS_Store +0 -0
- data/lib/senec/cloud/connection.rb +162 -77
- data/lib/senec/local/connection.rb +1 -0
- data/lib/senec/version.rb +1 -1
- data/lib/senec.rb +1 -2
- data/pkg/senec-0.19.0.gem +0 -0
- data/pkg/senec-0.20.0.gem +0 -0
- metadata +19 -3
- data/lib/senec/cloud/stats_overview.rb +0 -52
- data/lib/senec/cloud/wallboxes.rb +0 -52
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 854eed5f0f791ab1eafa06f2e8b4b4bf05645bc6e1f7be0f419ddafe44e98de3
|
4
|
+
data.tar.gz: 1dd9b8b3cb56908c91abe6bbd9e4ee33850a76d90a49c3ed447efee445666a46
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 65ba80ecdf6d2d557ecc5f38895f5c3d4cc84c036040e484459921b58f1051134f965091c036afce7e09a79f49d99ec98d1a3b57b91fc2e369cb03cb5a7d1bc6
|
7
|
+
data.tar.gz: 0b9b027c738c3eee747e497349586823032694fe7667978cf4ab48f206935e37e7d6fb67c1cded538a0c7aef2419c4ebe126a21bc5e2bf602f0dd09223a9b84e
|
data/.env
CHANGED
data/.env.test
CHANGED
data/.rspec_status
CHANGED
@@ -1,69 +1,67 @@
|
|
1
|
-
example_id
|
2
|
-
|
3
|
-
./spec/lib/senec/cloud/connection_spec.rb[1:1:1:1]
|
4
|
-
./spec/lib/senec/cloud/connection_spec.rb[1:1:2:1]
|
5
|
-
./spec/lib/senec/cloud/
|
6
|
-
./spec/lib/senec/cloud/
|
7
|
-
./spec/lib/senec/cloud/
|
8
|
-
./spec/lib/senec/cloud/
|
9
|
-
./spec/lib/senec/cloud/
|
10
|
-
./spec/lib/senec/cloud/
|
11
|
-
./spec/lib/senec/cloud/
|
12
|
-
./spec/lib/senec/cloud/
|
13
|
-
./spec/lib/senec/cloud/
|
14
|
-
./spec/lib/senec/cloud/
|
15
|
-
./spec/lib/senec/cloud/
|
16
|
-
./spec/lib/senec/cloud/
|
17
|
-
./spec/lib/senec/cloud/
|
18
|
-
./spec/lib/senec/cloud/
|
19
|
-
./spec/lib/senec/cloud/
|
20
|
-
./spec/lib/senec/
|
21
|
-
./spec/lib/senec/
|
22
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
23
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
24
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
25
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
26
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
27
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
28
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
29
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
30
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
31
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
32
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
33
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
34
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
35
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
36
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
37
|
-
./spec/lib/senec/local/request_spec.rb[1:1:
|
38
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
39
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
40
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
41
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
42
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
43
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
44
|
-
./spec/lib/senec/local/request_spec.rb[1:
|
45
|
-
./spec/lib/senec/local/request_spec.rb[1:7:1:
|
46
|
-
./spec/lib/senec/local/
|
47
|
-
./spec/lib/senec/local/
|
48
|
-
./spec/lib/senec/local/state_spec.rb[1:1:
|
49
|
-
./spec/lib/senec/local/state_spec.rb[1:1:
|
50
|
-
./spec/lib/senec/local/state_spec.rb[1:1:
|
51
|
-
./spec/lib/senec/local/
|
52
|
-
./spec/lib/senec/local/
|
53
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
54
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
55
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
56
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
57
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
58
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
59
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
60
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
61
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
62
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
63
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
64
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
65
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
66
|
-
./spec/lib/senec/local/value_spec.rb[1:1:
|
67
|
-
./spec/
|
68
|
-
./spec/lib/senec/local/value_spec.rb[1:1:9:1] | passed | 0.00005 seconds |
|
69
|
-
./spec/senec_spec.rb[1:1] | passed | 0.00004 seconds |
|
1
|
+
example_id | status | run_time |
|
2
|
+
-------------------------------------------------- | ------ | --------------- |
|
3
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:1:1:1] | passed | 0.0106 seconds |
|
4
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:1:2:1] | passed | 0.00427 seconds |
|
5
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:2:1] | passed | 0.00523 seconds |
|
6
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:2:2] | passed | 0.00449 seconds |
|
7
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:2:3] | passed | 0.00651 seconds |
|
8
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:3:1:1] | passed | 0.00394 seconds |
|
9
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:3:1:2] | passed | 0.00737 seconds |
|
10
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:3:2:1] | passed | 0.01001 seconds |
|
11
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:4:1:1] | passed | 0.00458 seconds |
|
12
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:4:1:2] | passed | 0.00382 seconds |
|
13
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:4:2:1] | passed | 0.00392 seconds |
|
14
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:5:1:1] | passed | 0.0038 seconds |
|
15
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:5:1:2] | passed | 0.00348 seconds |
|
16
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:5:2:1] | passed | 0.00334 seconds |
|
17
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:6:1:1] | passed | 0.00421 seconds |
|
18
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:6:1:2] | passed | 0.00324 seconds |
|
19
|
+
./spec/lib/senec/cloud/connection_spec.rb[1:6:2:1] | passed | 0.00375 seconds |
|
20
|
+
./spec/lib/senec/local/request_spec.rb[1:1:1:1] | passed | 0.00505 seconds |
|
21
|
+
./spec/lib/senec/local/request_spec.rb[1:1:2:1] | passed | 0.00084 seconds |
|
22
|
+
./spec/lib/senec/local/request_spec.rb[1:1:3:1] | passed | 0.00095 seconds |
|
23
|
+
./spec/lib/senec/local/request_spec.rb[1:1:4:1] | passed | 0.00067 seconds |
|
24
|
+
./spec/lib/senec/local/request_spec.rb[1:1:5:1] | passed | 0.00084 seconds |
|
25
|
+
./spec/lib/senec/local/request_spec.rb[1:1:6:1] | passed | 0.00063 seconds |
|
26
|
+
./spec/lib/senec/local/request_spec.rb[1:1:7:1] | passed | 0.00062 seconds |
|
27
|
+
./spec/lib/senec/local/request_spec.rb[1:1:8:1] | passed | 0.00068 seconds |
|
28
|
+
./spec/lib/senec/local/request_spec.rb[1:1:9:1] | passed | 0.00056 seconds |
|
29
|
+
./spec/lib/senec/local/request_spec.rb[1:1:10:1] | passed | 0.00094 seconds |
|
30
|
+
./spec/lib/senec/local/request_spec.rb[1:1:11:1] | passed | 0.00086 seconds |
|
31
|
+
./spec/lib/senec/local/request_spec.rb[1:1:12:1] | passed | 0.00084 seconds |
|
32
|
+
./spec/lib/senec/local/request_spec.rb[1:1:13:1] | passed | 0.0043 seconds |
|
33
|
+
./spec/lib/senec/local/request_spec.rb[1:1:14:1] | passed | 0.00082 seconds |
|
34
|
+
./spec/lib/senec/local/request_spec.rb[1:1:14:2] | passed | 0.00099 seconds |
|
35
|
+
./spec/lib/senec/local/request_spec.rb[1:1:15:1] | passed | 0.0007 seconds |
|
36
|
+
./spec/lib/senec/local/request_spec.rb[1:1:16:1] | passed | 0.00071 seconds |
|
37
|
+
./spec/lib/senec/local/request_spec.rb[1:1:17:1] | passed | 0.00074 seconds |
|
38
|
+
./spec/lib/senec/local/request_spec.rb[1:2:1] | passed | 0.01684 seconds |
|
39
|
+
./spec/lib/senec/local/request_spec.rb[1:3:1] | passed | 0.00747 seconds |
|
40
|
+
./spec/lib/senec/local/request_spec.rb[1:4:1] | passed | 0.00087 seconds |
|
41
|
+
./spec/lib/senec/local/request_spec.rb[1:5:1:1] | passed | 0.001 seconds |
|
42
|
+
./spec/lib/senec/local/request_spec.rb[1:6:1:1] | passed | 0.00061 seconds |
|
43
|
+
./spec/lib/senec/local/request_spec.rb[1:7:1:1:1] | passed | 0.00062 seconds |
|
44
|
+
./spec/lib/senec/local/request_spec.rb[1:7:1:2:1] | passed | 0.00059 seconds |
|
45
|
+
./spec/lib/senec/local/request_spec.rb[1:7:1:3:1] | passed | 0.00502 seconds |
|
46
|
+
./spec/lib/senec/local/state_spec.rb[1:1:1:1] | passed | 0.0056 seconds |
|
47
|
+
./spec/lib/senec/local/state_spec.rb[1:1:2:1] | passed | 0.00471 seconds |
|
48
|
+
./spec/lib/senec/local/state_spec.rb[1:1:3:1] | passed | 0.0046 seconds |
|
49
|
+
./spec/lib/senec/local/state_spec.rb[1:1:4:1] | passed | 0.00455 seconds |
|
50
|
+
./spec/lib/senec/local/state_spec.rb[1:1:5:1] | passed | 0.00007 seconds |
|
51
|
+
./spec/lib/senec/local/value_spec.rb[1:1:1:1] | passed | 0.00007 seconds |
|
52
|
+
./spec/lib/senec/local/value_spec.rb[1:1:1:2] | passed | 0.00008 seconds |
|
53
|
+
./spec/lib/senec/local/value_spec.rb[1:1:2:1] | passed | 0.00009 seconds |
|
54
|
+
./spec/lib/senec/local/value_spec.rb[1:1:2:2] | passed | 0.00005 seconds |
|
55
|
+
./spec/lib/senec/local/value_spec.rb[1:1:3:1] | passed | 0.00004 seconds |
|
56
|
+
./spec/lib/senec/local/value_spec.rb[1:1:3:2] | passed | 0.00004 seconds |
|
57
|
+
./spec/lib/senec/local/value_spec.rb[1:1:4:1] | passed | 0.00004 seconds |
|
58
|
+
./spec/lib/senec/local/value_spec.rb[1:1:4:2] | passed | 0.00004 seconds |
|
59
|
+
./spec/lib/senec/local/value_spec.rb[1:1:5:1] | passed | 0.00004 seconds |
|
60
|
+
./spec/lib/senec/local/value_spec.rb[1:1:5:2] | passed | 0.00004 seconds |
|
61
|
+
./spec/lib/senec/local/value_spec.rb[1:1:6:1] | passed | 0.00006 seconds |
|
62
|
+
./spec/lib/senec/local/value_spec.rb[1:1:6:2] | passed | 0.00004 seconds |
|
63
|
+
./spec/lib/senec/local/value_spec.rb[1:1:7:1] | passed | 0.0001 seconds |
|
64
|
+
./spec/lib/senec/local/value_spec.rb[1:1:7:2] | passed | 0.00003 seconds |
|
65
|
+
./spec/lib/senec/local/value_spec.rb[1:1:8:1] | passed | 0.00006 seconds |
|
66
|
+
./spec/lib/senec/local/value_spec.rb[1:1:9:1] | passed | 0.00005 seconds |
|
67
|
+
./spec/senec_spec.rb[1:1] | passed | 0.00004 seconds |
|
data/.ruby-lsp/Gemfile.lock
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
senec (0.
|
4
|
+
senec (0.20.0)
|
5
5
|
faraday
|
6
6
|
faraday-net_http_persistent
|
7
7
|
faraday-request-timer
|
8
|
+
oauth2
|
8
9
|
|
9
10
|
GEM
|
10
11
|
remote: https://rubygems.org/
|
@@ -26,7 +27,7 @@ GEM
|
|
26
27
|
docile (1.4.1)
|
27
28
|
dotenv (3.1.8)
|
28
29
|
erb (5.0.2)
|
29
|
-
faraday (2.13.
|
30
|
+
faraday (2.13.4)
|
30
31
|
faraday-net_http (>= 2.0, < 3.5)
|
31
32
|
json
|
32
33
|
logger
|
@@ -38,21 +39,34 @@ GEM
|
|
38
39
|
faraday-request-timer (0.2.0)
|
39
40
|
faraday (>= 0.9.0)
|
40
41
|
hashdiff (1.2.0)
|
42
|
+
hashie (5.0.0)
|
41
43
|
io-console (0.8.1)
|
42
44
|
irb (1.15.2)
|
43
45
|
pp (>= 0.6.0)
|
44
46
|
rdoc (>= 4.0.0)
|
45
47
|
reline (>= 0.4.2)
|
46
|
-
json (2.13.
|
48
|
+
json (2.13.2)
|
49
|
+
jwt (3.1.2)
|
50
|
+
base64
|
47
51
|
language_server-protocol (3.17.0.5)
|
48
52
|
lint_roller (1.1.0)
|
49
53
|
logger (1.7.0)
|
54
|
+
multi_xml (0.7.2)
|
55
|
+
bigdecimal (~> 3.1)
|
50
56
|
net-http (0.6.0)
|
51
57
|
uri
|
52
58
|
net-http-persistent (4.0.6)
|
53
59
|
connection_pool (~> 2.2, >= 2.2.4)
|
60
|
+
oauth2 (2.0.12)
|
61
|
+
faraday (>= 0.17.3, < 4.0)
|
62
|
+
jwt (>= 1.0, < 4.0)
|
63
|
+
logger (~> 1.2)
|
64
|
+
multi_xml (~> 0.5)
|
65
|
+
rack (>= 1.2, < 4)
|
66
|
+
snaky_hash (~> 2.0, >= 2.0.3)
|
67
|
+
version_gem (>= 1.1.8, < 3)
|
54
68
|
parallel (1.27.0)
|
55
|
-
parser (3.3.
|
69
|
+
parser (3.3.9.0)
|
56
70
|
ast (~> 2.4.1)
|
57
71
|
racc
|
58
72
|
pp (0.6.2)
|
@@ -64,6 +78,7 @@ GEM
|
|
64
78
|
stringio
|
65
79
|
public_suffix (6.0.2)
|
66
80
|
racc (1.8.1)
|
81
|
+
rack (3.1.16)
|
67
82
|
rainbow (3.1.1)
|
68
83
|
rake (13.3.0)
|
69
84
|
rbs (3.9.4)
|
@@ -88,7 +103,7 @@ GEM
|
|
88
103
|
diff-lcs (>= 1.2.0, < 2.0)
|
89
104
|
rspec-support (~> 3.13.0)
|
90
105
|
rspec-support (3.13.4)
|
91
|
-
rubocop (1.
|
106
|
+
rubocop (1.79.0)
|
92
107
|
json (~> 2.3)
|
93
108
|
language_server-protocol (~> 3.17.0.2)
|
94
109
|
lint_roller (~> 1.1.0)
|
@@ -96,8 +111,9 @@ GEM
|
|
96
111
|
parser (>= 3.3.0.2)
|
97
112
|
rainbow (>= 2.2.2, < 4.0)
|
98
113
|
regexp_parser (>= 2.9.3, < 3.0)
|
99
|
-
rubocop-ast (>= 1.
|
114
|
+
rubocop-ast (>= 1.46.0, < 2.0)
|
100
115
|
ruby-progressbar (~> 1.7)
|
116
|
+
tsort (>= 0.2.0)
|
101
117
|
unicode-display_width (>= 2.4.0, < 4.0)
|
102
118
|
rubocop-ast (1.46.0)
|
103
119
|
parser (>= 3.3.7.2)
|
@@ -127,13 +143,18 @@ GEM
|
|
127
143
|
simplecov_json_formatter (~> 0.1)
|
128
144
|
simplecov-html (0.13.2)
|
129
145
|
simplecov_json_formatter (0.1.4)
|
146
|
+
snaky_hash (2.0.3)
|
147
|
+
hashie (>= 0.1.0, < 6)
|
148
|
+
version_gem (>= 1.1.8, < 3)
|
130
149
|
stringio (3.1.7)
|
150
|
+
tsort (0.2.0)
|
131
151
|
unicode-display_width (3.1.4)
|
132
152
|
unicode-emoji (~> 4.0, >= 4.0.4)
|
133
153
|
unicode-emoji (4.0.4)
|
134
154
|
uri (1.0.3)
|
135
155
|
vcr (6.3.1)
|
136
156
|
base64
|
157
|
+
version_gem (1.1.8)
|
137
158
|
webmock (3.25.1)
|
138
159
|
addressable (>= 2.8.0)
|
139
160
|
crack (>= 0.3.2)
|
@@ -0,0 +1 @@
|
|
1
|
+
2025-07-29T09:58:37+02:00
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
773e2722a3b650e7c004f5ef098dc30412eff29c7eed5fdb3e69aa490418f254
|
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
# Unofficial Ruby Client for SENEC Home
|
7
7
|
|
8
|
-
Access your local SENEC Solar Battery Storage System or the SENEC Cloud (
|
8
|
+
Access your local SENEC Solar Battery Storage System or the SENEC Cloud (App API) from Ruby.
|
9
9
|
|
10
10
|
**WARNING:** I'm not affiliated in any way with the SENEC company.
|
11
11
|
|
@@ -28,59 +28,16 @@ $ gem install senec
|
|
28
28
|
````ruby
|
29
29
|
require 'senec'
|
30
30
|
|
31
|
-
#
|
31
|
+
# Build connection with your credentials
|
32
32
|
connection = Senec::Cloud::Connection.new(username: 'me@example.com', password: 'my-secret-senec-password')
|
33
33
|
|
34
|
-
#
|
35
|
-
puts
|
36
|
-
|
37
|
-
# => {
|
38
|
-
# 'wartungsplan' => {
|
39
|
-
# 'possibleMaintenanceTypes' => [],
|
40
|
-
# 'applicable' => false,
|
41
|
-
# 'maintenanceDueSoon' => false,
|
42
|
-
# 'maintenanceOverdue' => false,
|
43
|
-
# 'minorMaintenancePossible' => false
|
44
|
-
# },
|
45
|
-
# 'suppressedNotificationIds' => [],
|
46
|
-
# 'steuereinheitState' => 'AKKU_VOLL',
|
47
|
-
# 'wartungNotwendig' => false,
|
48
|
-
# 'firmwareVersion' => 826,
|
49
|
-
# 'gridimport' => {
|
50
|
-
# 'today' => 0.0302734375,
|
51
|
-
# 'now' => 0.0
|
52
|
-
# },
|
53
|
-
# 'powergenerated' => {
|
54
|
-
# 'today' => 30.94140625,
|
55
|
-
# 'now' => 2.382683
|
56
|
-
# },
|
57
|
-
# 'consumption' => {
|
58
|
-
# 'today' => 5.501953125,
|
59
|
-
# 'now' => 0.327035
|
60
|
-
# },
|
61
|
-
# 'gridexport' => {
|
62
|
-
# 'today' => 24.779296875,
|
63
|
-
# 'now' => 2.032288
|
64
|
-
# },
|
65
|
-
# 'accuexport' => {
|
66
|
-
# 'today' => 2.55419921875,
|
67
|
-
# 'now' => 0.0
|
68
|
-
# },
|
69
|
-
# 'accuimport' => {
|
70
|
-
# 'today' => 1.84619140625,
|
71
|
-
# 'now' => 0.01752
|
72
|
-
# },
|
73
|
-
# 'acculevel' => {
|
74
|
-
# 'today' => 89.47079467773438,
|
75
|
-
# 'now' => 100.0
|
76
|
-
# },
|
77
|
-
# 'mcuOperationalModeId' => 2,
|
78
|
-
# 'senecBatteryStorageGeneration' => 'V3',
|
79
|
-
# 'machine' => 'MCU',
|
80
|
-
# 'lastupdated' => 1_753_277_119,
|
81
|
-
# 'state' => 13
|
82
|
-
# }
|
34
|
+
# List available systems (with their IDs)
|
35
|
+
puts connection.systems
|
36
|
+
# => {"id" => 999999, "controlUnitNumber" => "1234567890", ...
|
83
37
|
|
38
|
+
# Get the current dashboard data for a specific system
|
39
|
+
puts connection.dashboard(999999)
|
40
|
+
# => {"currently" => {"powerGenerationInW" => 8539.603515625, "powerConsumptionInW" => 765.77, "gridFeedInInW" => 6451.11376953125, "gridDrawInW" => 0.0, "batteryChargeInW" => 1316.9090576171875, "batteryDischargeInW" => 0.0, "batteryLevelInPercent" => 88.88888549804688, "selfSufficiencyInPercent" => 100.0, "wallboxInW" => 0.0}, "today" => {"powerGenerationInWh" => 19687.5, "powerConsumptionInWh" => 4960.93, "gridFeedInInWh" => 15310.546875, "gridDrawInWh" => 28.3203125, "batteryChargeInWh" => 1175.78125, "batteryDischargeInWh" => 1732.421875, "batteryLevelInPercent" => 88.88888549804688, "selfSufficiencyInPercent" => 99.43, "wallboxInWh" => 0.0}, "timestamp" => "2025-07-26T10:55:07Z", "electricVehicleConnected" => false, "numberOfWallboxes" => 0, "systemId" => 999999, "systemType" => "V123", "storageDeviceState" => "CHARGING"}
|
84
41
|
|
85
42
|
### Local access (V2.1 and V3 only)
|
86
43
|
|
data/coverage/.last_run.json
CHANGED