../../_images/logo_istsos.png ../../_images/OSGeo_community.png

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.

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.

  1. Click Geospatial ‣ Web Services ‣ istSOS to open the Web Admin interface. Alternatively, open a browser and go to http://localhost/istsos/admin

  2. Klicken Sie auf der Administrationsseite auf die Schaltfläche :guilabel:‘Enter‘.

  3. 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
    
  4. Drücken Sie die Schaltfläche „Dienstanbieter“ und füllen Sie sie mit Ihren institutionellen Informationen aus.

  5. Drücken Sie die Schaltfläche „Dienstidentifikation“, und füllen Sie benutzerdefinierte Metadaten aus, die die Dienstnutzung beschreiben.

  6. 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.

  7. 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.

  8. 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.

  1. Drücken Sie im Menü der Buttons die Schaltfläche „Neuer Service“ und klicken Sie auf :guilabel:‘Next‘.

  2. Geben Sie demo für den Dienstnamen ein.

  3. Im Feld EPSG können Sie die native Datenbankprojektion festlegen. Lassen Sie es leer, um die Standardeinstellung zu verwenden. Klicken Sie auf :guilabel:‘Next‘.

  4. Wenn Sie auf das Feld „Datenbank anpassen“ klicken, können Sie die Standarddatenbankkonfiguration für diese neue istSOS-Instanz ändern.

  5. 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

  1. Wählen Sie aus der Dropdown-Schaltfläche „Dienste“ der Admin-Schnittstelle (http://localhost/istsos/admin ) die gewünschte Instanz aus.

  2. Drücken Sie im Menü der Buttons die Schaltfläche :guilabel:‘New procedure‘.

  3. 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.

  1. Öffnen Sie einen Texteditor, indem Sie :menuselection:‘Zubehör –> FeatherPad‘ auswählen.

  2. 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
    
  3. Speichern Sie die Datei als „T_LUGANO_20140603161000000.dat“ auf dem Desktop. Die verwendete Dateinamenkonvention lautet: PROCEDURENAME_YYYYMMDDhhmmssfff.dat

  4. Öffnen Sie ein Terminal, indem Sie :menuselection:‘System Tools –> LXTerminal‘ auswählen.

  5. Geben Sie im Terminal „cd /usr/share/istsos/“ ein und drücken Sie die Eingabetaste (Enter).

  6. Schreiben Sie „python scripts/csv2istsos.py -p T_LUGANO -u http://localhost/istsos -s demo -w ‚/Desktop‘ und drücken Sie ENTER

  7. Es sollte die Meldung „Insert observation success: True“ angezeigt werden.

  8. Klicken Sie auf :menuselection:‘Geospatial –> Webservices –> istSOS‘.

  9. Klicken Sie auf die Schaltfläche :guilabel:‘Enter‘ auf der Administrationsseite

  10. Klicken Sie auf :menuselection:‘Data Management –> Data Viewer‘.

  11. Wählen Sie Folgendes aus:
    • Service = demo

    • Offering = temporary

    • Verfahren T_LUGANO

  12. Klicken Sie auf die Schaltfläche :guilabel:‘Add‘

  13. Klicken Sie auf die Schaltfläche :guilabel:‘Plot‘ und überprüfen Sie, ob die Daten hinzugefügt wurden (achten Sie auf Ihre Zeitzone!)

../../_images/istsos_viewer.png

Was kommt als Nächstes?

Um mehr über istSOS zu erfahren, ist ein Blick in die istSOS Dokumentation und das istSOS Tutorial zu empfehlen.