Git Product home page Git Product logo

Comments (12)

Phill93 avatar Phill93 commented on June 2, 2024 1

Hallo,
ich bin gerade in der Planung für so ein Plugin, das große Problem bei dem Einlesen von E-Mails ist wie du gesagt hast das Format. Die Lösung dafür währe ein Tool wie ttp so muss man nur ein Template erstellen

from situationboard.

noffycws avatar noffycws commented on June 2, 2024 1

Wir bekommen unsere Einsatzmeldungen per Mail über die Leitstelle. Ist das System Secur.CAD. Das verwenden viele Leitstellen.

Das Postfach lese ich aus (IMAP) und werte die Mails aus. Der Inhalt ist in HTML, von daher etwas strukturiert. Ist aber sehr viel Text-Parsen. Quellcodes habe ich aber in PHP, da ich kein Python kann. Wenn Interesse, dann gerne per PN melden. Dann können wir uns gerne mal austauschen.

Bei mir wandert alles in ein Online-Einsatztagebuch und eine Lagekarte.

from situationboard.

Phill93 avatar Phill93 commented on June 2, 2024 1

Status siehe #3

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Hi Grave,

theoretisch kann so ziemlich alles als Quelle für Alarmereignisse dienen, da SituationBoard die Möglichkeit bietet beliebige Quell-Plugins (und Aktions-Plugins) hinzuzufügen.
Aktuell haben wir Quell-Plugins für SMS Empfang (Alarm SMS der Leitstelle/ILS), GPIO Binäreingänge (um einen Piepser anzuschließen) und für eine Dummy-Quelle (um Tests von Backend/Frontend oder Konfiguration zu vereinfachen).
Alarmempfang via Mail fände ich neben Faxempfang oder einer direkten Schnittstelle zur Leitstelle/ILS tatsächlich noch eine schöne Ergänzung und hatte ich auch schon auf meiner langfristigen Ideen/Todo-Liste.
Im Gegensatz zum SMS Empfang, sollte es relativ einfach sein ein Quell-Plugin für den Mail-Empfang zu implementieren, da es bereits Python-Bibliotheken speziell für den Empfang/Versand von Mails gibt.
Je nach Mailformat steckt jedoch nochmal etwas Aufwand in der Implementierung des Mail-Parser-Plugins, der die relevanten Informationen aus der Mail extrahiert (wie es auch der SMS-Parser tut).
Bist du fit in Python oder habt ihr Kollegen in der Feuerwehr die sich mit dem Programmieren auskennen?
Für die beiden neuen Plugins (SourceDriverMail.py und MessageParserMail.py) kann der Aufbau von backend/source/SourceDriverSMS.py und backend/source/MessageParserSMS.py als Anhaltspunkt dienen.
Wenn ihr Unterstützung braucht oder Fragen habt, dann meldet euch einfach.

Viele Grüße
Basti


Hi Grave,

in theory, pretty much anything could become a source for alarm events since SituationBoard offers the ability to add custom source plugins (and action plugins).
Currently, we have implemented source plugins for SMS reception (alarm SMS from the public safety answering point / PSAP), GPIO/binary inputs (to connect pagers) and for a dummy source (to simplify testing of the backend/frontend or the configuration).
Alarm reception via mail (just like fax reception or a direct API to the PSAP) would really be an excellent addition and is already on my long-term idea/todo list.
In contrast to SMS reception, it should be relatively simple to implement a source plugin that receives mails as there are Python libraries readily available for sending/receiving mails.
Depending on the format of the mail, it can be a little bit harder to write a mail parser plugin that extracts the relevant information from the mail (just like the SMS parser does).
Do you have experience as a Python developer, or are there colleagues in your fire department that are familiar with software development?
The both files backend/source/SourceDriverSMS.py and backend/source/MessageParserSMS.py can serve as a structural template for the two new plugins (SourceDriverMail.py and MessageParserMail.py).
If you need assistance or have any questions, feel free to contact me.

Best regards,
Basti

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Übrigens: Weitere Informationen zur Entwicklung von Plugins findet man im letzten Abschnitt der README.md


BTW: More information on the development of plugins is provided in the last section of the README.md

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Cool, dass du dich der Sache annimmst. 🙂

Leider bietet unsere Leitstelle – soweit ich das weiß – keine Einsatzmails an.
Daher habe ich bisher noch keine dieser Einsatzmails gesehen und kann die Komplexität und die Variantenvielfalt der Mails (z.B. zwischen verschiedenen Leitstellen und deren Systemen) nicht wirklich einschätzen.

Für den SMS Empfang reicht bisher (noch ?) ein minimaler, selbstgebastelter und hartkodierter Parser und ein umfangreiches Sortiment an Testcases.
Sollte das im Falle von Mail zu kompliziert bzw. nicht flexibel genug sein, dann wäre mein favorisierter Weg vermutlich entsprechende Bordmittel von Python zu nutzen (falls vorhanden) oder ein gut gepflegtes PIP Package zu verwenden (das man im Rahmen des Setupskripts installieren kann).
ttp kenne ich bisher nicht wirklich könnte aber tatsächlich ein guter Kandidat sein. 🙂

