MoWaS - Modulares Warnsystem Anbindung an das System von Bund und Ländern für Warnungen und Gefahreninformationen. Funktionsprinzip MoWaS übermittelt die Meldung als XML Datei und läd diese auf den von uns zur Verfügung gestellten SFTP Zugang hoch. Der "Watcher" überwacht das Import Verzeichis und erstellt ein Job sowie eine neue Datei eintrifft. Der "Worker" verarbeiet die XML und schickt die Daten an den entsprechenden SVA JSON Server. Das Mapping zum entsprechenden JSON Server erfolgt über den Regionalschlüssel auf Kreis Ebene der Meldung. Details zum Aufbau des Regionalschlüssels wird hier ausführlich erklärt: verwaltungsgliederung_vg.pdf  und den passenden Regionalschlüssel findet man in der struktur_und_attribute_vg250.xls im Reiter VG250_Punkt Konfiguration Die Konfiguration befindet sich als statische JSON Datei im Git Repository https://gitlab.tpwd.de/ikusei/smart-village-app-mowas in der config/locations.json . Neue Standorte Infos zu den Orten und deren RS (Regionalschlüssen ) befinden sich in der struktur_und_attribute_vg250.xls  im Reiter:  VG250_Punkt Für einen neuen Eintrag einer Kommune werden folgende Informationen benötigt. Name der Kommune Regionalschlüssel API Endpunkt vom JSON Server der Kommune Auth Endpunt vom Main Server der Kommune OAuth Client ID und Secret Beispiel: { "name": "Internal Development", "rs": "999999999999", "endpoint": { "json_url": "https://json.int-development.smart-village.app/api", "auth_url": "https://server.int-development.smart-village.app/oauth/token", "client_id": "mOBa42XCe_yl3_u_ipUka8tc2oR6TMX8GATzVeZMNek", "client_secret": "Zb7iseniNw2eFtrmjQgmUuwbX03Xvimdps6D2c6nIS8" } } Testsendungen In unbestimmten Abständen werden Testsendungen seitens MoWaS durchgeführt. Diese werden mit dem Status Test gekennzeichnet. Diese Meldungen werden nicht an den JSON Server gesendet. Es findet eine Benachrichtigung per E-Mail und im Slack Channel #z-log-smartvillage-app statt. Dashboard Über das Dashboard können alle eingegangenen Meldungen und deren Verarbeitung eingesehen werden. Erreichbar unter für die jeweilige Umgebung unter:  https://mowas-dashboard.sva.customer.planetary-quantum.net https://mowas-staging-dashboard.sva.customer.planetary-quantum.net Production SFTP Zugang Der Zugang kann über einen beliebigen FTP Client erfolgen oder über den SFTPGo Web Client. Die Zugangsdaten sind im 1Password hinterlegt. SFTPGo Web Client https://mowas-ftp.sva.customer.planetary-quantum.net/web/client FTP Client Der Kundenzugang läuft über den User  mecom passwortlos mittels SSH Key. Host: mowas.smart-village.app Port: 2222 User: tpwd Pass: <1Password> Staging SFTPGo Web Client https://mowas-staging-ftp.sva.customer.planetary-quantum.net/web/client FTP Client Kundenzugang zum Staging ist derzeit nicht vorgesehen. Host: mowas.smart-village.app Port: 8888 User: tpwd Pass: <1Password> Besonderheiten der Staging Umgebung Das Funktionsprinzip ist identisch zur Production Umgebung. Die Verarbeitung läuft genauso, mit dem Unterschied das die Daten am Ende immer and "Internal Development" JSON Server mit dem Regionalschlüssel 999999999999 gesendet werden. Eine Benachrichtigung per E-Mail und im Slack Channel für Testsendungen findet ebenfalls statt. Dashboard Über das Dashboard können alle eingeganenen Meldungen und deren Verarbeitung eingesehen werden. Erreichbar unter: https://mowas-staging-dashboard.sva.customer.planetary-quantum.net Stack sftpgo sidekiq / redis watcher (listen) worker (sidekiq) Development 1.) redis-server 2.) ruby bin/watcher.rb 3.) sidekiq -r ./bin/worker.rb 4.) statt ftp benutzt man das Importverzeichnis import/new/ Debugger bundle exec bin/debugger.rb import/processed/