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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8c81bf0bc96f0b9999439a9bf71b3fa8a9c5f800da863993c88f283dbdb38789
4
- data.tar.gz: 1e937cb44485d678cc2253471d034704fa719d83bb6b654e2321db0a78ecf41e
3
+ metadata.gz: 854eed5f0f791ab1eafa06f2e8b4b4bf05645bc6e1f7be0f419ddafe44e98de3
4
+ data.tar.gz: 1dd9b8b3cb56908c91abe6bbd9e4ee33850a76d90a49c3ed447efee445666a46
5
5
  SHA512:
6
- metadata.gz: 18ee7b975cc280a168e5bd9ca2bb9e334d7413f91efdee5f5de1aaf8d33fd5729ef36e0c32fc61c6f83d3460bf7428d48ca306cb258a469291caf2305fa612f3
7
- data.tar.gz: f24b264fe9f0600e25e218531e27ad39f99fb712bf587951b7cbc9b4f54ea0ad47472611ca5b4017778f882e772b008699f324e360c73b5b086924c2e7e642e5
6
+ metadata.gz: 65ba80ecdf6d2d557ecc5f38895f5c3d4cc84c036040e484459921b58f1051134f965091c036afce7e09a79f49d99ec98d1a3b57b91fc2e369cb03cb5a7d1bc6
7
+ data.tar.gz: 0b9b027c738c3eee747e497349586823032694fe7667978cf4ab48f206935e37e7d6fb67c1cded538a0c7aef2419c4ebe126a21bc5e2bf602f0dd09223a9b84e
data/.env CHANGED
@@ -1,6 +1,10 @@
1
1
  SENEC_USERNAME=georg@ledermann.dev
2
2
  SENEC_PASSWORD=g75rnww3y
3
- SENEC_SYSTEM_ID=0
3
+ SENEC_SYSTEM_ID=126852
4
+
5
+ #SENEC_USERNAME=heilmann-leipzig@t-online.de
6
+ #SENEC_PASSWORD=sitten12
7
+ #SENEC_SYSTEM_ID=311370
4
8
 
5
9
  SENEC_HOST=senec
6
10
  SENEC_SCHEMA=https
data/.env.test CHANGED
@@ -1,6 +1,6 @@
1
1
  SENEC_USERNAME=mail@example.com
2
2
  SENEC_PASSWORD=topsecret
3
- SENEC_SYSTEM_ID=0
3
+ SENEC_SYSTEM_ID=999999
4
4
 
5
5
  SENEC_HOST=senec
6
6
  SENEC_SCHEMA=https