(Und langfristig könnte dann ggf. auch der SMS-Parser auf eine Template-basierte Parser-Lösung umgestellt werden.)

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Cool. 🙂 Ich freue mich über jeden, der die Implementierung des Mail Plugins (oder SituationBoard im Allgemeinen) voranbringen will.

Ich hab' gesehen du hast das Repository auch schon geforkt. 👍
Leider kann ich im Moment nicht einschätzen, wer hier gerade schon wie aktiv ist (und das ganze ggf. auch federführend übernehmen könnte).
Vielleicht könnt ihr euch ja untereinander mal austauschen.

Ich selbst helfe auch gerne mit, wenn es um allgemeine Plugin/Setup/Config/Event-Loop/Python/... Dinge oder den letzten Feinschliff für ein neues SituationBoard Release geht.
Federführend macht es aber vermutlich Sinn, wenn das erstmal jemand macht der das Plugin aktiv nutzen und testen kann (und die zugehörigen Mails schon mal gesehen hat).

Python ist übrigens kein rocket science. 😉 Wenn du PHP kannst, dann sollte Python für dich auch kein großes Problem sein. 😎

from situationboard.

noffycws avatar noffycws commented on June 2, 2024

Der Fork war eher ein Versehen 😉

Ja, Python scheint nicht schwer zu sein, mir fehlt aber mich einzuarbeiten. Ich kann gerne Mails bereitstellen und PHP-Code zum parsen ... wobei der auch eher hemdsärmelich ist ... abdr funktioniert.

Wir machen übrigens auch ein Push (über Telegramm-Bot) ... inkl Rückmeldung und (mit ioBroker dazwischen) Alexa-Sprachausgabe.

Also gerne alles weitere per PN.

from situationboard.

Phill93 avatar Phill93 commented on June 2, 2024

Ich werde mich am Wochenende mal an das Mail Plugin setzten

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Der Fork war eher ein Versehen 😉

Ach so. 😅

Sollte der Mail-Parser schlussendlich doch bei mir landen, dann wären v.a. (anonymisierte und von datenschutztechnisch kritischen Daten bereinigte) Beispiel-Mails gut. Zum einen um den Parser (oder ggf. die Templates für einen Parser) zu erstellen und zum anderen auch als automatisierte Testcases.

Ich werde mich am Wochenende mal an das Mail Plugin setzten

Wenn sich Phill93 darum kümmert, dann wäre vermutlich v.a. interessant, ob sich die Mails der Leitstellen im Format unterscheiden.

Was die Alarmierung von Einsatzkräften betrifft:
Wir haben zur (optionalen) Alarmierung im Moment ein Action Plugin, das den PowerAlarm Dienst (kommerzieller deutscher Anbieter) zur Auslieferung der Nachrichten verwendet.
Die Möglichkeit für Rückmeldungen finde ich an Telegramm auch sehr praktisch, allerdings hatte ich bei Telegram bisher datenschutztechnisch etwas Bedenken.
Vielleicht findet sich in Zukunft dennoch die Möglichkeit eine prinzipielle (Alarmierungsdienst-agnostische und Plugin-basierte) Unterstützung von Rückmeldungen in SituationBoard zu integrieren. (Ich hatte mir dazu auch schon mal ein paar Gedanken gemacht.)

Findet man online mehr Infos zu eurem Projekt?

Was meinst du mit PN? Unterstützt GitHub private Nachrichten? (Ich habe auch deine Mailadresse auf die Schnelle nicht gefunden.)

from situationboard.

MaInTec24 avatar MaInTec24 commented on June 2, 2024

Hey zusammen,
ich möchte das ganze ebenfalls im bestenfall dieses Jahr noch angehen. Wir erhalten Einsatzmails von der Leitstelle, die im Anhang ein immer gleich aufgebautes PDF haben, welches die selben Inhalte wie das Einsatzfax hat. Leider kann und möchte ich das Fax nicht verwenden, sondern die PDF Datei. Python Grundkenntnisse habe ich. Inwiefern macht es Sinn, dies zu integrieren Phil93 - sollen wir hierzu in Kontakt treten? Oder macht es mehr Sinn, diesen speziellen Anwendungsfall gesondert als Plugin zu implementieren?

Ich bin noch Anfänger und gerade am Anfang meines Informatikstudiums.

Gruß Thomas

from situationboard.

Sebastian-Maier avatar Sebastian-Maier commented on June 2, 2024

Hi Thomas,
willkommen an Bord. 🙂
Viel Kommunikation (jenseits von reinen Bugs und Feature Requests) findet bei uns aktuell über Mattermost statt.
Wenn du mir kurz eine Mail schickst, dann schicke ich dir eine Einladung zu. Meine Mailadresse findest du auf meiner privaten Homepage (siehe GitHub Profil).
Viele Grüße
Basti

from situationboard.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.