istSOS Quickstart¶
istSOS ist ein OGC-| SOS| Server-Implementierung geschrieben in ‚Python <https: www.python.org/=““>‘__. istSOS ermöglicht die Verwaltung und Dispatch von Beobachtungssensoren nach dem Sensor Observation Service Standard.</https:>
Das Projekt bietet auch eine grafische Benutzeroberfläche, die die tägliche Bedienung erleichtert, und eine RESTFull-Web-API zur Automatisierung von Verwaltungsabläufen.
istSOS wird unter der GPLv2-Lizenz veröffentlicht und läuft auf allen wichtigen Plattformen (Windows, Linux, Mac OS X), obwohl es nur in der Produktion in Linux-Umgebungen verwendet wurde.
Inhalt
Erstellen einer PostGIS-Datenbank¶
Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus:
sudo -u postgres createdb -E UTF8 istsos
sudo -u postgres psql -d istsos -c 'CREATE EXTENSION postgis'
Einrichten einer istSOS-Dienstinstanz¶
Mit istSOS können Sie Ihre Sensordaten in verschiedenen Instanzen organisieren. Jede Instanz verfügt über ein eigenes Datenbankschema, das von anderen Instanzen unabhängig ist. Sie können sogar andere Datenbanken über Ihr Netzwerk entsprechend Ihren Anforderungen bereitstellen.
Die ersten Schritte in istSOS-Setup besteht darin, die Standardkonfigurationsoptionen zu konfigurieren. Diese Optionen werden dann automatisch für jede neue istSOS-Instanz verwendet, die erstellt wird.
- to open the Web Admin interface. Alternatively, open a browser and go to
Klicken Sie auf der Administrationsseite auf die Schaltfläche :guilabel:‘Enter‘.
Konfigurieren Sie die Datenbankverbindung. Drücken Sie im Menü „Symbolleistenschaltflächen“ die Schaltfläche „Datenbank“ und füllen Sie die Konfigurationsoptionen der Datenbank aus:
user: postgres password: postgres host: localhost port: 5432 DB name: istsos
Drücken Sie die Schaltfläche „Dienstanbieter“ und füllen Sie sie mit Ihren institutionellen Informationen aus.
Drücken Sie die Schaltfläche „Dienstidentifikation“, und füllen Sie benutzerdefinierte Metadaten aus, die die Dienstnutzung beschreiben.
Drücken Sie die Schaltfläche „Koordinatensystem“, um das Koordinatenreferenzsystem (CRS) zu verwalten.
Standard-EPSG-Code: Dies ist das native Koordinatenreferenzsystem Ihrer Geometrien in der Datenbank.
Zugelassenes EPSG: Hier können Sie konfigurieren, welche anderen Koordinatenreferenzsysteme Ihr System auf Wunsch unterstützt und neu projiziert.
Drücken Sie im Menü „Symbolleistenschaltflächen“ die Schaltfläche „GetObservation Configuration“, um das maximale Zeitintervall pro getObservation-Anforderung (Null für keine Grenzwerte) und den Aggregations-No-Data-Wert festzulegen.
Konfigurieren Sie Ihre Dienstproxyadresse. Das Feld Proxy-URL ist die Basis-URL, die über einen Reverseproxy hinaus gesehen wird.
Erstellen eines neuen Dienstes¶
Nachdem Sie istSOS konfiguriert haben, ist es an der Zeit, eine neue Dienstinstanz zu erstellen.
Drücken Sie im Menü der Buttons die Schaltfläche „Neuer Service“ und klicken Sie auf :guilabel:‘Next‘.
Geben Sie demo für den Dienstnamen ein.
Im Feld EPSG können Sie die native Datenbankprojektion festlegen. Lassen Sie es leer, um die Standardeinstellung zu verwenden. Klicken Sie auf :guilabel:‘Next‘.
Wenn Sie auf das Feld „Datenbank anpassen“ klicken, können Sie die Standarddatenbankkonfiguration für diese neue istSOS-Instanz ändern.
Drücken Sie :guilabel:‘Next‘. Das Serverstatusfenster wird angezeigt. Wenn während der Erstellung etwas schief gelaufen ist, sehen Sie hier eine Warnung.
Bemerkung
Die istSOS „demo“-Instanz hat alle Konfigurationsoptionen von der Standardkonfiguration geerbt. Wenn Sie sich aus irgendeinem Grund dazu entschließen, sie zu ändern, wirken sich die Änderungen nur auf diese Instanz aus.
Hinzufügen einer neuen Prozedur¶
Wählen Sie aus der Dropdown-Schaltfläche „Dienste“ der Admin-Schnittstelle (http://localhost/istsos/admin ) die gewünschte Instanz aus.
Drücken Sie im Menü der Buttons die Schaltfläche :guilabel:‘New procedure‘.
Füllen Sie das Formular mit entsprechenden Informationen aus.
Warnung
Sobald eine Prozedur erstellt wurde, können die Ausgänge (beobachtete Eigenschaften) nicht mehr geändert werden.
Bemerkung
Optionale Parameter: Füllen Sie diese nach Bedarf
Beispiel (minimale Konfiguration)
Name: T_LUGANO |
Beschreibung: Temperatur-Wetterstation in Lugano |
Stichworte: Wetter, Meteorologisch, IST |
Systemtyp: insitu-fixed-point |
Sensortyp: PTC thermistors of the „switching“ type |
FOI-Name: LUGANO |
EPSG: 4326 |
Koordinaten: x: 8.96127 y: 46.02723 z: 344.1 |
Ausgaben (bestätigen Sie die Ausgaben über den Button „hinzufügen“):
Observed property: urn:ogc:def:parameter:x-istsos:1.0:meteo:air:temperature |
Maßeinheit: °C |
Description (optional): conversion from resistance to tempera |
Qualitätsindexprüfung (optional): Zwischen/ von -40 bis +60 |
Bemerkung
Registrieren Sie den neuen Sensor (Verfahren), indem Sie die Taste „Absenden“ drücken.
Hinzufügen neuer Beobachtungen¶
Zuerst erstellen wir eine Textdatei mit Sensordaten, formatiert nach „text/csv, subtype=istSOS“. Die Datei verwendet ein CSV-Format (Comma Separated Values). Die erste Zeile enthält Kopfzeileninformationen, einschließlich URI-Namen der beobachteten Eigenschaften. Die folgenden Zeilen enthalten die Daten.
Öffnen Sie einen Texteditor, indem Sie :menuselection:‘Zubehör –> FeatherPad‘ auswählen.
Kopieren und fügen Sie den folgenden Text in das Texteditorfenster ein:
urn:ogc:def:parameter:x-istsos:1.0:time:iso8601,urn:ogc:def:parameter:x-istsos:1.0:meteo:air:temperature 2014-06-03T14:30:00.00Z,22.20 2014-06-03T14:40:00.00Z,22.00 2014-06-03T14:50:00.00Z,21.70 2014-06-03T15:00:00.00Z,21.20 2014-06-03T15:10:00.00Z,20.70 2014-06-03T15:20:00.00Z,20.20 2014-06-03T15:30:00.00Z,19.60 2014-06-03T15:40:00.00Z,19.20 2014-06-03T15:50:00.00Z,18.20 2014-06-03T16:00:00.00Z,18.00 2014-06-03T16:10:00.00Z,17.20
Speichern Sie die Datei als „T_LUGANO_20140603161000000.dat“ auf dem Desktop. Die verwendete Dateinamenkonvention lautet: PROCEDURENAME_YYYYMMDDhhmmssfff.dat
Öffnen Sie ein Terminal, indem Sie :menuselection:‘System Tools –> LXTerminal‘ auswählen.
Geben Sie im Terminal „cd /usr/share/istsos/“ ein und drücken Sie die Eingabetaste (Enter).
Schreiben Sie „python scripts/csv2istsos.py -p T_LUGANO -u http://localhost/istsos -s demo -w ‚/Desktop‘ und drücken Sie ENTER
Es sollte die Meldung „Insert observation success: True“ angezeigt werden.
Klicken Sie auf :menuselection:‘Geospatial –> Webservices –> istSOS‘.
Klicken Sie auf die Schaltfläche :guilabel:‘Enter‘ auf der Administrationsseite
Klicken Sie auf :menuselection:‘Data Management –> Data Viewer‘.
- Wählen Sie Folgendes aus:
Service = demo
Offering = temporary
Verfahren T_LUGANO
Klicken Sie auf die Schaltfläche :guilabel:‘Add‘
Klicken Sie auf die Schaltfläche :guilabel:‘Plot‘ und überprüfen Sie, ob die Daten hinzugefügt wurden (achten Sie auf Ihre Zeitzone!)
Was kommt als Nächstes?¶
Um mehr über istSOS zu erfahren, ist ein Blick in die istSOS Dokumentation und das istSOS Tutorial zu empfehlen.