iobroker.alarm 3.1.1 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/test-and-release.yml +34 -19
- package/README.md +13 -131
- package/admin/index_m.html +1694 -1121
- package/admin/style.css +157 -78
- package/admin/words.js +471 -125
- package/docs/de/alarm.md +245 -0
- package/docs/de/img/circuits.png +0 -0
- package/docs/de/img/main.png +0 -0
- package/docs/de/img/notifications.png +0 -0
- package/docs/de/img/presence.png +0 -0
- package/docs/de/img/presence_settings.png +0 -0
- package/docs/de/img/shortcuts.png +0 -0
- package/docs/de/img/speak.png +0 -0
- package/docs/en/alarm_en.md +1 -0
- package/io-package.json +89 -122
- package/main.js +887 -416
- package/package.json +25 -51
- package/lib/Readme_en.md +0 -1
|
@@ -28,9 +28,9 @@ jobs:
|
|
|
28
28
|
node-version: [16.x]
|
|
29
29
|
|
|
30
30
|
steps:
|
|
31
|
-
- uses: actions/checkout@
|
|
31
|
+
- uses: actions/checkout@v3
|
|
32
32
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
33
|
-
uses: actions/setup-node@
|
|
33
|
+
uses: actions/setup-node@v3
|
|
34
34
|
with:
|
|
35
35
|
node-version: ${{ matrix.node-version }}
|
|
36
36
|
|
|
@@ -44,8 +44,8 @@ jobs:
|
|
|
44
44
|
# CI: true
|
|
45
45
|
# - name: Lint TypeScript code
|
|
46
46
|
# run: npm run lint
|
|
47
|
-
|
|
48
|
-
|
|
47
|
+
- name: Test package files
|
|
48
|
+
run: npm run test:package
|
|
49
49
|
|
|
50
50
|
# Runs adapter tests on all supported node versions and OSes
|
|
51
51
|
adapter-tests:
|
|
@@ -56,29 +56,29 @@ jobs:
|
|
|
56
56
|
runs-on: ${{ matrix.os }}
|
|
57
57
|
strategy:
|
|
58
58
|
matrix:
|
|
59
|
-
node-version: [
|
|
59
|
+
node-version: [14.x, 16.x, 18.x]
|
|
60
60
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
61
61
|
|
|
62
62
|
steps:
|
|
63
|
-
- uses: actions/checkout@
|
|
63
|
+
- uses: actions/checkout@v3
|
|
64
64
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
65
|
-
uses: actions/setup-node@
|
|
65
|
+
uses: actions/setup-node@v3
|
|
66
66
|
with:
|
|
67
67
|
node-version: ${{ matrix.node-version }}
|
|
68
68
|
|
|
69
69
|
- name: Install Dependencies
|
|
70
70
|
run: npm ci
|
|
71
71
|
|
|
72
|
-
- name: Run local tests
|
|
73
|
-
run: npm test
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
72
|
+
# - name: Run local tests
|
|
73
|
+
# run: npm test
|
|
74
|
+
- name: Run unit tests
|
|
75
|
+
run: npm run test:unit
|
|
76
|
+
- name: Run integration tests # (linux/osx)
|
|
77
|
+
if: startsWith(runner.OS, 'windows') == false
|
|
78
|
+
run: DEBUG=testing:* npm run test:integration
|
|
79
|
+
- name: Run integration tests # (windows)
|
|
80
|
+
if: startsWith(runner.OS, 'windows')
|
|
81
|
+
run: set DEBUG=testing:* & npm run test:integration
|
|
82
82
|
|
|
83
83
|
# Deploys the final package to NPM
|
|
84
84
|
deploy:
|
|
@@ -96,10 +96,10 @@ jobs:
|
|
|
96
96
|
|
|
97
97
|
steps:
|
|
98
98
|
- name: Checkout code
|
|
99
|
-
uses: actions/checkout@
|
|
99
|
+
uses: actions/checkout@v3
|
|
100
100
|
|
|
101
101
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
102
|
-
uses: actions/setup-node@
|
|
102
|
+
uses: actions/setup-node@v3
|
|
103
103
|
with:
|
|
104
104
|
node-version: ${{ matrix.node-version }}
|
|
105
105
|
|
|
@@ -139,3 +139,18 @@ jobs:
|
|
|
139
139
|
# Prerelease versions create prereleases on Github
|
|
140
140
|
prerelease: ${{ contains(steps.extract_release.outputs.VERSION, '-') }}
|
|
141
141
|
body: ${{ steps.extract_release.outputs.BODY }}
|
|
142
|
+
|
|
143
|
+
- name: Notify Sentry.io about the release
|
|
144
|
+
run: |
|
|
145
|
+
npm i -g @sentry/cli
|
|
146
|
+
export SENTRY_AUTH_TOKEN=${{ secrets.SENTRY_AUTH_TOKEN }}
|
|
147
|
+
export SENTRY_URL=https://sentry.iobroker.net
|
|
148
|
+
export SENTRY_ORG=iobroker
|
|
149
|
+
export SENTRY_PROJECT=iobroker-backitup
|
|
150
|
+
export SENTRY_VERSION=iobroker.backitup@${{ steps.extract_release.outputs.VERSION }}
|
|
151
|
+
sentry-cli releases new $SENTRY_VERSION
|
|
152
|
+
sentry-cli releases set-commits $SENTRY_VERSION --auto
|
|
153
|
+
sentry-cli releases finalize $SENTRY_VERSION
|
|
154
|
+
|
|
155
|
+
# Add the following line BEFORE finalize if sourcemap uploads are needed
|
|
156
|
+
# sentry-cli releases files $SENTRY_VERSION upload-sourcemaps build/
|
package/README.md
CHANGED
|
@@ -14,144 +14,26 @@
|
|
|
14
14
|
|
|
15
15
|
[](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZYHW84XXF5REJ&source=url)
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
## Alarmanlage für ioBroker
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
**[Deutsche Beschreibung](docs/de/alarm.md)**
|
|
20
20
|
|
|
21
|
+
## Alarmsystem for ioBroker
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
Er bietet die Möglichkeit 3 Sicherheitskreise zu konfigurieren und diese z. B. bei Nachtruhe oder De- und Aktivierung zu überwachen. Des Weiteren ist
|
|
24
|
-
eine direkte Verknüpfung der jeweiligen Instanz "states", auf andere "states" möglich. Diese Verknüpfungen werden im Reiter Verknüpfungen angelegt.
|
|
23
|
+
**[English description](docs/en/alarm_en.md)**
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
### Tab Haupteinstellungen
|
|
29
|
-
|
|
30
|
-
Hier werden die Einstellungen wie die Zeiten der Nachtruhe, Sirenezeit, Stiller-Alarm und Passwort vorgenommen.
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
- Aktivierzeit -> Zeitverzögerung bis zu Aktivierung wenn man einen delay Datenpunkt benutzt
|
|
34
|
-
- Sirenenzeit bei Einbruch -> Bei Einbruch wird der Datenpunkt alarm.0.status.siren / siren_inside für die Zeit auf true gesetzt
|
|
35
|
-
- Alarmverzögerung -> Verzögerungszeit bis Einbruch ausgelöst wird (während dieser Zeit wird der Stille Alarm ausgelöst)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
39
|
-
|
|
40
|
-
### Tab Benachrichtigungen
|
|
41
|
-
|
|
42
|
-
Benachrichtigungen über Andere Adapter wie z. B. Telegramm, Email oder andere.
|
|
43
|
-
[Probleme](#Probleme)
|
|
44
|
-
|
|
45
|
-
Bei Benachrichtigungen an den Telegram Adapter, ist es möglich User- oder Chat IDs zu benutzen.
|
|
46
|
-
|
|
47
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
48
|
-
|
|
49
|
-
### Tab Überwachung
|
|
50
|
-
|
|
51
|
-
Hier werden die Kreise der Anlage konfiguriert.
|
|
52
|
-
*die Namen der states lassen sich ändern*
|
|
53
|
-
|
|
54
|
-
Der Alarmkreis hat die Priorität „hoch" und hat bei aktivierter Anlage (scharf) Vorrang vor allen anderen Kreisen. Er dient zur eigentlichen Überwachung der Anlage. Dies entspricht den Vollschutz einer Alarmanlage. Der scharf intern Kreis wird überwacht, wenn die Anlage sich im Zustand scharf intern befindet, dies entspricht einem Außenhautschutz einer Alarmanlage. Der Meldekreis dient nur zur Meldung während der Zustände scharf, scharf intern und bei der Nachtruhe.
|
|
55
|
-
*Es ist durchaus möglich, dass man für einem state, den Haken bei allen drei Kreisen macht.*
|
|
56
|
-
|
|
57
|
-
Sollte man einen Kontakt haben, der den Alarmkreis nicht sofort auslösen soll, kann man das Häkchen bei "stiller Alarm" aktivieren, dadurch wird nach Ablauf der eingestellten Zeit (Haupteinstellungen), der Alarm ausgelöst.
|
|
58
|
-
|
|
59
|
-
Sollte es erforderlich sein die Einzelnen States nicht auf *true*, sondern auf *false* zu triggern (z.B. Drahtbruchsichere Sensoren), so kann man das Häkchen bei "negieren" setzen.
|
|
60
|
-
|
|
61
|
-
Sollte man im Tab Haupteinstellungen die Option "verlassen" aktiviert haben, kann man unter dem entsprechenden Datenpunkt "verlassen" anwählen. Dies bewirkt, dass bei verzögerte Aktivierung, der Countdown nicht ablaufen muss, sondern es reicht z. B. die Tür zu schließen.
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
Die Kreise werden folgendermaßen überwacht:
|
|
65
|
-
|
|
66
|
-
#### Alarmkreis:
|
|
67
|
-
Alarmanlage lässt sich nicht aktivieren (scharf schalten) wenn ein konfigurierter state aktiv ist. Bei aktivierter Alarmanlage führt eine Veränderung sofort zur Auslösung der Anlage.
|
|
68
|
-
|
|
69
|
-
#### Scharf intern Kreis:
|
|
70
|
-
Alle hier konfigurierten states werden beim Zustand scharf intern überwacht und lösen unter anderem den internen Alarm aus.
|
|
71
|
-
|
|
72
|
-
#### Meldekreis:
|
|
73
|
-
Der überwacht die konfigurierten states auf Veränderungen und meldet dies.
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
77
|
-
|
|
78
|
-
### Tab Sprachausgabe
|
|
79
|
-
|
|
80
|
-
Ist eine gewünschte Sprachausgabe z. B. bei Änderung des Zustandes gewünscht, lässt sich das hier mit den gewünschten Sätzen konfigurieren.
|
|
81
|
-
*Man muss sich sicher sein, das der ausgewählte Datenpunkt, mit einem Text beschrieben werden kann! Z.B. "sayit.0.tts"*
|
|
82
|
-
|
|
83
|
-
Möchte man sich die Ausgabe von Namen mit Ansagen lassen, kann man diese Option anwählen.
|
|
84
|
-
|
|
85
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
86
|
-
|
|
87
|
-
### Tab Verknüpfungen
|
|
88
|
-
|
|
89
|
-
Hier ist es möglich Adapter interne states direkt mit externen states zu verknüpfen. Somit ist ein Umweg über ein Skript oder ähnlichen nicht erforderlich.
|
|
90
|
-
Es lässt sich somit z. B. bei Beginn der Nachtruhe, eine Verriegelung des Türschlosses realisieren.
|
|
91
|
-

|
|
92
|
-
|
|
93
|
-
#### Eingabeverknüpfungen
|
|
94
|
-
|
|
95
|
-
Trigger--> any = es wird bei jeder Änderung getriggert
|
|
96
|
-
ne = es wird nur getriggert, wenn der Wert sich geändert
|
|
97
|
-
|
|
98
|
-
Auslösewert--> Ist der Wert, auf welchen getriggert werden soll
|
|
99
|
-
|
|
100
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
101
|
-
|
|
102
|
-
### Tab Andere Alarme
|
|
103
|
-
|
|
104
|
-
Es stehen einen zwei frei konfigurierbare Überwachungskreise zu Verfügung, diese werden bei Benutzung unabhängig dem Zustand der Alarmanlage ständig überwacht!
|
|
105
|
-
Als Voreinstellung sind diese als Feuer- und Wasseralarm beschriftet. In der ganzen Konfiguration sind diese als Kreise 1 und 2 beschriftet und an den Nummern zu erkennen.
|
|
106
|
-
|
|
107
|
-
Sollte es erforderlich sein die Einzelnen States nicht auf *true*, sondern auf *false* zu triggern (z.B. Drahtbruchsichere Sensoren), so kann man das Häkchen bei "negieren" setzen.
|
|
108
|
-
|
|
109
|
-
####Es ist darauf zu achten, dass keine States aus dem eigentlichen Hauptüberwachungskreisen benutzt werden!
|
|
110
|
-
|
|
111
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
112
|
-
|
|
113
|
-
Der Adapter liefert eine ganze Anzahl an states:
|
|
114
|
-
|
|
115
|
-
#### "alarm.x.use.....".
|
|
116
|
-
Das sind die eigentlichen states um die Alarmanlage zu bedienen.
|
|
117
|
-
|
|
118
|
-
- use.activate_nightrest -> Aktivierung der Nachtruhe
|
|
119
|
-
- use.activate_sharp_inside_circuit -> Aktivierung der Überwachung des Warnkreises (intern scharf)
|
|
120
|
-
- use.disable -> Deaktivierung der Anlage (Alarmkreis)
|
|
121
|
-
- use.enable -> Aktivierung der Anlage (Alarmkreis)
|
|
122
|
-
- use.enable_with_delay -> Aktivierung der Anlage (Alarmkreis) mit Verzögerungszeit
|
|
123
|
-
- use.list -> Deaktivierung/Aktivierung/Warnkreis/Aktivierung mit Verzögerungszeit
|
|
124
|
-
- use.quit_changes -> Rücksetzen der states *info.notification_circuit_changes, info.sharp_inside_siren, status.activation_failed, other_alarms.one_changes, other_alarms.two_changes*
|
|
125
|
-
- use.toggle_password -> Deaktivierung/Aktivierung der Anlage (Alarmkreis) mit Passwort
|
|
126
|
-
- use.toggle_with_delay -> Deaktivierung/Aktivierung der Anlage (Alarmkreis) mit Verzögerungszeit
|
|
127
|
-
- use.toggle_with_delay_and_password -> Deaktivierung/Aktivierung der Anlage (Alarmkreis) mit Passwort und Verzögerungszeit
|
|
128
|
-
- use.panic -> Händische Auslösung der Alarmanlage(Einbruch), auch wenn diese deaktiviert ist
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
#### "alarm.x.status...."
|
|
133
|
-
Hier lässte sich der Zustand der Anlage ablesen.
|
|
134
|
-
|
|
135
|
-
- status.sleep -> Signalisiert den Zustand der automatischen Nachtruhe
|
|
136
|
-
|
|
137
|
-
#### "alarm.x.info...."
|
|
138
|
-
Liefert zusätzliche Informationen wie z.B. welche "Türen offen sind" oder einen Log state.
|
|
139
|
-
Der log_today state wird um Mitternacht geleert.
|
|
140
|
-
|
|
141
|
-
#### "alarm.x.other_alarms...."
|
|
142
|
-
Beinhaltet die Informationen für die "anderen" Alarmkreise 1 + 2.
|
|
143
|
-
|
|
144
|
-
----------------------------------------------------------------------------------------------------------------------
|
|
145
|
-
|
|
146
|
-
## Probleme
|
|
147
|
-
- wenn man eine Telegram oder ähnliches über das + hinzufügt, kann man nur ein state der Instanz auswählen und man muss bis auf *telegram.0* alles löschen.
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
#### Wichtig, die Benutzung dieses Adapters geschieht auf eigene Gefahr, für etwaige Fehlfunktionen wird keine Haftung übernommen!
|
|
25
|
+
******************************************************************************************
|
|
151
26
|
|
|
27
|
+
## Changelog
|
|
152
28
|
|
|
29
|
+
#### 3.2.0 (15.10.2022)
|
|
30
|
+
* (misanorot) fixed enableable
|
|
31
|
+
* (misanorot) added presence simulation
|
|
32
|
+
* (misanorot) added zones
|
|
33
|
+
* (misanorot) fixed set number states
|
|
153
34
|
|
|
154
|
-
|
|
35
|
+
#### 3.1.1 (29.06.2022)
|
|
36
|
+
* (MK-2001) added speech delay
|
|
155
37
|
|
|
156
38
|
#### 3.1.0 (26.04.2022)
|
|
157
39
|
* (misanorot) added speech delay
|