michi.wtr
Goto Top

Anwendung zur Alarmierung von Mitarbeitern

Hallo zusammen,

ich möchte als kleines Projekt in der Firma eine Applikation entwickeln, welche ein Abteilungsleiter ausführen kann.
Diese soll im Falle eines Notfalls (z.B. Brandfall) eine Seite auf allen PCs öffnen, die eine Warnung an die Mitarbeiter ausgibt.

Die Idee war, einen Broadcast zu senden, und auf allen Client soll ein Dienst laufen, der diesen abhört. Sobald ein Broadcast kommt, soll der Client ein Fenster mit Warnmeldung und Audio Alarm öffnen. Ist dies der richtige Weg, und wie höre ich in diesem Fall einen Broadcast ab oder sende einen mit einem entsprechenden Aufbau, damit die Anwendung der Clients das mitbekommt?

Eine weitere Idee war, ein kleines MQTT Programm zu schreiben. Der Broker soll auf einem kleinen Linux Server laufen, Publisher sind die Abteilungsleiter und alle PCs sind Subscriber. So könnte ich sogar die Nachrichten unterteilen, welche abonniert werden...

Gibt es dafür eine "richtige" Lösung oder wie wäre die Vorgehensweise, das einzurichten?

Habe dafür leider zu wenig Praxiserfahrung...
Vielen Dank face-smile
Micha

Content-ID: 62951397825

Url: https://administrator.de/contentid/62951397825

Printed on: August 31, 2024 at 22:08 o'clock

StefanKittel
StefanKittel Jul 19, 2024 at 13:24:04 (UTC)
Goto Top
Moin,

die "richtige" Lösung ist für jeden anders.
Ich gehe davon aus, dass es normale Alamierung mit "Tröten" im Flur gibt die vom Brandschutz vorgeschrieben ist.

Wir sprechen hier also "nur" von einer zusätzlichen Information.

Mein Ansatz:
Eine Windows-Desktop-App im Autostart.
Diese ruft alle 5 Sekunden eine Datei von einer Freigabe oder von einem Webspace ab. Wenn da nicht "OK" drin steht, wird der Inhalt sichtbar dar. Du brauchst dann nur noch diese Datei ändern.

Es gibt natürlich noch viele technisch komplexere Methoden. ich mag KISS.

Stefan
kaiand1
kaiand1 Jul 19, 2024 at 13:47:21 (UTC)
Goto Top
Hi
Nun eine Möglichkeit wäre auch per Asterisk (VoIP) das dann per Telefonanruf die Durchsage Abspielt.
Aber im Brandfall sollte ja eh die BMZ den Alarm Auslösen und über die Melder alle Informieren ;)
maretz
maretz Jul 19, 2024 at 13:51:24 (UTC)
Goto Top
Ich würde auch überlegen ob ich sowas überhaupt einbaue und wenn eben klar und deutlich machen das es nur eine zusätzliche Option ohne irgendwelche Garantie auf Funktion ist... Die person kann ja den Task beendet haben, der PC wurde vom Netzwerk getrennt,...

Wenns wirklich um Brand o.ä. geht würde ich eben auch immer noch auf "physische" Systeme setzen -> im einfachsten Fall Brandmelder die kommunizieren und dann gemeinschaftlich loslegen, im komplexeren Fall eine richtige Brandmelde-Anlage (ggf. inkl. löscheinrichtung)... DAS hängt aber auch vom Budget ab...
MirkoKR
Solution MirkoKR Jul 19, 2024 updated at 14:00:46 (UTC)
Goto Top
Das kannst du recht simpel mit Websocket Server/Client realisieren ...

... hierbei verbindet sich ein altover Client per websocket mit einem Aerver und beide halten die Verbindung mit Pings aufrecht ...

.. so lannst du push und pull realsieren ...
... und den Verbindungsstatus z.B. in der Taskleiste - rot/grüne "LED" anzeigen ...


https://de.m.wikipedia.org/wiki/WebSocket
MirkoKR
MirkoKR Jul 19, 2024 at 14:12:05 (UTC)
Goto Top
Alternativ kannst du auch recht einfach eine Anwendung bauen, die auf Nachrichten auf einem bestimmten Port lauscht...

... dazu gibt es zahlreiche Beispiele, z.B. in C# für ANMP- Nachrichten con Routern, Switche, etc ...

