

istSOS Snabbstart¶
istSOS är en OGC Sensor Observation Service (SOS)-serverimplementering skriven i Python. istSOS gör det möjligt att hantera och skicka observationer från övervakningssensorer enligt Sensor Observation Service-standarden.
Projektet tillhandahåller också ett grafiskt användargränssnitt som underlättar den dagliga driften och ett RESTFull Web Api för att automatisera administrationsprocedurer.
istSOS släpps under GPLv2-licensen och körs på alla större plattformar (Windows, Linux, Mac OS X), även om det endast har använts i produktion i Linux-miljö.
Skapa postgis-databas¶
Öppna en terminal och utför följande kommandon:
sudo -u postgres createdb -E UTF8 istsos
sudo -u postgres psql -d istsos -c 'CREATE EXTENSION postgis'
Konfigurera en istSOS-tjänstinstans¶
Med istSOS kan du organisera dina sensordata i olika instanser. Varje instans har sitt eget databasschema som är oberoende av andra instanser. Du kan till och med distribuera andra databaser över ditt nätverk enligt dina behov.
De första stegen i istSOS-installationen är att konfigurera standardkonfigurationsalternativen. Dessa alternativ kommer sedan automatiskt att användas för din bekvämlighet av varje ny istSOS-instans som skapas.
Klicka på http://localhost/istsos/admin
för att öppna gränssnittet Web Admin. Alternativt kan du öppna en webbläsare och gå tillKlicka på knappen Enter på administrationssidan.
Konfigurera din databasanslutning. Tryck på knappen ”Database” i verktygsfältets knappmeny och fyll i alternativen för databaskonfigurationen:
user: postgres password: postgres host: localhost port: 5432 DB name: istsos
Tryck på knappen ”Service provider” och fyll i den med din institutionsinformation.
Tryck på knappen ”Service identification” och fyll i anpassade metadata som beskriver användningen av tjänsten.
Tryck på knappen ”Koordinatsystem” för att hantera referenssystemet för koordinater (CRS).
Standard EPSG-kod: detta kommer att vara det ursprungliga koordinatreferenssystemet för dina geometrier i databasen.
Tillåtna EPSG: här kan du konfigurera vilka andra koordinatreferenssystem som ditt system ska stödja och omprojicera på begäran.
I verktygsfältets knappmeny trycker du på knappen ”GetObservation Configuration” för att ange maximalt tidsintervall per getObservation-begäran (noll för inga gränser) och aggregationens no-data-värde.
Konfigurera din proxyadress för tjänsten. Fältet Proxy URL är den bas-URL som ses bortom en omvänd proxy.
Skapa en ny tjänst¶
Nu när du har konfigurerat istSOS är det dags att skapa en ny serviceinstans.
Tryck på knappen ”ny tjänst” i verktygsfältets knappmeny och klicka på Next.
Ange demo som namn på tjänsten.
I fältet EPSG kan du ange databasens ursprungliga projektion. Lämna det tomt för att använda standardvärdet. Klicka på Next.
Genom att klicka på rutan ”Customize database” kan du ändra standardkonfigurationen för databasen för den nya istSOS-instansen.
Tryck på Next. Serverns statuspanel visas. Om något har gått fel under skapandet kommer du att se en varning här.
Observera
Instansen istSOS ”demo” har ärvt alla konfigurationsalternativ från standardkonfigurationen. Om du av någon anledning bestämmer dig för att ändra dem, kommer ändringarna endast att påverka denna instans.
Lägg till en ny procedur¶
Välj önskad instans från rullgardinsmenyn ”services” i administratörsgränssnittet (http://localhost/istsos/admin ).
I verktygsfältets knappmeny trycker du på knappen Ny procedur.
Fyll i formuläret med hjälp av lämplig information.
Varning
När en procedur väl har skapats kan utdata (observerade egenskaper) inte ändras.
Observera
Valfria parametrar: Fyll på ditt eget behov och vilja
Exempel (minimal konfiguration)
Namn: T_LUGANO |
Beskrivning: temperatur väderstation i Lugano |
Nyckelord: väder, meteorologi, IST |
Systemtyp: insitu-fixerad punkt |
Typ av givare: PTC-termistorer av ”switching”-typ |
FOI-namn: LUGANO |
EPSG: 4326 |
Koordinater: x: 8,96127 y: 46.02723 z: 344.1 |
Utgångar (bekräfta utgångarna genom att trycka på ”lägg till”-knappen):
Observerad egenskap: urn:ogc:def:parameter:x-istsos:1.0:meteo:air:temperature |
Måttenhet: °C |
Beskrivning (valfri): omvandling från motstånd till tempera |
kontroll av kvalitetsindex (tillval): Mellan / från -40 till +60 |
Observera
Registrera den nya sensorn (procedur) genom att trycka på knappen ”submit”.
Lägg till nya observationer¶
Först ska vi skapa en textfil med sensordata, formaterad enligt ”text/csv, subtype=istSOS”. Filen använder ett CSV-format (Comma Separated Values). Den första raden innehåller rubrikinformation, inklusive URI-namn för de observerade egenskaperna. Följande rader innehåller data.
Öppna en textredigerare genom att välja
.Kopiera och klistra in följande text i textredigeringsfönstret:
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
Spara filen som ”T_LUGANO_20140603161000000.dat” på skrivbordet. Den filnamnskonvention som används är: PROCEDURENAMN_ÅÅÅÅMMDDhhmmssfff.dat
Öppna en terminal genom att välja
.I terminalen skriver du in: ”cd /usr/share/istsos/” och tryck på ENTER.
Skriv ”python scripts/csv2istsos.py -p T_LUGANO -u http://localhost/istsos -s demo -w ~/Desktop” och tryck på ENTER
Du bör se ett meddelande ”Insert observation success: True”
Klicka på
.Klicka på knappen Enter på administrationssidan
Klicka på
.- Välj följande:
Service = demo
Erbjudande = tillfälligt
Förfarande T_LUGANO
Klicka på Add-knappen
Klicka på knappen Plot och kontrollera att data har lagts till (se upp för din tidszon!)

Hur vill du gå vidare?¶
För att lära dig mer om istSOS är en utgångspunkt istSOS Documentation och istSOS Tutorial.