data/.rspec_status CHANGED
@@ -1,69 +1,67 @@
1
- example_id | status | run_time |
2
- ------------------------------------------------------ | ------ | --------------- |
3
- ./spec/lib/senec/cloud/connection_spec.rb[1:1:1:1] | passed | 0.01205 seconds |
4
- ./spec/lib/senec/cloud/connection_spec.rb[1:1:2:1] | passed | 0.00345 seconds |
5
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:1:1] | passed | 0.00109 seconds |
6
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:1:2] | passed | 0.00036 seconds |
7
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:2:1:1] | passed | 0.0088 seconds |
8
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:2:1:2] | passed | 0.01001 seconds |
9
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:2:1:3] | passed | 0.01061 seconds |
10
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:2:1:4] | passed | 0.0072 seconds |
11
- ./spec/lib/senec/cloud/stats_overview_spec.rb[1:2:1:5] | passed | 0.00686 seconds |
12
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:1:1] | passed | 0.0003 seconds |
13
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:1:2] | passed | 0.00004 seconds |
14
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:1:3] | passed | 0.00023 seconds |
15
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:1:4] | passed | 0.00063 seconds |
16
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:1:1] | passed | 0.00688 seconds |
17
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:1:2] | passed | 0.00804 seconds |
18
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:1:3] | passed | 0.00888 seconds |
19
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:2:1] | passed | 0.00021 seconds |
20
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:2:2] | passed | 0.00662 seconds |
21
- ./spec/lib/senec/cloud/wallboxes_spec.rb[1:2:3:1] | passed | 0.00627 seconds |
22
- ./spec/lib/senec/local/request_spec.rb[1:1:1:1] | passed | 0.00106 seconds |
23
- ./spec/lib/senec/local/request_spec.rb[1:1:2:1] | passed | 0.00071 seconds |
24
- ./spec/lib/senec/local/request_spec.rb[1:1:3:1] | passed | 0.00062 seconds |
25
- ./spec/lib/senec/local/request_spec.rb[1:1:4:1] | passed | 0.00063 seconds |
26
- ./spec/lib/senec/local/request_spec.rb[1:1:5:1] | passed | 0.00072 seconds |
27
- ./spec/lib/senec/local/request_spec.rb[1:1:6:1] | passed | 0.00058 seconds |
28
- ./spec/lib/senec/local/request_spec.rb[1:1:7:1] | passed | 0.00057 seconds |
29
- ./spec/lib/senec/local/request_spec.rb[1:1:8:1] | passed | 0.00064 seconds |
30
- ./spec/lib/senec/local/request_spec.rb[1:1:9:1] | passed | 0.00062 seconds |
31
- ./spec/lib/senec/local/request_spec.rb[1:1:10:1] | passed | 0.00062 seconds |
32
- ./spec/lib/senec/local/request_spec.rb[1:1:11:1] | passed | 0.00342 seconds |
33
- ./spec/lib/senec/local/request_spec.rb[1:1:12:1] | passed | 0.00089 seconds |
34
- ./spec/lib/senec/local/request_spec.rb[1:1:13:1] | passed | 0.0008 seconds |
35
- ./spec/lib/senec/local/request_spec.rb[1:1:14:1] | passed | 0.00082 seconds |
36
- ./spec/lib/senec/local/request_spec.rb[1:1:14:2] | passed | 0.00092 seconds |
37
- ./spec/lib/senec/local/request_spec.rb[1:1:15:1] | passed | 0.00084 seconds |
38
- ./spec/lib/senec/local/request_spec.rb[1:1:16:1] | passed | 0.001 seconds |
39
- ./spec/lib/senec/local/request_spec.rb[1:1:17:1] | passed | 0.00166 seconds |
40
- ./spec/lib/senec/local/request_spec.rb[1:2:1] | passed | 0.01896 seconds |
41
- ./spec/lib/senec/local/request_spec.rb[1:3:1] | passed | 0.00842 seconds |
42
- ./spec/lib/senec/local/request_spec.rb[1:4:1] | passed | 0.00175 seconds |
43
- ./spec/lib/senec/local/request_spec.rb[1:5:1:1] | passed | 0.00123 seconds |
44
- ./spec/lib/senec/local/request_spec.rb[1:6:1:1] | passed | 0.00093 seconds |
45
- ./spec/lib/senec/local/request_spec.rb[1:7:1:1:1] | passed | 0.00088 seconds |
46
- ./spec/lib/senec/local/request_spec.rb[1:7:1:2:1] | passed | 0.00056 seconds |
47
- ./spec/lib/senec/local/request_spec.rb[1:7:1:3:1] | passed | 0.0051 seconds |
48
- ./spec/lib/senec/local/state_spec.rb[1:1:1:1] | passed | 0.0059 seconds |
49
- ./spec/lib/senec/local/state_spec.rb[1:1:2:1] | passed | 0.00488 seconds |
50
- ./spec/lib/senec/local/state_spec.rb[1:1:3:1] | passed | 0.00462 seconds |
51
- ./spec/lib/senec/local/state_spec.rb[1:1:4:1] | passed | 0.00491 seconds |
52
- ./spec/lib/senec/local/state_spec.rb[1:1:5:1] | passed | 0.00008 seconds |
53
- ./spec/lib/senec/local/value_spec.rb[1:1:1:1] | passed | 0.00006 seconds |
54
- ./spec/lib/senec/local/value_spec.rb[1:1:1:2] | passed | 0.00007 seconds |
55
- ./spec/lib/senec/local/value_spec.rb[1:1:2:1] | passed | 0.00015 seconds |
56
- ./spec/lib/senec/local/value_spec.rb[1:1:2:2] | passed | 0.00004 seconds |
57
- ./spec/lib/senec/local/value_spec.rb[1:1:3:1] | passed | 0.00004 seconds |
58
- ./spec/lib/senec/local/value_spec.rb[1:1:3:2] | passed | 0.00003 seconds |
59
- ./spec/lib/senec/local/value_spec.rb[1:1:4:1] | passed | 0.00004 seconds |
60
- ./spec/lib/senec/local/value_spec.rb[1:1:4:2] | passed | 0.00003 seconds |
61
- ./spec/lib/senec/local/value_spec.rb[1:1:5:1] | passed | 0.00004 seconds |
62
- ./spec/lib/senec/local/value_spec.rb[1:1:5:2] | passed | 0.00004 seconds |
63
- ./spec/lib/senec/local/value_spec.rb[1:1:6:1] | passed | 0.00003 seconds |
64
- ./spec/lib/senec/local/value_spec.rb[1:1:6:2] | passed | 0.00004 seconds |
65
- ./spec/lib/senec/local/value_spec.rb[1:1:7:1] | passed | 0.00004 seconds |
66
- ./spec/lib/senec/local/value_spec.rb[1:1:7:2] | passed | 0.00003 seconds |
67
- ./spec/lib/senec/local/value_spec.rb[1:1:8:1] | passed | 0.00005 seconds |
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 |
@@ -1,10 +1,11 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- senec (0.19.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.3)
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.0)
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.8.0)
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.78.0)
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.45.1, < 2.0)
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
- 8153269239a500b4008859350acabed4f88d9cf1d06554b279dc100a09392858
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 (mein-senec.de) from Ruby.
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
- # Login to the SENEC cloud (mein-senec.de):
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
- # Get the Dashboard data of first systems (without knowing the ID):
35
- puts Senec::Cloud::Dashboard[connection].first.data
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
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "result": {
3
- "line": 100.0
3
+ "line": 99.63
4
4
  }
5
5
  }