Der Server kann ja das Alarmpaket an alle IP:Port im Netz senden ...
... wenn da gwrade kein Client auf der IP lauscht: Egal 🤩
Starmanager
Starmanager Jul 19, 2024 at 14:38:30 (UTC)
Goto Top
Im Brandfall muss der Ablauf klar definiert sein und darf nicht von Geraeten abhaengig sein die im Notfall eventuell keinen Strom haben. Zudem ist man ja verpflichtet Uebungen fuer den Brandfall abzuhalten. Alles was IT basierend ist steht kann ja im Brandfall schon nicht mehr funktionieren.
TwistedAir
Solution TwistedAir Jul 19, 2024 at 15:50:54 (UTC)
Goto Top
Hallo face-smile

ich möchte als kleines Projekt in der Firma eine Applikation entwickeln, welche ein Abteilungsleiter ausführen kann.
Diese soll im Falle eines Notfalls (z.B. Brandfall) eine Seite auf allen PCs öffnen, die eine Warnung an die Mitarbeiter ausgibt.

Für das gegebene Beispiel eines Brandfalls ist meines Erachtens eine Notfallapplikation nicht geeignet: es ist schlichtweg keine Zeit, dass ein Abteilungsleiter die Alarmierung auslöst.
  • Ist sichergestellt, dass immer und jederzeit eine Person verantwortlich Alarm auslösen kann? Wohl nicht. Abteilungsleiter ist im Meeting -> Zuviel Zeit verloren.
  • Wird die Person zuerst prüfen wollen, ob ein Brandereignis vorliegt? Eher schon. -> Zuviel Zeit verloren.
  • Sollten auch Abteilungsleiter im Brandfall umgehend das Gebäude verlassen? -> Keine Zeit zur Alarmierung.
  • Sollten Personen beim Verlassen des Gebäudes keine Sachen einpacken? -> Keine Alarmierung möglich, wenn der Rechner noch im Büro steht.
  • ...

Im Brandfall müssen alle Mitarbeiter sofort die Arbeit liegen lassen und sich zu den Sammelstellen begeben. Jede Sekunde zählt. Dabei sind nicht die Flammen, sondern die Rauchgase die gefährlicheren Begleiterscheinungen: es sterben mehr Personen durch Rauchgase, denn durchs Feuer selbst.

Die Alarmierung muss ein vorher festgelegter Automatismus ohne menschliche Fehlerquelle sein: Brandsensoren, Alarmierung, Rechner sperren, Fenster und Türen zu, Brandabschnitt prüfen, raus. Zu mehr ist keine Zeit.

Wie schnell sich ein Feuer ausbreitet und sich Rauchgase bilden, kann man auch in einem der unzähligen Brandsimulationsvideos sehen, bspw. https://www.youtube.com/watch?v=-t_JA-2b8ac

Jetzt gleich das mal mit dem Auslösen der Notfallapplikation ab.

Gruß
TA
kaiand1
kaiand1 Jul 19, 2024 at 17:21:27 (UTC)
Goto Top
Dazu wäre eine ELA Anlage auch Hilfreich die auch nach Sektoren/Bereiche Unterteilt werden kann.

Zitat von @TwistedAir:

Hallo face-smile

ich möchte als kleines Projekt in der Firma eine Applikation entwickeln, welche ein Abteilungsleiter ausführen kann.
Diese soll im Falle eines Notfalls (z.B. Brandfall) eine Seite auf allen PCs öffnen, die eine Warnung an die Mitarbeiter ausgibt.

Für das gegebene Beispiel eines Brandfalls ist meines Erachtens eine Notfallapplikation nicht geeignet: es ist schlichtweg keine Zeit, dass ein Abteilungsleiter die Alarmierung auslöst.
  • Ist sichergestellt, dass immer und jederzeit eine Person verantwortlich Alarm auslösen kann? Wohl nicht. Abteilungsleiter ist im Meeting -> Zuviel Zeit verloren.
  • Wird die Person zuerst prüfen wollen, ob ein Brandereignis vorliegt? Eher schon. -> Zuviel Zeit verloren.
  • Sollten auch Abteilungsleiter im Brandfall umgehend das Gebäude verlassen? -> Keine Zeit zur Alarmierung.
  • Sollten Personen beim Verlassen des Gebäudes keine Sachen einpacken? -> Keine Alarmierung möglich, wenn der Rechner noch im Büro steht.
  • ...

Im Brandfall müssen alle Mitarbeiter sofort die Arbeit liegen lassen und sich zu den Sammelstellen begeben. Jede Sekunde zählt. Dabei sind nicht die Flammen, sondern die Rauchgase die gefährlicheren Begleiterscheinungen: es sterben mehr Personen durch Rauchgase, denn durchs Feuer selbst.

