Dies ist eine C++-Bibliothek zum Auslösen von Alarmen in FE2.
- Erstellung strukturierter Alarme (z. B. Ort, Stichwort, Patienten, Fahrzeuge)
- Benutzung der Externen Schnittstelle
- JSON-Serialisierung mit nlohmann/json
- Versand per HTTP POST via libcurl
- Laufzeit- oder Buildzeit-Konfiguration von API-Key und URL
fe2_library/
├── include/ # Header-Dateien (alarm.h)
├── src/ # Bibliothekscode (alarm.cpp)
├── CMakeLists.txt # CMake Buildsystem
├── config.h.in # API-Key/URL-Konfiguration
|── LICENSE # MIT License
|── Doxyfile.in # DOXY Configuration
|── main.cpp # Beispielprogramm, wird mitgebaut
└── README.md
- CMake ≥ 3.10
- C++17-kompatibler Compiler
- libcurl (Linux oder Windows verfügbar)
- json.hpp (lokal eingebunden)
sudo apt install cmake g++ libcurl4-openssl-dev
git clone https://github.com/BRKFuerth/fe2_library.git
cd fe2_library
# Beispiel mit eingekompiliertem API-Key und URL
cmake -B build -DAPI_KEY=mein-key -DAPI_URL=https://fe2.example.com
cmake --build build
# Ausführen
./build/fe2_testOhne Kompilierung von API_KEY/API_URL:
cmake -B build_dynamic
cmake --build build_dynamic
# Übergabe zur Laufzeit:
./build_dynamic/fe2_test mein-key https://fe2.example.com- Visual Studio mit "C++ Desktop Development" und CMake-Unterstützung
- Alternativ: MinGW
git clone https://github.com/BRKFuerth/fe2_library.git
cd fe2_library
mkdir build
cd build
cmake .. -DAPI_KEY=mein-key -DAPI_URL=https://fe2.example.com
cmake --build . --config ReleaseErgebnis: build/Release/fe2_test.exe
sudo apt install mingw-w64
cmake -B build-win \
-DCMAKE_TOOLCHAIN_FILE=toolchain-mingw.cmake \
-DAPI_KEY=mein-key \
-DAPI_URL=https://fe2.example.com
cmake --build build-winErstellt eine Windows-kompatible .dll oder .exe unter build-win/
Alarm *alarm = alarm_create("Absendersoftware + PC Name");
alarm_setKeyword(alarm, "Testalarm", "Dies ist ein Testalarm");
alarm_addMessage(alarm, "Dies ist eine Testnachricht");
alarm_setLocation(alarm, "Musterstraße", "123", "Musterstadt", 10.988, 49.477);
alarm_setCaller(alarm, "Max Mustermann", "0911/123456");
alarm_addPatient(alarm, "Max Mustermann", "Keine Angaben", "Klinikum Buxtehude", "123456");
alarm_addVehicle(alarm, "RK Fürth 71/01", "Dispoinfo - kann wegbleiben");
std::cout << alarm_toJsonString(alarm) << std::endl;
alarm_send(alarm);cmake -B build
make -C build docDie HTML-Dokumentation befindet sich unter:
build/doc/html/index.html
MIT-Lizenz – freie Verwendung, auch in BOS-Systemen und kommerziellen Umgebungen möglich. Siehe LICENSE.