iobroker.waip-web 0.7.4 → 0.7.7
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/CHANGELOG_OLD.md +385 -0
- package/README.md +31 -384
- package/io-package.json +27 -27
- package/package.json +7 -3
package/CHANGELOG_OLD.md
ADDED
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
# Older changes
|
|
2
|
+
|
|
3
|
+
### 0.7.2 (2026-08-21)
|
|
4
|
+
|
|
5
|
+
- README is now English-only (per the official ioBroker adapter checker,
|
|
6
|
+
which flags mixed-language READMEs); the German version moved to a
|
|
7
|
+
separate [README.de.md](README.de.md), linked near the top.
|
|
8
|
+
- Moved the License section to the very end of the file (was before the
|
|
9
|
+
Changelog) - the checker requires License to be the last section.
|
|
10
|
+
- `package.json`: raised `engines.node` to `>=20` and `@iobroker/adapter-core`
|
|
11
|
+
to `^3.4.1`.
|
|
12
|
+
- `io-package.json`: raised the `js-controller` dependency to `>=6.0.11`
|
|
13
|
+
and the `admin` dependency to `>=7.6.17`; removed the `0.7.0` news
|
|
14
|
+
entry (never published to npm, only `0.7.1` and later actually are).
|
|
15
|
+
- `admin/jsonConfig.json`: added the root `"i18n": true` attribute (now
|
|
16
|
+
required since the fields resolve translations from `admin/i18n/*.json`)
|
|
17
|
+
and explicit `xs`/`xl` grid sizes on all fields.
|
|
18
|
+
- `main.js`: `require('http')`/`require('https')`/`require('url')` now
|
|
19
|
+
use the `node:` prefix for Node's built-in modules.
|
|
20
|
+
- `.gitignore`: added `.commitinfo`.
|
|
21
|
+
- Removed `.npmignore` - redundant with the `files` allowlist already
|
|
22
|
+
used in `package.json`.
|
|
23
|
+
- CI: `adapter-tests` now explicitly declares `needs: check-and-lint`;
|
|
24
|
+
raised the Node.js version used by the `check-and-lint` and `deploy`
|
|
25
|
+
jobs.
|
|
26
|
+
|
|
27
|
+
### 0.7.1 (2026-08-21)
|
|
28
|
+
|
|
29
|
+
- Added a License badge to the README.
|
|
30
|
+
|
|
31
|
+
### 0.7.0 (2026-08-21)
|
|
32
|
+
|
|
33
|
+
- Prepared the admin UI for community translation via
|
|
34
|
+
[ioBroker's Weblate](https://weblate.iobroker.net/engage/adapters/):
|
|
35
|
+
added `@iobroker/adapter-dev` as a dev dependency (`npm run
|
|
36
|
+
translate`), converted `admin/jsonConfig.json`'s `label`/`help` fields
|
|
37
|
+
from inline `en`/`de` objects to plain English keys, and added
|
|
38
|
+
`admin/i18n/{en,de,ru,pt,nl,fr,it,es,pl,uk,zh-cn}.json` (German
|
|
39
|
+
curated manually, the rest auto-translated via the official
|
|
40
|
+
`translate-adapter` tool — the same tool that already maintains the
|
|
41
|
+
`io-package.json` translations). Added a "Translation status" badge to
|
|
42
|
+
the README; like the "installed"/"stable" badges, it only shows real
|
|
43
|
+
data once the adapter is actually registered as a component on
|
|
44
|
+
weblate.iobroker.net (not done yet).
|
|
45
|
+
|
|
46
|
+
### 0.6.11 (2026-08-21)
|
|
47
|
+
|
|
48
|
+
- README: logo now shown enlarged (115×115) via a new
|
|
49
|
+
`admin/waip-web-logo.png`, nearest-neighbor-scaled from the 32×32
|
|
50
|
+
source icon for a crisp (if visibly pixelated) result instead of a
|
|
51
|
+
blurry interpolated one — no higher-resolution source exists anywhere
|
|
52
|
+
in the WAIP-Web ecosystem (checked the Lausitz instance and the
|
|
53
|
+
upstream project, both use the same 32×32 favicon). The actual
|
|
54
|
+
ioBroker adapter icon (`admin/waip-web.png`, referenced from
|
|
55
|
+
`io-package.json`) is unchanged.
|
|
56
|
+
- Simplified the README title back to "ioBroker.waip-web".
|
|
57
|
+
|
|
58
|
+
### 0.6.10 (2026-08-21)
|
|
59
|
+
|
|
60
|
+
- Added the adapter logo and npm/installation badges (NPM version,
|
|
61
|
+
downloads, installed, stable) to the README, matching standard
|
|
62
|
+
ioBroker adapter conventions. The "installed"/"stable" badges won't
|
|
63
|
+
show meaningful data until the adapter is listed in the official
|
|
64
|
+
[ioBroker.repositories](https://github.com/ioBroker/ioBroker.repositories)
|
|
65
|
+
("latest" repository PR pending), but will populate automatically once
|
|
66
|
+
it is.
|
|
67
|
+
|
|
68
|
+
### 0.6.9 (2026-08-21)
|
|
69
|
+
|
|
70
|
+
- Fixed adapter-checker finding **[E254]**: removed `common.news` entries
|
|
71
|
+
for versions that were never actually published to npm (`0.6.1`–`0.6.5`,
|
|
72
|
+
`0.6.7` were only version bumps in git/GitHub, without a matching
|
|
73
|
+
tagged npm release). `common.news` now only lists versions that really
|
|
74
|
+
exist on the npm registry (`0.6.6`, `0.6.8`); the full history remains
|
|
75
|
+
in this changelog regardless of what was actually published.
|
|
76
|
+
|
|
77
|
+
### 0.6.8 (2026-08-21)
|
|
78
|
+
|
|
79
|
+
- Renamed the README title to "ioBroker-Adapter (ioBroker.waip-web)".
|
|
80
|
+
- This release doubles as the first end-to-end test of the automatic
|
|
81
|
+
npm publish via Trusted Publishing introduced in 0.6.7.
|
|
82
|
+
|
|
83
|
+
### 0.6.7 (2026-08-21)
|
|
84
|
+
|
|
85
|
+
- Enabled automatic npm publishing: the `deploy` job in
|
|
86
|
+
`.github/workflows/test-and-release.yml` is no longer commented out
|
|
87
|
+
and now runs on every version tag (`vX.Y.Z`), publishing to npm via
|
|
88
|
+
[Trusted Publishing](https://docs.npmjs.com/trusted-publishers) (OIDC,
|
|
89
|
+
no `NPM_TOKEN` secret needed).
|
|
90
|
+
|
|
91
|
+
### 0.6.6 (2026-08-21)
|
|
92
|
+
|
|
93
|
+
- Added `.gitattributes` `eol=lf` so all contributors get consistent LF
|
|
94
|
+
line endings regardless of their local git `autocrlf` setting
|
|
95
|
+
(previously caused hundreds of spurious local lint errors on Windows
|
|
96
|
+
without affecting CI, since CI checkouts weren't affected).
|
|
97
|
+
- Added `package-lock.json` and switched CI to the default `npm ci` with
|
|
98
|
+
caching instead of `npm install` without caching, now that a lockfile
|
|
99
|
+
exists.
|
|
100
|
+
|
|
101
|
+
### 0.6.5 (2026-08-21)
|
|
102
|
+
|
|
103
|
+
- Fixed all issues reported by the official [ioBroker adapter checker](https://adapter-check.iobroker.in/):
|
|
104
|
+
- Bumped the required `js-controller` dependency to `>=5.0.19` and `@iobroker/adapter-core` to `^3.2.2`
|
|
105
|
+
- Replaced the deprecated `common.license`/`common.title`/`common.main` fields with `common.licenseInformation`/`common.titleLang`; `common.main` is redundant with `package.json`'s `main` field
|
|
106
|
+
- Added the required `common.tier` (`2` - external/cloud data source)
|
|
107
|
+
- Added translations of `titleLang`, `desc` and the kept `common.news` entries into all 10 additional ioBroker admin languages (ru, pt, nl, fr, it, es, pl, uk, zh-cn)
|
|
108
|
+
- Trimmed `common.news` to the 7 most recent entries, as recommended (the repository builder truncates there anyway); the full history stays in this changelog
|
|
109
|
+
|
|
110
|
+
### 0.6.4 (2026-08-21)
|
|
111
|
+
|
|
112
|
+
- New state `status.registeredMonitorName` shows the registered monitor
|
|
113
|
+
as text without the ID (e.g. "Leitstelle: Lausitz"), resolved once at
|
|
114
|
+
startup from the same `/waip/` overview page as the admin dropdown.
|
|
115
|
+
`status.registeredMonitor` is unchanged and keeps showing the ID.
|
|
116
|
+
|
|
117
|
+
### 0.6.3 (2026-08-21)
|
|
118
|
+
|
|
119
|
+
- Admin UI: the Monitor ID field is now always full-width, placed on its
|
|
120
|
+
own row below the WAIP server URL, so the (sometimes long) dropdown
|
|
121
|
+
entries have enough room to display without being cramped.
|
|
122
|
+
|
|
123
|
+
### 0.6.2 (2026-08-21)
|
|
124
|
+
|
|
125
|
+
- Monitor dropdown entries are now sorted by numeric monitor ID instead
|
|
126
|
+
of following the source page's (per-category) order.
|
|
127
|
+
|
|
128
|
+
### 0.6.1 (2026-08-21)
|
|
129
|
+
|
|
130
|
+
- Monitor dropdown entries now start with the actual monitor ID, e.g.
|
|
131
|
+
"4 - Leitstelle: Lausitz", so the numeric ID stays visible even after
|
|
132
|
+
a monitor has been selected.
|
|
133
|
+
|
|
134
|
+
### 0.6.0 (2026-08-21)
|
|
135
|
+
|
|
136
|
+
- **Admin UI:** Monitor ID is now a live dropdown (`selectSendTo`) instead
|
|
137
|
+
of a plain text field. The adapter fetches the configured server's
|
|
138
|
+
public `/waip/` overview page on demand and offers every monitor it
|
|
139
|
+
finds there, grouped by Leitstelle/Kreis/Träger/Wache, with "Alle
|
|
140
|
+
Wachalarme" (ID `0`) as an explicit first option. Manual entry remains
|
|
141
|
+
available if the server can't be reached or uses a different page
|
|
142
|
+
layout, so existing configurations keep working unchanged.
|
|
143
|
+
- Removed the static "session keepalive interval" info text from the
|
|
144
|
+
admin UI (the behavior itself is unchanged).
|
|
145
|
+
- Added help text to the "Registration timeout" and "Reconnect delay"
|
|
146
|
+
fields.
|
|
147
|
+
|
|
148
|
+
### 0.5.1 (2026-08-21)
|
|
149
|
+
|
|
150
|
+
- **Logging:** Reclassified log levels so `warn` becomes a reliable signal
|
|
151
|
+
again. Session-cookie rotation, the known "Fehler beim Erneuern der
|
|
152
|
+
Session" server message, and detected server restarts are now logged
|
|
153
|
+
as `info` instead of `warn`, since they're part of this instance's
|
|
154
|
+
normal, self-healing ~10-minute session cycle. Events discarded for a
|
|
155
|
+
different monitor ID are now `info` (frequency remains tracked via
|
|
156
|
+
`debug.ignoredCount`). Failures that only affect internal housekeeping
|
|
157
|
+
(`debug.monitorAudit`, socket cleanup) are now `debug`. A duplicate
|
|
158
|
+
`connect_error` log line (logged once at `warn`, once at `info`) was
|
|
159
|
+
removed. Introduced `error` level for cases where an incident,
|
|
160
|
+
feedback, route or TTS event genuinely failed to be processed (actual
|
|
161
|
+
data loss), so these now stand out instead of being buried among
|
|
162
|
+
routine `warn` noise.
|
|
163
|
+
|
|
164
|
+
### 0.5.0 (2026-08-20)
|
|
165
|
+
|
|
166
|
+
- **Behavior change:** On `io.standby`, all `einsatz.*` states (including
|
|
167
|
+
`einsatz.json` and all counters) are now cleared instead of leaving the
|
|
168
|
+
finished incident's data in place – matching the official frontend,
|
|
169
|
+
which also clears keyword, location data etc. on standby.
|
|
170
|
+
`status.alarmAktiv` is therefore now a reliable switch for whether
|
|
171
|
+
`einsatz.*` currently holds real live data. The finished incident
|
|
172
|
+
remains fully available via `einsatz.history10` (archived there first).
|
|
173
|
+
|
|
174
|
+
### 0.4.9 (2026-08-20)
|
|
175
|
+
|
|
176
|
+
- **CI fix:** Reverted a self-introduced, unnecessary line wrap in
|
|
177
|
+
`connect()` (engine-packet preview) – `prettier/prettier` flagged it as
|
|
178
|
+
superfluous; the line actually fits on one line within the configured
|
|
179
|
+
print width.
|
|
180
|
+
|
|
181
|
+
### 0.4.8 (2026-08-20)
|
|
182
|
+
|
|
183
|
+
- **CI fix:** Fixed the final 16 lint errors – this time the complete,
|
|
184
|
+
non-truncated error list including the exact desired replacement text
|
|
185
|
+
was available, so every location could be corrected precisely 1:1
|
|
186
|
+
(line wraps for overly long calls/objects, one `prefer-template`
|
|
187
|
+
case). Lint should now be fully green.
|
|
188
|
+
|
|
189
|
+
### 0.4.7 (2026-08-20)
|
|
190
|
+
|
|
191
|
+
- **CI fix:** Fixed the remaining lint errors in `main.js` – consistently
|
|
192
|
+
applied `curly` (braces even for single-line `if`/`for`),
|
|
193
|
+
`no-unused-vars` for empty `catch` blocks (`catch (e) {}` → `catch {}`
|
|
194
|
+
where `e` isn't used), and `arrowParens: avoid` (removed parentheses
|
|
195
|
+
around single-parameter arrow functions). Purely mechanical code-style
|
|
196
|
+
fixes, no behavior change.
|
|
197
|
+
|
|
198
|
+
### 0.4.6 (2026-08-20)
|
|
199
|
+
|
|
200
|
+
- **CI fix:** The `lint` step failed with hundreds of formatting errors
|
|
201
|
+
(e.g. "Replace 'x' with "x""). Cause: `@iobroker/eslint-config`
|
|
202
|
+
requires its own `prettier.config.mjs` in addition to
|
|
203
|
+
`eslint.config.mjs`, re-exporting the ioBroker formatting style
|
|
204
|
+
(single quotes, 4-space indentation, `trailingComma: 'all'`) – without
|
|
205
|
+
it, Prettier fell back to its own defaults (double quotes). File added.
|
|
206
|
+
|
|
207
|
+
### 0.4.5 (2026-08-20)
|
|
208
|
+
|
|
209
|
+
- **CI fix:** The first pipeline run failed with "Dependencies lock file
|
|
210
|
+
is not found". Cause: `actions/setup-node`'s built-in npm caching
|
|
211
|
+
needs a `package-lock.json` for its cache key, independent of the
|
|
212
|
+
install command used. Since none is committed to the repo yet,
|
|
213
|
+
`package-cache: 'false'` is now set on both jobs.
|
|
214
|
+
|
|
215
|
+
### 0.4.4 (2026-08-20)
|
|
216
|
+
|
|
217
|
+
- Set up the CI pipeline (`.github/workflows/test-and-release.yml`),
|
|
218
|
+
following the standard pattern of the official
|
|
219
|
+
`@iobroker/create-adapter` template: a `check-and-lint` job (ESLint
|
|
220
|
+
via `@iobroker/eslint-config`) and an `adapter-tests` matrix (Node
|
|
221
|
+
20/22/24 × Ubuntu/Windows/macOS) via the central
|
|
222
|
+
`testing-action-check`/`testing-action-adapter` actions. Added
|
|
223
|
+
`test/package.js` and `test/integration.js` (`@iobroker/testing`)
|
|
224
|
+
plus `eslint.config.mjs` for this; bumped `@iobroker/testing` to
|
|
225
|
+
`^5.2.2`. Since no `package-lock.json` is committed yet, the pipeline
|
|
226
|
+
uses `npm install` instead of `npm ci`.
|
|
227
|
+
- Raised `engines.node` in `package.json` to `>=18` (matching the tested
|
|
228
|
+
Node versions and `@iobroker/testing` 5.x's requirements)
|
|
229
|
+
- A `deploy` job (automatic npm publishing) is prepared but commented
|
|
230
|
+
out until npm Trusted Publishing is set up
|
|
231
|
+
|
|
232
|
+
### 0.4.3 (2026-08-20)
|
|
233
|
+
|
|
234
|
+
- **Bugfix:** `einsatz.id` and `einsatz.sondersignal` were declared as
|
|
235
|
+
`string`, but the server actually sends them as numbers
|
|
236
|
+
(`sondersignal`, per `client_waip.js`: `switch (data.sondersignal) {
|
|
237
|
+
case 1: ... }`) – ioBroker therefore logged a type warning on every
|
|
238
|
+
incident. Both states are now declared as `number`. Existing objects
|
|
239
|
+
with the old (wrong) type are automatically recreated on the next
|
|
240
|
+
adapter start (`migrateObjectTypes()`, generic for future type
|
|
241
|
+
corrections).
|
|
242
|
+
|
|
243
|
+
### 0.4.2 (2026-08-20)
|
|
244
|
+
|
|
245
|
+
- Removed the "Session keepalive interval – upper bound" config field
|
|
246
|
+
again: the official `/js/session_keepalive.js` on the site hard-codes
|
|
247
|
+
this upper bound at 5 minutes and doesn't make it configurable. Having
|
|
248
|
+
an admin field for it wrongly suggested a fixed interval, even though
|
|
249
|
+
the actual renewal has long been fully automatic (see 0.4.1). The
|
|
250
|
+
upper bound is now likewise fixed at 5 minutes.
|
|
251
|
+
|
|
252
|
+
### 0.4.1 (2026-08-20)
|
|
253
|
+
|
|
254
|
+
- **Robustness:** The session keepalive interval is now adaptive instead
|
|
255
|
+
of a fixed assumption. WAIP-Web's source code (`server/app_cfg.js`)
|
|
256
|
+
shows that the session cookie's lifetime is configurable per instance
|
|
257
|
+
via an environment variable (server default: 60s instead of the
|
|
258
|
+
previously assumed 10 minutes) – the adapter now derives the renewal
|
|
259
|
+
interval from the expiry time actually reported by the server
|
|
260
|
+
(matching `/js/session_keepalive.js` on the site: 80% of the observed
|
|
261
|
+
lifetime, min. 55s, at most the configured upper bound). The "Session
|
|
262
|
+
keepalive interval" config option is accordingly now an upper bound
|
|
263
|
+
rather than a fixed interval.
|
|
264
|
+
- Corrected a comment about `io.version`/server restarts: per
|
|
265
|
+
`server/auth.js`, WAIP-Web stores sessions persistently (SQLite), not
|
|
266
|
+
in-memory – a restart therefore normally doesn't clear them. The
|
|
267
|
+
proactive session refresh + reconnect on server restart remains as a
|
|
268
|
+
general safeguard, only the previous justification was inaccurate.
|
|
269
|
+
|
|
270
|
+
### 0.4.0 (2026-08-20)
|
|
271
|
+
|
|
272
|
+
- **Restructured the object tree:** Feedback and routes are 1:n lists
|
|
273
|
+
per incident and now live as nested JSON arrays inside one overall
|
|
274
|
+
object `einsatz.json` (including `emAlarmiert[]`, `emWeitere[]`,
|
|
275
|
+
`routen[]`, `rueckmeldungen[]`) instead of several loose states.
|
|
276
|
+
- `einsatz.history10` replaces `history.last10` – now with the **full**
|
|
277
|
+
nested incident object per entry instead of just 6 reduced fields.
|
|
278
|
+
- New counters directly under `einsatz.*`: `routenGesamt`,
|
|
279
|
+
`rueckmeldungGesamt`, `rueckmeldungAnzahl.{ek,gf,zf,vf,agt,fzf,ma,med}`
|
|
280
|
+
(replaces `rueckmeldung.counts.*`).
|
|
281
|
+
- `einsatz.latitude`/`einsatz.longitude` replace
|
|
282
|
+
`geo.latitude`/`geo.longitude` (position is additionally available in
|
|
283
|
+
`einsatz.json.position`).
|
|
284
|
+
- New state `tts.history10` (last 10 TTS announcements).
|
|
285
|
+
- **Removed:** the entire `vis.*` channel, `json.raw`, `json.einsatz`,
|
|
286
|
+
`geo.position`, `rueckmeldung.last.json`, `routen.json`,
|
|
287
|
+
`routen.count`, `einsatz.emWeitere` (now part of `einsatz.json`).
|
|
288
|
+
- The adapter automatically removes all obsolete objects from the
|
|
289
|
+
previous structure on its first start after the update
|
|
290
|
+
(`cleanupObsoleteObjects()`).
|
|
291
|
+
|
|
292
|
+
### 0.3.4 (2026-08-20)
|
|
293
|
+
|
|
294
|
+
- All state names (`common.name`) consistently switched to German
|
|
295
|
+
(previously a mix of English and German) – the adapter only makes
|
|
296
|
+
sense for German-speaking users anyway
|
|
297
|
+
|
|
298
|
+
### 0.3.3 (2026-08-20)
|
|
299
|
+
|
|
300
|
+
- **Bugfix (potential data loss):** For a specific monitor ID (≠ `0`),
|
|
301
|
+
events were silently discarded ("unknownMonitor") after the
|
|
302
|
+
registration timeout elapsed, because real WAIP payloads, per
|
|
303
|
+
`client_waip.js`, **never** contain a monitor-identifying field – that
|
|
304
|
+
assignment happens entirely server-side via Socket.IO rooms. As a
|
|
305
|
+
result, alarm delivery could stop completely after 10s even though
|
|
306
|
+
the connection was technically up. `status.registrationAccepted`
|
|
307
|
+
stayed permanently `false` for the same reason, even for the global
|
|
308
|
+
monitor (`0`). Now any received event confirms the registration;
|
|
309
|
+
events are only discarded if a payload explicitly names a different
|
|
310
|
+
monitor ID.
|
|
311
|
+
|
|
312
|
+
### 0.3.2 (2026-08-20)
|
|
313
|
+
|
|
314
|
+
- Also switched the "Registration timeout" and "Reconnect delay" config
|
|
315
|
+
fields from milliseconds to seconds (`registrationTimeout` →
|
|
316
|
+
`registrationTimeoutSec`, default `10`; `reconnectDelay` →
|
|
317
|
+
`reconnectDelaySec`, default `5`). Existing instances without a newly
|
|
318
|
+
set value automatically use the defaults.
|
|
319
|
+
|
|
320
|
+
### 0.3.1 (2026-08-20)
|
|
321
|
+
|
|
322
|
+
- Switched the "Session keepalive interval" config field from
|
|
323
|
+
milliseconds to seconds (`sessionKeepaliveInterval` →
|
|
324
|
+
`sessionKeepaliveIntervalSec`, still defaulting to 5 min = `300`).
|
|
325
|
+
Existing instances without a newly set value automatically use the
|
|
326
|
+
default.
|
|
327
|
+
|
|
328
|
+
### 0.3.0 (2026-08-20)
|
|
329
|
+
|
|
330
|
+
- **Bugfix:** `wgs84_x`/`wgs84_y` were swapped (latitude/longitude). Per
|
|
331
|
+
the official web frontend (`client_waip.js`), `wgs84_x = latitude,
|
|
332
|
+
wgs84_y = longitude` – contrary to the usual GIS convention.
|
|
333
|
+
`geo.latitude`/`geo.longitude` were therefore swapped for directly
|
|
334
|
+
transmitted coordinates (not the GeoJSON fallback path).
|
|
335
|
+
- Added the missing `io.standby` handler: `status.alarmAktiv` was
|
|
336
|
+
previously never reset when an incident ended
|
|
337
|
+
- Captured new incident fields (previously only contained in the raw
|
|
338
|
+
`json.raw`/`json.einsatz`, now as their own states): `zeitstempel`,
|
|
339
|
+
`einsatznummer`, `objekt`, `objektteil`, `strasse`, `hausnummer`,
|
|
340
|
+
`einsatzdetails`, `besonderheiten`, `permissions`
|
|
341
|
+
- `em_alarmiert` (alerted resources) is now stored in
|
|
342
|
+
`vis.fahrzeugTabelle`, `em_weitere` in `einsatz.emWeitere`
|
|
343
|
+
- Feedback is now collected per incident (`vis.rueckmeldungenTabelle`)
|
|
344
|
+
and aggregated into counters per role/capability
|
|
345
|
+
(`rueckmeldung.counts.*`), mirroring the live badges
|
|
346
|
+
(EK/GF/ZF/VF/AGT/FZF/MA/MED) on the web UI
|
|
347
|
+
- New handlers for `io.error` (→ `debug.lastError`) and `io.version`
|
|
348
|
+
(server-restart detection → session-cookie refresh + forced reconnect)
|
|
349
|
+
- Generalized `reconnectForRotatedSession()` into the more generic
|
|
350
|
+
`forceReconnect(reason)` (now also used on a server version change)
|
|
351
|
+
|
|
352
|
+
### 0.2.1 (2026-08-20)
|
|
353
|
+
|
|
354
|
+
- Detected session-cookie rotation: if `/session/keepalive` returns a
|
|
355
|
+
different cookie value than before (e.g. because the old session was
|
|
356
|
+
already invalid server-side – a missed keepalive, a server restart
|
|
357
|
+
with an in-memory session store), an existing Socket.IO connection is
|
|
358
|
+
now actively rebuilt with the new session instead of waiting for a
|
|
359
|
+
silent failure
|
|
360
|
+
|
|
361
|
+
### 0.2.0 (2026-08-20)
|
|
362
|
+
|
|
363
|
+
- Introduced session-cookie management: the adapter fetches and renews
|
|
364
|
+
the WAIP server's `connect.sid` session cookie itself (`GET
|
|
365
|
+
/session/keepalive`, matching `/js/session_keepalive.js` on the site)
|
|
366
|
+
and attaches it to the Socket.IO connection. Fixes alarm delivery
|
|
367
|
+
stopping after about 10 minutes without an active browser session.
|
|
368
|
+
- New state `debug.sessionExpires` and a new config option "Session
|
|
369
|
+
keepalive interval (ms)" (default `300000`)
|
|
370
|
+
|
|
371
|
+
### 0.1.1 (2026-08-20)
|
|
372
|
+
|
|
373
|
+
- Adopted the favicon from `wachalarm.leitstelle-lausitz.de` as the
|
|
374
|
+
adapter icon (`admin/waip-web.png`), replacing the previous
|
|
375
|
+
placeholder
|
|
376
|
+
- Renamed the GitHub repository from `ioBroker.WAIP-Web` to
|
|
377
|
+
`ioBroker.waip-web` (uppercase letters in the repo name prevented
|
|
378
|
+
installation via `iobroker url` with `Process exited with code 25`);
|
|
379
|
+
updated all URLs in `package.json`/`io-package.json` accordingly
|
|
380
|
+
|
|
381
|
+
### 0.1.0 (2026-08-20)
|
|
382
|
+
|
|
383
|
+
- Initial version: ported the original "WAIP Instrumented v3.9" ioBroker
|
|
384
|
+
JavaScript-adapter script into a standalone adapter. The URL/monitor
|
|
385
|
+
ID now come from the admin configuration instead of a runtime state.
|
package/README.md
CHANGED
|
@@ -206,6 +206,33 @@ inside the JSON value, not their own ioBroker states.
|
|
|
206
206
|
|
|
207
207
|
## Changelog
|
|
208
208
|
|
|
209
|
+
### 0.7.7 (2026-08-21)
|
|
210
|
+
|
|
211
|
+
- Fixed **[E254]**: removed the orphaned `0.7.5` entry from
|
|
212
|
+
`common.news` - like `0.7.0` and `0.7.3` before it, that version was
|
|
213
|
+
never actually tagged/published to npm (`0.7.4` was followed directly
|
|
214
|
+
by `0.7.6`, which is now confirmed live under `latest`).
|
|
215
|
+
|
|
216
|
+
### 0.7.6 (2026-08-21)
|
|
217
|
+
|
|
218
|
+
- Fixed **[W6019]** and **[W0062]**: added `@alcalzone/release-script`
|
|
219
|
+
and `@alcalzone/release-script-plugin-iobroker` as dev dependencies
|
|
220
|
+
(with an `npm run release` script), and split this changelog - the 5
|
|
221
|
+
most recent entries stay here, everything older moved to
|
|
222
|
+
[CHANGELOG_OLD.md](CHANGELOG_OLD.md). Our existing manual
|
|
223
|
+
version-bump/tag workflow (see below) is unchanged; the tool is
|
|
224
|
+
available but not actively used for releasing yet.
|
|
225
|
+
|
|
226
|
+
### 0.7.5 (2026-08-21)
|
|
227
|
+
|
|
228
|
+
*(Also never tagged/published to npm - superseded directly by 0.7.6.)*
|
|
229
|
+
|
|
230
|
+
- Fixed **[E2004]**: removed the orphaned `0.7.3` entry from
|
|
231
|
+
`common.news` in `io-package.json` - that version (see below) was
|
|
232
|
+
never actually tagged/published to npm, `0.7.2` was followed directly
|
|
233
|
+
by `0.7.4`. Confirmed via a bot recheck that every other finding from
|
|
234
|
+
the last two rounds is now fixed.
|
|
235
|
+
|
|
209
236
|
### 0.7.4 (2026-08-21)
|
|
210
237
|
|
|
211
238
|
- Bumped the `ioBroker/testing-action-check` GitHub Action used by the
|
|
@@ -217,6 +244,9 @@ inside the JSON value, not their own ioBroker states.
|
|
|
217
244
|
|
|
218
245
|
### 0.7.3 (2026-08-21)
|
|
219
246
|
|
|
247
|
+
*(Never tagged/published to npm - superseded directly by 0.7.4; kept
|
|
248
|
+
here for a complete history of what was worked on.)*
|
|
249
|
+
|
|
220
250
|
- Addressed further findings from the official ioBroker Check and
|
|
221
251
|
Service Bot (which re-scans the repository after every push):
|
|
222
252
|
- Removed the deprecated `common.materialize` field from
|
|
@@ -228,390 +258,7 @@ inside the JSON value, not their own ioBroker states.
|
|
|
228
258
|
- Added `.github/dependabot.yml` for automated dependency updates
|
|
229
259
|
(weekly `npm`/`github-actions` checks)
|
|
230
260
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
- README is now English-only (per the official ioBroker adapter checker,
|
|
234
|
-
which flags mixed-language READMEs); the German version moved to a
|
|
235
|
-
separate [README.de.md](README.de.md), linked near the top.
|
|
236
|
-
- Moved the License section to the very end of the file (was before the
|
|
237
|
-
Changelog) - the checker requires License to be the last section.
|
|
238
|
-
- `package.json`: raised `engines.node` to `>=20` and `@iobroker/adapter-core`
|
|
239
|
-
to `^3.4.1`.
|
|
240
|
-
- `io-package.json`: raised the `js-controller` dependency to `>=6.0.11`
|
|
241
|
-
and the `admin` dependency to `>=7.6.17`; removed the `0.7.0` news
|
|
242
|
-
entry (never published to npm, only `0.7.1` and later actually are).
|
|
243
|
-
- `admin/jsonConfig.json`: added the root `"i18n": true` attribute (now
|
|
244
|
-
required since the fields resolve translations from `admin/i18n/*.json`)
|
|
245
|
-
and explicit `xs`/`xl` grid sizes on all fields.
|
|
246
|
-
- `main.js`: `require('http')`/`require('https')`/`require('url')` now
|
|
247
|
-
use the `node:` prefix for Node's built-in modules.
|
|
248
|
-
- `.gitignore`: added `.commitinfo`.
|
|
249
|
-
- Removed `.npmignore` - redundant with the `files` allowlist already
|
|
250
|
-
used in `package.json`.
|
|
251
|
-
- CI: `adapter-tests` now explicitly declares `needs: check-and-lint`;
|
|
252
|
-
raised the Node.js version used by the `check-and-lint` and `deploy`
|
|
253
|
-
jobs.
|
|
254
|
-
|
|
255
|
-
### 0.7.1 (2026-08-21)
|
|
256
|
-
|
|
257
|
-
- Added a License badge to the README.
|
|
258
|
-
|
|
259
|
-
### 0.7.0 (2026-08-21)
|
|
260
|
-
|
|
261
|
-
- Prepared the admin UI for community translation via
|
|
262
|
-
[ioBroker's Weblate](https://weblate.iobroker.net/engage/adapters/):
|
|
263
|
-
added `@iobroker/adapter-dev` as a dev dependency (`npm run
|
|
264
|
-
translate`), converted `admin/jsonConfig.json`'s `label`/`help` fields
|
|
265
|
-
from inline `en`/`de` objects to plain English keys, and added
|
|
266
|
-
`admin/i18n/{en,de,ru,pt,nl,fr,it,es,pl,uk,zh-cn}.json` (German
|
|
267
|
-
curated manually, the rest auto-translated via the official
|
|
268
|
-
`translate-adapter` tool — the same tool that already maintains the
|
|
269
|
-
`io-package.json` translations). Added a "Translation status" badge to
|
|
270
|
-
the README; like the "installed"/"stable" badges, it only shows real
|
|
271
|
-
data once the adapter is actually registered as a component on
|
|
272
|
-
weblate.iobroker.net (not done yet).
|
|
273
|
-
|
|
274
|
-
### 0.6.11 (2026-08-21)
|
|
275
|
-
|
|
276
|
-
- README: logo now shown enlarged (115×115) via a new
|
|
277
|
-
`admin/waip-web-logo.png`, nearest-neighbor-scaled from the 32×32
|
|
278
|
-
source icon for a crisp (if visibly pixelated) result instead of a
|
|
279
|
-
blurry interpolated one — no higher-resolution source exists anywhere
|
|
280
|
-
in the WAIP-Web ecosystem (checked the Lausitz instance and the
|
|
281
|
-
upstream project, both use the same 32×32 favicon). The actual
|
|
282
|
-
ioBroker adapter icon (`admin/waip-web.png`, referenced from
|
|
283
|
-
`io-package.json`) is unchanged.
|
|
284
|
-
- Simplified the README title back to "ioBroker.waip-web".
|
|
285
|
-
|
|
286
|
-
### 0.6.10 (2026-08-21)
|
|
287
|
-
|
|
288
|
-
- Added the adapter logo and npm/installation badges (NPM version,
|
|
289
|
-
downloads, installed, stable) to the README, matching standard
|
|
290
|
-
ioBroker adapter conventions. The "installed"/"stable" badges won't
|
|
291
|
-
show meaningful data until the adapter is listed in the official
|
|
292
|
-
[ioBroker.repositories](https://github.com/ioBroker/ioBroker.repositories)
|
|
293
|
-
("latest" repository PR pending), but will populate automatically once
|
|
294
|
-
it is.
|
|
295
|
-
|
|
296
|
-
### 0.6.9 (2026-08-21)
|
|
297
|
-
|
|
298
|
-
- Fixed adapter-checker finding **[E254]**: removed `common.news` entries
|
|
299
|
-
for versions that were never actually published to npm (`0.6.1`–`0.6.5`,
|
|
300
|
-
`0.6.7` were only version bumps in git/GitHub, without a matching
|
|
301
|
-
tagged npm release). `common.news` now only lists versions that really
|
|
302
|
-
exist on the npm registry (`0.6.6`, `0.6.8`); the full history remains
|
|
303
|
-
in this changelog regardless of what was actually published.
|
|
304
|
-
|
|
305
|
-
### 0.6.8 (2026-08-21)
|
|
306
|
-
|
|
307
|
-
- Renamed the README title to "ioBroker-Adapter (ioBroker.waip-web)".
|
|
308
|
-
- This release doubles as the first end-to-end test of the automatic
|
|
309
|
-
npm publish via Trusted Publishing introduced in 0.6.7.
|
|
310
|
-
|
|
311
|
-
### 0.6.7 (2026-08-21)
|
|
312
|
-
|
|
313
|
-
- Enabled automatic npm publishing: the `deploy` job in
|
|
314
|
-
`.github/workflows/test-and-release.yml` is no longer commented out
|
|
315
|
-
and now runs on every version tag (`vX.Y.Z`), publishing to npm via
|
|
316
|
-
[Trusted Publishing](https://docs.npmjs.com/trusted-publishers) (OIDC,
|
|
317
|
-
no `NPM_TOKEN` secret needed).
|
|
318
|
-
|
|
319
|
-
### 0.6.6 (2026-08-21)
|
|
320
|
-
|
|
321
|
-
- Added `.gitattributes` `eol=lf` so all contributors get consistent LF
|
|
322
|
-
line endings regardless of their local git `autocrlf` setting
|
|
323
|
-
(previously caused hundreds of spurious local lint errors on Windows
|
|
324
|
-
without affecting CI, since CI checkouts weren't affected).
|
|
325
|
-
- Added `package-lock.json` and switched CI to the default `npm ci` with
|
|
326
|
-
caching instead of `npm install` without caching, now that a lockfile
|
|
327
|
-
exists.
|
|
328
|
-
|
|
329
|
-
### 0.6.5 (2026-08-21)
|
|
330
|
-
|
|
331
|
-
- Fixed all issues reported by the official [ioBroker adapter checker](https://adapter-check.iobroker.in/):
|
|
332
|
-
- Bumped the required `js-controller` dependency to `>=5.0.19` and `@iobroker/adapter-core` to `^3.2.2`
|
|
333
|
-
- Replaced the deprecated `common.license`/`common.title`/`common.main` fields with `common.licenseInformation`/`common.titleLang`; `common.main` is redundant with `package.json`'s `main` field
|
|
334
|
-
- Added the required `common.tier` (`2` - external/cloud data source)
|
|
335
|
-
- Added translations of `titleLang`, `desc` and the kept `common.news` entries into all 10 additional ioBroker admin languages (ru, pt, nl, fr, it, es, pl, uk, zh-cn)
|
|
336
|
-
- Trimmed `common.news` to the 7 most recent entries, as recommended (the repository builder truncates there anyway); the full history stays in this changelog
|
|
337
|
-
|
|
338
|
-
### 0.6.4 (2026-08-21)
|
|
339
|
-
|
|
340
|
-
- New state `status.registeredMonitorName` shows the registered monitor
|
|
341
|
-
as text without the ID (e.g. "Leitstelle: Lausitz"), resolved once at
|
|
342
|
-
startup from the same `/waip/` overview page as the admin dropdown.
|
|
343
|
-
`status.registeredMonitor` is unchanged and keeps showing the ID.
|
|
344
|
-
|
|
345
|
-
### 0.6.3 (2026-08-21)
|
|
346
|
-
|
|
347
|
-
- Admin UI: the Monitor ID field is now always full-width, placed on its
|
|
348
|
-
own row below the WAIP server URL, so the (sometimes long) dropdown
|
|
349
|
-
entries have enough room to display without being cramped.
|
|
350
|
-
|
|
351
|
-
### 0.6.2 (2026-08-21)
|
|
352
|
-
|
|
353
|
-
- Monitor dropdown entries are now sorted by numeric monitor ID instead
|
|
354
|
-
of following the source page's (per-category) order.
|
|
355
|
-
|
|
356
|
-
### 0.6.1 (2026-08-21)
|
|
357
|
-
|
|
358
|
-
- Monitor dropdown entries now start with the actual monitor ID, e.g.
|
|
359
|
-
"4 - Leitstelle: Lausitz", so the numeric ID stays visible even after
|
|
360
|
-
a monitor has been selected.
|
|
361
|
-
|
|
362
|
-
### 0.6.0 (2026-08-21)
|
|
363
|
-
|
|
364
|
-
- **Admin UI:** Monitor ID is now a live dropdown (`selectSendTo`) instead
|
|
365
|
-
of a plain text field. The adapter fetches the configured server's
|
|
366
|
-
public `/waip/` overview page on demand and offers every monitor it
|
|
367
|
-
finds there, grouped by Leitstelle/Kreis/Träger/Wache, with "Alle
|
|
368
|
-
Wachalarme" (ID `0`) as an explicit first option. Manual entry remains
|
|
369
|
-
available if the server can't be reached or uses a different page
|
|
370
|
-
layout, so existing configurations keep working unchanged.
|
|
371
|
-
- Removed the static "session keepalive interval" info text from the
|
|
372
|
-
admin UI (the behavior itself is unchanged - see [Why a session cookie
|
|
373
|
-
is needed](#why-a-session-cookie-is-needed)).
|
|
374
|
-
- Added help text to the "Registration timeout" and "Reconnect delay"
|
|
375
|
-
fields.
|
|
376
|
-
|
|
377
|
-
### 0.5.1 (2026-08-21)
|
|
378
|
-
|
|
379
|
-
- **Logging:** Reclassified log levels so `warn` becomes a reliable signal
|
|
380
|
-
again. Session-cookie rotation, the known "Fehler beim Erneuern der
|
|
381
|
-
Session" server message, and detected server restarts are now logged
|
|
382
|
-
as `info` instead of `warn`, since they're part of this instance's
|
|
383
|
-
normal, self-healing ~10-minute session cycle. Events discarded for a
|
|
384
|
-
different monitor ID are now `info` (frequency remains tracked via
|
|
385
|
-
`debug.ignoredCount`). Failures that only affect internal housekeeping
|
|
386
|
-
(`debug.monitorAudit`, socket cleanup) are now `debug`. A duplicate
|
|
387
|
-
`connect_error` log line (logged once at `warn`, once at `info`) was
|
|
388
|
-
removed. Introduced `error` level for cases where an incident,
|
|
389
|
-
feedback, route or TTS event genuinely failed to be processed (actual
|
|
390
|
-
data loss), so these now stand out instead of being buried among
|
|
391
|
-
routine `warn` noise.
|
|
392
|
-
|
|
393
|
-
### 0.5.0 (2026-08-20)
|
|
394
|
-
|
|
395
|
-
- **Behavior change:** On `io.standby`, all `einsatz.*` states (including
|
|
396
|
-
`einsatz.json` and all counters) are now cleared instead of leaving the
|
|
397
|
-
finished incident's data in place – matching the official frontend,
|
|
398
|
-
which also clears keyword, location data etc. on standby.
|
|
399
|
-
`status.alarmAktiv` is therefore now a reliable switch for whether
|
|
400
|
-
`einsatz.*` currently holds real live data. The finished incident
|
|
401
|
-
remains fully available via `einsatz.history10` (archived there first).
|
|
402
|
-
|
|
403
|
-
### 0.4.9 (2026-08-20)
|
|
404
|
-
|
|
405
|
-
- **CI fix:** Reverted a self-introduced, unnecessary line wrap in
|
|
406
|
-
`connect()` (engine-packet preview) – `prettier/prettier` flagged it as
|
|
407
|
-
superfluous; the line actually fits on one line within the configured
|
|
408
|
-
print width.
|
|
409
|
-
|
|
410
|
-
### 0.4.8 (2026-08-20)
|
|
411
|
-
|
|
412
|
-
- **CI fix:** Fixed the final 16 lint errors – this time the complete,
|
|
413
|
-
non-truncated error list including the exact desired replacement text
|
|
414
|
-
was available, so every location could be corrected precisely 1:1
|
|
415
|
-
(line wraps for overly long calls/objects, one `prefer-template`
|
|
416
|
-
case). Lint should now be fully green.
|
|
417
|
-
|
|
418
|
-
### 0.4.7 (2026-08-20)
|
|
419
|
-
|
|
420
|
-
- **CI fix:** Fixed the remaining lint errors in `main.js` – consistently
|
|
421
|
-
applied `curly` (braces even for single-line `if`/`for`),
|
|
422
|
-
`no-unused-vars` for empty `catch` blocks (`catch (e) {}` → `catch {}`
|
|
423
|
-
where `e` isn't used), and `arrowParens: avoid` (removed parentheses
|
|
424
|
-
around single-parameter arrow functions). Purely mechanical code-style
|
|
425
|
-
fixes, no behavior change.
|
|
426
|
-
|
|
427
|
-
### 0.4.6 (2026-08-20)
|
|
428
|
-
|
|
429
|
-
- **CI fix:** The `lint` step failed with hundreds of formatting errors
|
|
430
|
-
(e.g. "Replace 'x' with "x""). Cause: `@iobroker/eslint-config`
|
|
431
|
-
requires its own `prettier.config.mjs` in addition to
|
|
432
|
-
`eslint.config.mjs`, re-exporting the ioBroker formatting style
|
|
433
|
-
(single quotes, 4-space indentation, `trailingComma: 'all'`) – without
|
|
434
|
-
it, Prettier fell back to its own defaults (double quotes). File added.
|
|
435
|
-
|
|
436
|
-
### 0.4.5 (2026-08-20)
|
|
437
|
-
|
|
438
|
-
- **CI fix:** The first pipeline run failed with "Dependencies lock file
|
|
439
|
-
is not found". Cause: `actions/setup-node`'s built-in npm caching
|
|
440
|
-
needs a `package-lock.json` for its cache key, independent of the
|
|
441
|
-
install command used. Since none is committed to the repo yet,
|
|
442
|
-
`package-cache: 'false'` is now set on both jobs.
|
|
443
|
-
|
|
444
|
-
### 0.4.4 (2026-08-20)
|
|
445
|
-
|
|
446
|
-
- Set up the CI pipeline (`.github/workflows/test-and-release.yml`),
|
|
447
|
-
following the standard pattern of the official
|
|
448
|
-
`@iobroker/create-adapter` template: a `check-and-lint` job (ESLint
|
|
449
|
-
via `@iobroker/eslint-config`) and an `adapter-tests` matrix (Node
|
|
450
|
-
20/22/24 × Ubuntu/Windows/macOS) via the central
|
|
451
|
-
`testing-action-check`/`testing-action-adapter` actions. Added
|
|
452
|
-
`test/package.js` and `test/integration.js` (`@iobroker/testing`)
|
|
453
|
-
plus `eslint.config.mjs` for this; bumped `@iobroker/testing` to
|
|
454
|
-
`^5.2.2`. Since no `package-lock.json` is committed yet, the pipeline
|
|
455
|
-
uses `npm install` instead of `npm ci`.
|
|
456
|
-
- Raised `engines.node` in `package.json` to `>=18` (matching the tested
|
|
457
|
-
Node versions and `@iobroker/testing` 5.x's requirements)
|
|
458
|
-
- A `deploy` job (automatic npm publishing) is prepared but commented
|
|
459
|
-
out until npm Trusted Publishing is set up
|
|
460
|
-
|
|
461
|
-
### 0.4.3 (2026-08-20)
|
|
462
|
-
|
|
463
|
-
- **Bugfix:** `einsatz.id` and `einsatz.sondersignal` were declared as
|
|
464
|
-
`string`, but the server actually sends them as numbers
|
|
465
|
-
(`sondersignal`, per `client_waip.js`: `switch (data.sondersignal) {
|
|
466
|
-
case 1: ... }`) – ioBroker therefore logged a type warning on every
|
|
467
|
-
incident. Both states are now declared as `number`. Existing objects
|
|
468
|
-
with the old (wrong) type are automatically recreated on the next
|
|
469
|
-
adapter start (`migrateObjectTypes()`, generic for future type
|
|
470
|
-
corrections).
|
|
471
|
-
|
|
472
|
-
### 0.4.2 (2026-08-20)
|
|
473
|
-
|
|
474
|
-
- Removed the "Session keepalive interval – upper bound" config field
|
|
475
|
-
again: the official `/js/session_keepalive.js` on the site hard-codes
|
|
476
|
-
this upper bound at 5 minutes and doesn't make it configurable. Having
|
|
477
|
-
an admin field for it wrongly suggested a fixed interval, even though
|
|
478
|
-
the actual renewal has long been fully automatic (see 0.4.1). The
|
|
479
|
-
upper bound is now likewise fixed at 5 minutes.
|
|
480
|
-
|
|
481
|
-
### 0.4.1 (2026-08-20)
|
|
482
|
-
|
|
483
|
-
- **Robustness:** The session keepalive interval is now adaptive instead
|
|
484
|
-
of a fixed assumption. WAIP-Web's source code (`server/app_cfg.js`)
|
|
485
|
-
shows that the session cookie's lifetime is configurable per instance
|
|
486
|
-
via an environment variable (server default: 60s instead of the
|
|
487
|
-
previously assumed 10 minutes) – the adapter now derives the renewal
|
|
488
|
-
interval from the expiry time actually reported by the server
|
|
489
|
-
(matching `/js/session_keepalive.js` on the site: 80% of the observed
|
|
490
|
-
lifetime, min. 55s, at most the configured upper bound). The "Session
|
|
491
|
-
keepalive interval" config option is accordingly now an upper bound
|
|
492
|
-
rather than a fixed interval.
|
|
493
|
-
- Corrected a comment about `io.version`/server restarts: per
|
|
494
|
-
`server/auth.js`, WAIP-Web stores sessions persistently (SQLite), not
|
|
495
|
-
in-memory – a restart therefore normally doesn't clear them. The
|
|
496
|
-
proactive session refresh + reconnect on server restart remains as a
|
|
497
|
-
general safeguard, only the previous justification was inaccurate.
|
|
498
|
-
|
|
499
|
-
### 0.4.0 (2026-08-20)
|
|
500
|
-
|
|
501
|
-
- **Restructured the object tree:** Feedback and routes are 1:n lists
|
|
502
|
-
per incident and now live as nested JSON arrays inside one overall
|
|
503
|
-
object `einsatz.json` (including `emAlarmiert[]`, `emWeitere[]`,
|
|
504
|
-
`routen[]`, `rueckmeldungen[]`) instead of several loose states.
|
|
505
|
-
- `einsatz.history10` replaces `history.last10` – now with the **full**
|
|
506
|
-
nested incident object per entry instead of just 6 reduced fields.
|
|
507
|
-
- New counters directly under `einsatz.*`: `routenGesamt`,
|
|
508
|
-
`rueckmeldungGesamt`, `rueckmeldungAnzahl.{ek,gf,zf,vf,agt,fzf,ma,med}`
|
|
509
|
-
(replaces `rueckmeldung.counts.*`).
|
|
510
|
-
- `einsatz.latitude`/`einsatz.longitude` replace
|
|
511
|
-
`geo.latitude`/`geo.longitude` (position is additionally available in
|
|
512
|
-
`einsatz.json.position`).
|
|
513
|
-
- New state `tts.history10` (last 10 TTS announcements).
|
|
514
|
-
- **Removed:** the entire `vis.*` channel, `json.raw`, `json.einsatz`,
|
|
515
|
-
`geo.position`, `rueckmeldung.last.json`, `routen.json`,
|
|
516
|
-
`routen.count`, `einsatz.emWeitere` (now part of `einsatz.json`).
|
|
517
|
-
- The adapter automatically removes all obsolete objects from the
|
|
518
|
-
previous structure on its first start after the update
|
|
519
|
-
(`cleanupObsoleteObjects()`).
|
|
520
|
-
|
|
521
|
-
### 0.3.4 (2026-08-20)
|
|
522
|
-
|
|
523
|
-
- All state names (`common.name`) consistently switched to German
|
|
524
|
-
(previously a mix of English and German) – the adapter only makes
|
|
525
|
-
sense for German-speaking users anyway
|
|
526
|
-
|
|
527
|
-
### 0.3.3 (2026-08-20)
|
|
528
|
-
|
|
529
|
-
- **Bugfix (potential data loss):** For a specific monitor ID (≠ `0`),
|
|
530
|
-
events were silently discarded ("unknownMonitor") after the
|
|
531
|
-
registration timeout elapsed, because real WAIP payloads, per
|
|
532
|
-
`client_waip.js`, **never** contain a monitor-identifying field – that
|
|
533
|
-
assignment happens entirely server-side via Socket.IO rooms. As a
|
|
534
|
-
result, alarm delivery could stop completely after 10s even though
|
|
535
|
-
the connection was technically up. `status.registrationAccepted`
|
|
536
|
-
stayed permanently `false` for the same reason, even for the global
|
|
537
|
-
monitor (`0`). Now any received event confirms the registration;
|
|
538
|
-
events are only discarded if a payload explicitly names a different
|
|
539
|
-
monitor ID.
|
|
540
|
-
|
|
541
|
-
### 0.3.2 (2026-08-20)
|
|
542
|
-
|
|
543
|
-
- Also switched the "Registration timeout" and "Reconnect delay" config
|
|
544
|
-
fields from milliseconds to seconds (`registrationTimeout` →
|
|
545
|
-
`registrationTimeoutSec`, default `10`; `reconnectDelay` →
|
|
546
|
-
`reconnectDelaySec`, default `5`). Existing instances without a newly
|
|
547
|
-
set value automatically use the defaults.
|
|
548
|
-
|
|
549
|
-
### 0.3.1 (2026-08-20)
|
|
550
|
-
|
|
551
|
-
- Switched the "Session keepalive interval" config field from
|
|
552
|
-
milliseconds to seconds (`sessionKeepaliveInterval` →
|
|
553
|
-
`sessionKeepaliveIntervalSec`, still defaulting to 5 min = `300`).
|
|
554
|
-
Existing instances without a newly set value automatically use the
|
|
555
|
-
default.
|
|
556
|
-
|
|
557
|
-
### 0.3.0 (2026-08-20)
|
|
558
|
-
|
|
559
|
-
- **Bugfix:** `wgs84_x`/`wgs84_y` were swapped (latitude/longitude). Per
|
|
560
|
-
the official web frontend (`client_waip.js`), `wgs84_x = latitude,
|
|
561
|
-
wgs84_y = longitude` – contrary to the usual GIS convention.
|
|
562
|
-
`geo.latitude`/`geo.longitude` were therefore swapped for directly
|
|
563
|
-
transmitted coordinates (not the GeoJSON fallback path).
|
|
564
|
-
- Added the missing `io.standby` handler: `status.alarmAktiv` was
|
|
565
|
-
previously never reset when an incident ended
|
|
566
|
-
- Captured new incident fields (previously only contained in the raw
|
|
567
|
-
`json.raw`/`json.einsatz`, now as their own states): `zeitstempel`,
|
|
568
|
-
`einsatznummer`, `objekt`, `objektteil`, `strasse`, `hausnummer`,
|
|
569
|
-
`einsatzdetails`, `besonderheiten`, `permissions`
|
|
570
|
-
- `em_alarmiert` (alerted resources) is now stored in
|
|
571
|
-
`vis.fahrzeugTabelle`, `em_weitere` in `einsatz.emWeitere`
|
|
572
|
-
- Feedback is now collected per incident (`vis.rueckmeldungenTabelle`)
|
|
573
|
-
and aggregated into counters per role/capability
|
|
574
|
-
(`rueckmeldung.counts.*`), mirroring the live badges
|
|
575
|
-
(EK/GF/ZF/VF/AGT/FZF/MA/MED) on the web UI
|
|
576
|
-
- New handlers for `io.error` (→ `debug.lastError`) and `io.version`
|
|
577
|
-
(server-restart detection → session-cookie refresh + forced reconnect)
|
|
578
|
-
- Generalized `reconnectForRotatedSession()` into the more generic
|
|
579
|
-
`forceReconnect(reason)` (now also used on a server version change)
|
|
580
|
-
|
|
581
|
-
### 0.2.1 (2026-08-20)
|
|
582
|
-
|
|
583
|
-
- Detected session-cookie rotation: if `/session/keepalive` returns a
|
|
584
|
-
different cookie value than before (e.g. because the old session was
|
|
585
|
-
already invalid server-side – a missed keepalive, a server restart
|
|
586
|
-
with an in-memory session store), an existing Socket.IO connection is
|
|
587
|
-
now actively rebuilt with the new session instead of waiting for a
|
|
588
|
-
silent failure
|
|
589
|
-
|
|
590
|
-
### 0.2.0 (2026-08-20)
|
|
591
|
-
|
|
592
|
-
- Introduced session-cookie management: the adapter fetches and renews
|
|
593
|
-
the WAIP server's `connect.sid` session cookie itself (`GET
|
|
594
|
-
/session/keepalive`, matching `/js/session_keepalive.js` on the site)
|
|
595
|
-
and attaches it to the Socket.IO connection. Fixes alarm delivery
|
|
596
|
-
stopping after about 10 minutes without an active browser session.
|
|
597
|
-
- New state `debug.sessionExpires` and a new config option "Session
|
|
598
|
-
keepalive interval (ms)" (default `300000`)
|
|
599
|
-
|
|
600
|
-
### 0.1.1 (2026-08-20)
|
|
601
|
-
|
|
602
|
-
- Adopted the favicon from `wachalarm.leitstelle-lausitz.de` as the
|
|
603
|
-
adapter icon (`admin/waip-web.png`), replacing the previous
|
|
604
|
-
placeholder
|
|
605
|
-
- Renamed the GitHub repository from `ioBroker.WAIP-Web` to
|
|
606
|
-
`ioBroker.waip-web` (uppercase letters in the repo name prevented
|
|
607
|
-
installation via `iobroker url` with `Process exited with code 25`);
|
|
608
|
-
updated all URLs in `package.json`/`io-package.json` accordingly
|
|
609
|
-
|
|
610
|
-
### 0.1.0 (2026-08-20)
|
|
611
|
-
|
|
612
|
-
- Initial version: ported the original "WAIP Instrumented v3.9" ioBroker
|
|
613
|
-
JavaScript-adapter script into a standalone adapter. The URL/monitor
|
|
614
|
-
ID now come from the admin configuration instead of a runtime state.
|
|
261
|
+
Older entries have moved to [CHANGELOG_OLD.md](CHANGELOG_OLD.md).
|
|
615
262
|
|
|
616
263
|
## License
|
|
617
264
|
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "waip-web",
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.7",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.7.7": {
|
|
7
|
+
"en": "Fixed [E254]: removed the orphaned 0.7.5 news entry - like 0.7.0 and 0.7.3 before it, that version was never actually tagged/published to npm (0.7.4 was followed directly by 0.7.6).",
|
|
8
|
+
"de": "[E254] behoben: verwaisten 0.7.5-News-Eintrag entfernt - wie zuvor schon 0.7.0 und 0.7.3 wurde diese Version nie tatsächlich getaggt/bei npm veröffentlicht (auf 0.7.4 folgte direkt 0.7.6).",
|
|
9
|
+
"ru": "Исправлено [E254]: удалена осиротевшая запись новостей 0.7.5 - как и ранее 0.7.0 и 0.7.3, эта версия так и не была помечена тегом/опубликована на npm (после 0.7.4 сразу последовала 0.7.6).",
|
|
10
|
+
"pt": "Corrigido [E254]: removida a entrada de notícias órfã 0.7.5 - assim como 0.7.0 e 0.7.3 antes, essa versão nunca foi de fato marcada com tag/publicada no npm (0.7.4 foi seguida diretamente por 0.7.6).",
|
|
11
|
+
"nl": "[E254] opgelost: verweesd 0.7.5-nieuwsitem verwijderd - net als eerder 0.7.0 en 0.7.3 is die versie nooit daadwerkelijk getagd/gepubliceerd op npm (op 0.7.4 volgde direct 0.7.6).",
|
|
12
|
+
"fr": "Correction de [E254] : suppression de l'entrée de nouvelles orpheline 0.7.5 - comme 0.7.0 et 0.7.3 auparavant, cette version n'a jamais été réellement taguée/publiée sur npm (0.7.4 a été directement suivie de 0.7.6).",
|
|
13
|
+
"it": "Risolto [E254]: rimossa la voce di news orfana 0.7.5 - come già 0.7.0 e 0.7.3 in precedenza, quella versione non è mai stata effettivamente taggata/pubblicata su npm (a 0.7.4 è seguita direttamente 0.7.6).",
|
|
14
|
+
"es": "Se corrigió [E254]: se eliminó la entrada de noticias huérfana 0.7.5 - al igual que 0.7.0 y 0.7.3 antes, esa versión nunca se etiquetó/publicó realmente en npm (a 0.7.4 le siguió directamente 0.7.6).",
|
|
15
|
+
"pl": "Naprawiono [E254]: usunięto osierocony wpis news 0.7.5 - podobnie jak wcześniej 0.7.0 i 0.7.3, ta wersja nigdy nie została faktycznie otagowana/opublikowana w npm (po 0.7.4 nastąpiło bezpośrednio 0.7.6).",
|
|
16
|
+
"uk": "Виправлено [E254]: видалено осиротілий запис новин 0.7.5 - як і раніше 0.7.0 та 0.7.3, цю версію так і не було позначено тегом/опубліковано на npm (після 0.7.4 одразу йшла 0.7.6).",
|
|
17
|
+
"zh-cn": "修复了 [E254]:移除了孤立的 0.7.5 新闻条目——与之前的 0.7.0 和 0.7.3 一样,该版本从未真正打过标签/发布到 npm(0.7.4 之后直接跳到了 0.7.6)。"
|
|
18
|
+
},
|
|
19
|
+
"0.7.6": {
|
|
20
|
+
"en": "Fixed [W6019] and [W0062]: added @alcalzone/release-script and @alcalzone/release-script-plugin-iobroker as dev dependencies (with an npm run release script), and split the README changelog - the 5 most recent entries stay in README.md, everything older moved to a new CHANGELOG_OLD.md. Our existing manual version-bump/tag workflow is unchanged; the release-script tooling is available but not actively used for releasing yet.",
|
|
21
|
+
"de": "[W6019] und [W0062] behoben: @alcalzone/release-script sowie @alcalzone/release-script-plugin-iobroker als Dev-Dependencies ergänzt (mit npm run release-Skript), README-Changelog aufgeteilt - die 5 neuesten Einträge bleiben in README.md, alles Ältere ist in eine neue CHANGELOG_OLD.md ausgelagert. Unser bisheriger manueller Versions-/Tag-Workflow bleibt unverändert; das release-script-Tooling steht bereit, wird aber noch nicht aktiv zum Veröffentlichen genutzt.",
|
|
22
|
+
"ru": "Исправлены [W6019] и [W0062]: добавлены dev-зависимости @alcalzone/release-script и @alcalzone/release-script-plugin-iobroker (со скриптом npm run release), а changelog в README разделён — 5 последних записей остаются в README.md, всё более старое перенесено в новый файл CHANGELOG_OLD.md. Наш существующий ручной процесс повышения версии/тегирования не изменился; инструмент release-script доступен, но пока активно не используется для релизов.",
|
|
23
|
+
"pt": "Corrigidos [W6019] e [W0062]: adicionadas as dependências de desenvolvimento @alcalzone/release-script e @alcalzone/release-script-plugin-iobroker (com um script npm run release), e o changelog do README foi dividido - as 5 entradas mais recentes permanecem no README.md, tudo o que é mais antigo foi movido para um novo CHANGELOG_OLD.md. Nosso fluxo manual existente de aumento de versão/tag permanece inalterado; a ferramenta release-script está disponível, mas ainda não é usada ativamente para lançamentos.",
|
|
24
|
+
"nl": "[W6019] en [W0062] opgelost: @alcalzone/release-script en @alcalzone/release-script-plugin-iobroker toegevoegd als dev-dependencies (met een npm run release-script), en de README-changelog opgesplitst - de 5 meest recente items blijven in README.md, al het oudere is verplaatst naar een nieuwe CHANGELOG_OLD.md. Onze bestaande handmatige versie-/tag-workflow blijft ongewijzigd; de release-script-tooling is beschikbaar maar wordt nog niet actief gebruikt om te releasen.",
|
|
25
|
+
"fr": "Correction de [W6019] et [W0062] : ajout de @alcalzone/release-script et @alcalzone/release-script-plugin-iobroker comme dépendances de développement (avec un script npm run release), et division du changelog du README - les 5 entrées les plus récentes restent dans README.md, tout ce qui est plus ancien a été déplacé vers un nouveau CHANGELOG_OLD.md. Notre flux de travail manuel existant de bump de version/tag reste inchangé ; l'outillage release-script est disponible mais pas encore activement utilisé pour publier.",
|
|
26
|
+
"it": "Risolti [W6019] e [W0062]: aggiunte le dev-dependency @alcalzone/release-script e @alcalzone/release-script-plugin-iobroker (con uno script npm run release), e il changelog del README è stato suddiviso - le 5 voci più recenti restano in README.md, tutto ciò che è più vecchio è stato spostato in un nuovo CHANGELOG_OLD.md. Il nostro flusso di lavoro manuale esistente per bump di versione/tag resta invariato; lo strumento release-script è disponibile ma non ancora usato attivamente per i rilasci.",
|
|
27
|
+
"es": "Se corrigieron [W6019] y [W0062]: se añadieron @alcalzone/release-script y @alcalzone/release-script-plugin-iobroker como dependencias de desarrollo (con un script npm run release), y se dividió el changelog del README - las 5 entradas más recientes permanecen en README.md, todo lo más antiguo se movió a un nuevo CHANGELOG_OLD.md. Nuestro flujo de trabajo manual existente de incremento de versión/etiquetado no cambia; la herramienta release-script está disponible pero aún no se usa activamente para publicar.",
|
|
28
|
+
"pl": "Naprawiono [W6019] i [W0062]: dodano @alcalzone/release-script oraz @alcalzone/release-script-plugin-iobroker jako zależności deweloperskie (ze skryptem npm run release), a changelog w README podzielono - 5 najnowszych wpisów pozostaje w README.md, wszystko starsze przeniesiono do nowego pliku CHANGELOG_OLD.md. Nasz dotychczasowy ręczny proces podnoszenia wersji/tagowania pozostaje bez zmian; narzędzie release-script jest dostępne, ale nie jest jeszcze aktywnie używane do wydawania wersji.",
|
|
29
|
+
"uk": "Виправлено [W6019] і [W0062]: додано @alcalzone/release-script та @alcalzone/release-script-plugin-iobroker як dev-залежності (зі скриптом npm run release), а changelog у README розділено - 5 найновіших записів залишаються в README.md, усе старіше перенесено до нового файлу CHANGELOG_OLD.md. Наш наявний ручний процес підвищення версії/тегування не змінився; інструмент release-script доступний, але поки що активно не використовується для релізів.",
|
|
30
|
+
"zh-cn": "修复了 [W6019] 和 [W0062]:添加了 @alcalzone/release-script 和 @alcalzone/release-script-plugin-iobroker 作为开发依赖(附带 npm run release 脚本),并拆分了 README 的更新日志——最近的 5 个条目保留在 README.md 中,更早的全部移至新的 CHANGELOG_OLD.md。我们现有的手动版本提升/打标签流程保持不变;release-script 工具已就绪,但目前尚未积极用于发布。"
|
|
31
|
+
},
|
|
6
32
|
"0.7.4": {
|
|
7
33
|
"en": "Bumped the ioBroker/testing-action-check GitHub Action used by the check-and-lint CI job from v1 to v2 (Dependabot PR #10) - purely additive (adds an optional test-command: 'false' flag), no behavior change for us.",
|
|
8
34
|
"de": "GitHub-Action ioBroker/testing-action-check im check-and-lint-CI-Job von v1 auf v2 angehoben (Dependabot-PR #10) - rein additiv (fügt eine optionale test-command: 'false'-Option hinzu), kein Verhaltensunterschied für uns.",
|
|
@@ -16,19 +42,6 @@
|
|
|
16
42
|
"uk": "Оновлено GitHub Action ioBroker/testing-action-check, яку використовує завдання CI check-and-lint, з v1 до v2 (Dependabot PR #10) - суто адитивно (додає опціональний прапорець test-command: 'false'), без зміни поведінки для нас.",
|
|
17
43
|
"zh-cn": "将 check-and-lint CI 任务使用的 ioBroker/testing-action-check GitHub Action 从 v1 升级到 v2(Dependabot PR #10)——纯增量更新(新增可选的 test-command: 'false' 标志),对我们没有行为影响。"
|
|
18
44
|
},
|
|
19
|
-
"0.7.3": {
|
|
20
|
-
"en": "Addressed further ioBroker Check and Service Bot findings: removed the deprecated common.materialize field (superseded by common.adminUI.config), raised engines.node to >=22 and dropped Node.js 20 (reached End of Life 2026-04-30) from the CI test matrix, raised the admin dependency to >=7.8.23, moved the check-and-lint CI job to Node 24.x, and added a .github/dependabot.yml for automated dependency updates.",
|
|
21
|
-
"de": "Weitere Findings des ioBroker Check and Service Bot behoben: veraltetes Feld common.materialize entfernt (abgelöst durch common.adminUI.config), engines.node auf >=22 angehoben und Node.js 20 (End of Life seit 2026-04-30) aus der CI-Testmatrix entfernt, admin-Dependency auf >=7.8.23 angehoben, CI-Job check-and-lint auf Node 24.x umgestellt, sowie .github/dependabot.yml für automatische Abhängigkeits-Updates ergänzt.",
|
|
22
|
-
"ru": "Устранены дополнительные замечания ioBroker Check and Service Bot: удалено устаревшее поле common.materialize (заменено на common.adminUI.config), engines.node повышено до >=22, Node.js 20 (End of Life с 2026-04-30) удалён из тестовой матрицы CI, зависимость admin повышена до >=7.8.23, задача CI check-and-lint переведена на Node 24.x, добавлен .github/dependabot.yml для автоматических обновлений зависимостей.",
|
|
23
|
-
"pt": "Resolvidos mais apontamentos do ioBroker Check and Service Bot: removido o campo obsoleto common.materialize (substituído por common.adminUI.config), engines.node elevado para >=22 e Node.js 20 (End of Life desde 2026-04-30) removido da matriz de testes do CI, dependência admin elevada para >=7.8.23, job de CI check-and-lint alterado para Node 24.x, e adicionado .github/dependabot.yml para atualizações automáticas de dependências.",
|
|
24
|
-
"nl": "Verdere bevindingen van de ioBroker Check and Service Bot opgelost: verouderd veld common.materialize verwijderd (vervangen door common.adminUI.config), engines.node verhoogd naar >=22 en Node.js 20 (End of Life sinds 2026-04-30) uit de CI-testmatrix verwijderd, admin-dependency verhoogd naar >=7.8.23, CI-job check-and-lint overgezet naar Node 24.x, en .github/dependabot.yml toegevoegd voor automatische afhankelijkheidsupdates.",
|
|
25
|
-
"fr": "Correction d'autres remarques du ioBroker Check and Service Bot : suppression du champ obsolète common.materialize (remplacé par common.adminUI.config), engines.node relevé à >=22 et Node.js 20 (End of Life depuis le 2026-04-30) retiré de la matrice de tests CI, dépendance admin relevée à >=7.8.23, job CI check-and-lint passé à Node 24.x, et ajout de .github/dependabot.yml pour les mises à jour automatiques des dépendances.",
|
|
26
|
-
"it": "Risolte ulteriori segnalazioni del ioBroker Check and Service Bot: rimosso il campo deprecato common.materialize (sostituito da common.adminUI.config), engines.node elevato a >=22 e Node.js 20 (End of Life dal 2026-04-30) rimosso dalla matrice di test CI, dipendenza admin elevata a >=7.8.23, job CI check-and-lint passato a Node 24.x, e aggiunto .github/dependabot.yml per aggiornamenti automatici delle dipendenze.",
|
|
27
|
-
"es": "Se resolvieron más hallazgos del ioBroker Check and Service Bot: se eliminó el campo obsoleto common.materialize (sustituido por common.adminUI.config), se elevó engines.node a >=22 y se eliminó Node.js 20 (End of Life desde el 2026-04-30) de la matriz de pruebas de CI, se elevó la dependencia admin a >=7.8.23, el job de CI check-and-lint pasó a Node 24.x, y se añadió .github/dependabot.yml para actualizaciones automáticas de dependencias.",
|
|
28
|
-
"pl": "Naprawiono kolejne ustalenia ioBroker Check and Service Bot: usunięto przestarzałe pole common.materialize (zastąpione przez common.adminUI.config), podniesiono engines.node do >=22 i usunięto Node.js 20 (End of Life od 2026-04-30) z macierzy testów CI, podniesiono zależność admin do >=7.8.23, zadanie CI check-and-lint przełączono na Node 24.x oraz dodano .github/dependabot.yml do automatycznych aktualizacji zależności.",
|
|
29
|
-
"uk": "Виправлено подальші зауваження ioBroker Check and Service Bot: видалено застаріле поле common.materialize (замінене на common.adminUI.config), engines.node підвищено до >=22, а Node.js 20 (End of Life з 2026-04-30) видалено з матриці тестів CI, залежність admin підвищено до >=7.8.23, завдання CI check-and-lint переведено на Node 24.x, додано .github/dependabot.yml для автоматичних оновлень залежностей.",
|
|
30
|
-
"zh-cn": "解决了 ioBroker Check and Service Bot 的更多问题:移除了已弃用的 common.materialize 字段(由 common.adminUI.config 取代);将 engines.node 提升至 >=22,并从 CI 测试矩阵中移除 Node.js 20(已于 2026-04-30 终止支持);将 admin 依赖提升至 >=7.8.23;将 CI 的 check-and-lint 任务切换到 Node 24.x;并新增了 .github/dependabot.yml 以实现依赖项自动更新。"
|
|
31
|
-
},
|
|
32
45
|
"0.7.2": {
|
|
33
46
|
"en": "Fixed all findings from the official ioBroker Check and Service Bot: raised Node.js/dependency minimums (engines.node >=20, @iobroker/adapter-core ^3.4.1, js-controller >=6.0.11, admin >=7.6.17), split the README into English-only (README.md) and German (README.de.md) since the checker requires English-only READMEs, moved License to the very last section, added the required i18n/size attributes to jsonConfig.json, switched to node: prefixes for built-in requires, removed the redundant .npmignore, and added .commitinfo to .gitignore. Also removed the orphaned 0.7.0 news entry (never actually published to npm).",
|
|
34
47
|
"de": "Alle Findings des offiziellen ioBroker Check and Service Bot behoben: Mindestversionen angehoben (engines.node >=20, @iobroker/adapter-core ^3.4.1, js-controller >=6.0.11, admin >=7.6.17), README aufgeteilt in rein englisches README.md und deutsches README.de.md (der Checker verlangt rein englische READMEs), Lizenz-Abschnitt ans Dateiende verschoben, fehlende i18n-/Größenattribute in jsonConfig.json ergänzt, auf node:-Präfixe bei Built-in-Requires umgestellt, überflüssige .npmignore entfernt und .commitinfo zur .gitignore hinzugefügt. Außerdem den verwaisten 0.7.0-News-Eintrag entfernt (wurde nie tatsächlich bei npm veröffentlicht).",
|
|
@@ -80,19 +93,6 @@
|
|
|
80
93
|
"pl": "Dodano logo adaptera oraz odznaki npm/instalacji (wersja NPM, pobrania, zainstalowano, stabilna) do README, zgodnie ze standardowymi konwencjami adapterów ioBroker.",
|
|
81
94
|
"uk": "До README додано логотип адаптера та значки npm/встановлення (версія NPM, завантаження, встановлено, стабільна версія) відповідно до стандартних угод адаптерів ioBroker.",
|
|
82
95
|
"zh-cn": "已在 README 中添加适配器徽标以及 npm/安装徽章(NPM 版本、下载量、已安装数量、稳定版),符合 ioBroker 适配器的标准约定。"
|
|
83
|
-
},
|
|
84
|
-
"0.6.9": {
|
|
85
|
-
"en": "Removed common.news entries for versions that were never actually published to npm (0.6.1-0.6.5, 0.6.7 - only version bumps in git, no matching npm release), as reported by the official adapter checker.",
|
|
86
|
-
"de": "common.news-Einträge für Versionen entfernt, die nie tatsächlich bei npm veröffentlicht wurden (0.6.1-0.6.5, 0.6.7 - nur Versionserhöhungen in git, keine passende npm-Veröffentlichung), wie vom offiziellen Adapter-Checker gemeldet.",
|
|
87
|
-
"ru": "Удалены записи common.news для версий, которые фактически никогда не публиковались в npm (0.6.1–0.6.5, 0.6.7 — только повышения версии в git без соответствующего релиза npm), как сообщил официальный чекер адаптеров.",
|
|
88
|
-
"pt": "Removidas entradas de common.news para versões que nunca foram realmente publicadas no npm (0.6.1-0.6.5, 0.6.7 - apenas incrementos de versão no git, sem lançamento npm correspondente), conforme relatado pelo verificador oficial de adaptadores.",
|
|
89
|
-
"nl": "common.news-items verwijderd voor versies die nooit daadwerkelijk op npm zijn gepubliceerd (0.6.1-0.6.5, 0.6.7 - alleen versieverhogingen in git, geen bijbehorende npm-release), zoals gemeld door de officiële adapter-checker.",
|
|
90
|
-
"fr": "Suppression des entrées common.news pour des versions qui n'ont jamais été réellement publiées sur npm (0.6.1-0.6.5, 0.6.7 - simples incréments de version dans git, sans publication npm correspondante), comme signalé par le vérificateur officiel d'adaptateurs.",
|
|
91
|
-
"it": "Rimosse le voci common.news per versioni mai effettivamente pubblicate su npm (0.6.1-0.6.5, 0.6.7 - solo incrementi di versione in git, senza una release npm corrispondente), come segnalato dal checker ufficiale degli adapter.",
|
|
92
|
-
"es": "Se eliminaron las entradas de common.news para versiones que nunca se publicaron realmente en npm (0.6.1-0.6.5, 0.6.7 - solo incrementos de versión en git, sin la correspondiente publicación en npm), según lo indicado por el verificador oficial de adaptadores.",
|
|
93
|
-
"pl": "Usunięto wpisy common.news dla wersji, które nigdy nie zostały faktycznie opublikowane w npm (0.6.1-0.6.5, 0.6.7 - tylko podniesienia wersji w git, bez odpowiadającego wydania npm), zgodnie z raportem oficjalnego checkera adapterów.",
|
|
94
|
-
"uk": "Видалено записи common.news для версій, які фактично ніколи не публікувалися в npm (0.6.1-0.6.5, 0.6.7 - лише підвищення версії в git без відповідного релізу npm), як повідомив офіційний перевірник адаптерів.",
|
|
95
|
-
"zh-cn": "移除了从未真正发布到 npm 的版本的 common.news 条目(0.6.1-0.6.5、0.6.7——仅在 git 中提升了版本号,没有对应的 npm 发布),这是官方适配器检查器报告的问题。"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"titleLang": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.waip-web",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.7",
|
|
4
4
|
"description": "Wachalarm IP-Web (WAIP) Adapter für ioBroker – bindet Alarmierungen, Rückmeldungen, Routen und TTS-Ansagen per Socket.IO an ioBroker an.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "rnc11",
|
|
@@ -33,13 +33,16 @@
|
|
|
33
33
|
"io-package.json",
|
|
34
34
|
"main.js",
|
|
35
35
|
"LICENSE",
|
|
36
|
-
"README.de.md"
|
|
36
|
+
"README.de.md",
|
|
37
|
+
"CHANGELOG_OLD.md"
|
|
37
38
|
],
|
|
38
39
|
"dependencies": {
|
|
39
40
|
"@iobroker/adapter-core": "^3.4.1",
|
|
40
41
|
"socket.io-client": "^4.7.5"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
44
|
+
"@alcalzone/release-script": "^5.2.1",
|
|
45
|
+
"@alcalzone/release-script-plugin-iobroker": "^5.2.0",
|
|
43
46
|
"@iobroker/adapter-dev": "^1.5.0",
|
|
44
47
|
"@iobroker/eslint-config": "^2.2.0",
|
|
45
48
|
"@iobroker/testing": "^5.2.2"
|
|
@@ -49,6 +52,7 @@
|
|
|
49
52
|
"test:integration": "mocha test/integration.js --exit",
|
|
50
53
|
"test": "npm run test:package",
|
|
51
54
|
"lint": "eslint -c eslint.config.mjs .",
|
|
52
|
-
"translate": "translate-adapter"
|
|
55
|
+
"translate": "translate-adapter",
|
|
56
|
+
"release": "release-script"
|
|
53
57
|
}
|
|
54
58
|
}
|