Die Alarmierung muss ein vorher festgelegter Automatismus ohne menschliche Fehlerquelle sein: Brandsensoren, Alarmierung, Rechner sperren, Fenster und Türen zu, Brandabschnitt prüfen, raus. Zu mehr ist keine Zeit.

Wie schnell sich ein Feuer ausbreitet und sich Rauchgase bilden, kann man auch in einem der unzähligen Brandsimulationsvideos sehen, bspw. https://www.youtube.com/watch?v=-t_JA-2b8ac

Jetzt gleich das mal mit dem Auslösen der Notfallapplikation ab.

Gruß
TA
tikayevent
Solution tikayevent Jul 19, 2024 at 21:01:53 (UTC)
Goto Top
Zur technischen Seite: es gibt verschiedene Möglichkeiten:

du kannst etwas vorhandenes wie HTTP oder MQTT nutzen, musst aber sicherstellen, dass die Übertragung funktioniert, also alle paar Sekunden prüfen, ob die Verbindung möglich ist, indem du eine Leermeldung schickst. Wichtig ist, dass ein Verbindungsausfall erkannt und signalisiert wird. Ebenso musst du sicherstellen, dass eine Übertragung und Anzeige auch sicher erfolgt, aber nicht ausufert. Also es dürfen nur Änderungen signalisiert werden.
Nachteil von solchen Pull-Verbindungen ist, dass es eine Zeitverzögerung gibt.

Eine Alternative wären Push-Verbindungen, bei denen eine Verbindung dauerhaft (im Rahmen des Timeouts) aufrechterhalten wird und der Server sich darum kümmert, dass die Daten geliefert werden. Dieses ist komplizierter, da hier ein Session Management nötig ist. Der einfachste Fall ist eine TCP-Verbindung, die aufgebaut und dann vom Server auf die Funktionsfähigkeit geprüft wird, also Testmeldung rein und der Client muss reagieren. Der Client muss aber ebenfalls die Funktionsfähigkeit überwachen und die Verbindung wiederherstellen.
Hier muss aber auch das Netzwerk mitspielen, da einige Komponenten in Verbindungen eingreifen und diese bei zu langer Inaktivität trennen.

Also technisch möglich ist es definitiv, aber ich würde es nicht machen wollen. Weil je nach Alarmmeldung wäre es mir persönlich zu heikel.

Bei deiner Konstruktion hast du auch nur die Alarmierung. Die Erkennung, egal ob Brand oder was anderes, fehlt dir komplett und basiert deiner Beschreibung nach komplett auf dem menschlichen Fehlverhalten. Die natürliche Reaktion eines Menschen auf Gefahren ist die Flucht. Da denkt man nicht mehr daran, noch ein Programm zu öffnen, einen Knopf zu drücken und sowas. Man haut einfach ab.

Wenn keine Alarmierung gefordert ist, dann hat es seinen Grund, wenn die gefordert ist, gibt es auch Gründe dafür. Wenn man, trotz fehlender Forderung, dennoch was machen will, sollte man sich an Normen und Richtlinien halten. Bei einer Forderung muss man es. Und die Vorgaben durch Normen und Richtlinien sind nicht ohne, insbesondere weil diese mit Blut geschrieben wurden.

Also wenn du eine Alarmierung haben willst, dann nimm etwas, was am Markt verfügbar ist. Du willst nicht, dass das zwingend nötige Update für deine Anwendung ebenfalls mit Blut geschrieben wird.

Habe dafür leider zu wenig Praxiserfahrung...
Wenn du sowas bauen willst, bau es für dich zuhause, aber im Praxisbetrieb hat es nichts verloren.

Es gibt auch Alarmsoftware, so wie du dir die vorstellst, aber die ist professionell entwickelt, mit den notwendigen Redundanzen, Verbindungsprüfungen und Alternativalarmierungen ausgestattet. Eine solche Alarmsoftware läuft niemals alleine, sondern es gibt noch einen Ersatzweg, für den Fall, dass die Serversoftware nicht verfügbar oder eine registrierter Client vom Server aus nicht erreichbar ist. Die Erkennung erfolgt in diesem Fall von einem dafür vorgesehenen System (Brandmeldeanlage für Brände, Einbruch- und Überfallmeldeanlage für Überfälle und Bedrohungen und ähnlichem) und wird dann über eine Schnittstelle an die Alarmsoftware gegeben (Beispiel dafür ist ESPA 4.4.4).

Noch eine Anmerkung zu einigen Beiträgen: Mittlerweile ist eine sofortige Räumung des Objekts bei Gefahren nicht mehr die sinnvollste Reaktion. Die Systeme arbeiten mehrstufig. Es wird erkannt, welche Bereiche eines Objekts unmittelbar gefährdet sind, so dass hier die Räumung zuerst veranlasst wird, seit neustem auch mit dynamischer Fluchtwegmarkierung. Für viele Objekte entscheidet auch erst der Einsatzleiter, was passieren soll. Daher kann es durchaus sein, dass es brennt, aber niemand das Objekt verlassen muss. Ein Beispiel dafür sind Krankenhäuser, Einkaufscenter und große Veranstaltungsstätten.
FreeAfterUseException
FreeAfterUseException Jul 20, 2024 at 04:18:59 (UTC)
Goto Top
michi.wtr
michi.wtr Jul 20, 2024 at 09:51:27 (UTC)
Goto Top
Vielen Dank für die ganzen Rückmeldungen.

Natürlich haben wir Alarmanlagen für einen Brandfall, dies war nur ein Beispiel (hätte besser ein anderes nehmen sollen). Die Anforderung kam vom Werksleiter, der eine Alarmierung aus verschiedensten Gründen auf alle Desktops möchte.

Ob das Sinnvoll ist oder nicht, für mich dachte ich, es wär ein nettes kleines Projekt, welches ich für meine Projektarbeit in der Schule nutzen wollte. Daher gefallen mir die Lösungen mit MQTT und Websocket sehr gut.

LG
Micha
maretz
maretz Jul 20, 2024 at 14:08:54 (UTC)
Goto Top
Ich würde dir dennoch empfehlen immer klar zu erwähnen das diese Software NICHTS anderes ersetzt und nur ein nice-to-have ist... Solche Projekte sind natürlich immer gerne als "mach ich mal eben" genommen - und macht auch Spass. Wenn man das aber nich klar von vornherein abgrenzt haben die das Potential dir in den Händen zu explodieren -> wenn der Werksleiter dann kommt und sagt "ich hab geschreiben das Maschine XYZ nicht verwendet werden soll, Mitarbeiter X hats nich bekommen und das trotzdem gemacht, nu is die Welt im Eimer und wir alle müssen nen 48h Live-Konzert mit Helene Fischer durchstehen..."

Daher: Machen kein Problem, nur immer deutlich machen das es eher auf "nice to have" ist und relevante Infos immernoch eine Bestätigung durch die Person selbst erfordern...
kaiand1
kaiand1 Jul 20, 2024 at 14:41:35 (UTC)
Goto Top
Besonders wenn der Kollege gerade ein Gespräch hat und des Möp Möp Möp macht bis der "Bestätigt/Gelesen/Verstanden" Klickt um des Abzustellen und sein Gespräch Fortzusetzen.
Und ob er dann Später nochmal die Info Abruft oder des Vergessen hat weil er Unterbrochen wurde....
Roland567
Roland567 Jul 22, 2024 updated at 09:05:38 (UTC)
Goto Top
www.ibi-aws.net/de/

Das ist ein cooles Tool, welches wir seit sehr vielen Jahren verwenden.

Kann man auch bestens verwenden, wenn an der IT sonst was nicht läuft, oder einzelne Applikationen mal nicht laufen.
Oder eine Applikation nicht gestartet werden darf, weil ein Update installiert wird und vieles mehr.

Es braucht keine DB oder eMail Server um die User zu informieren.
Also nur den Client verteilen und irgendwo einen Share definieren.

Du kannst mit FullScreen informieren oder auch nur mit einem kleinen Fenster "unten rechts".
Es gibt unzählige Möglichkeiten dies zu steuern und definieren.

Mit Vorlagen hast du in wenigen Sekunden das ganze Haus informiert.

Gruss Roland

Falls du ein Ansprechpartner brauchst, einfach melden.
Penny.Cilin
Penny.Cilin Jul 22, 2024 at 12:39:02 (UTC)
Goto Top
Hallo zusammen,

ich möchte als kleines Projekt in der Firma eine Applikation entwickeln, welche ein Abteilungsleiter ausführen kann.
Diese soll im Falle eines Notfalls (z.B. Brandfall) eine Seite auf allen PCs öffnen, die eine Warnung an die Mitarbeiter ausgibt.
Auch wenn die Frage schon gelöst ist. Ja, es gibt so eine Software. Und NEIN, das ist NICHT für den Brandfall gedacht. Dafür gibt es andere Alarmierungswege.

Das was Du suchst ist Ideri. Hiermit kann man Anwender informieren.

Gruss Penny.