Server-API

Aus TALSIM Docs
Version vom 26. September 2019, 12:27 Uhr von Froehlich (Diskussion | Beiträge) (Erste Fassung)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Die Server-API befindet sich noch in der Entwicklungsphase, Änderungen sind zu erwarten

Die Serverkomponente von Talsim-NG (TalsimNGSrv) bietet eine HTTP-Schnittstelle (API), über die verschiedene Daten abgerufen und auch an den Server übermittelt werden können. Daten werden über diese Schnittstelle immer im XML-Format ausgetauscht. Im Folgenden wird diese Schnittstelle dokumentiert: In den unten angegebenen Beispielen wird als Server-Adresse talsim.de verwendet, dies ist mit der Adresse oder IP des tatsächlich verwendeten Talsim-Servers zu ersetzen.

HttpDataSrv

Der HttpDataSrv ist standardmäßig über den Port 8090 ansprechbar und bietet die folgenden Schnittstellen:

requestClients

Generelle Abfrage aller Kunden

Beispiel: http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestClients/|

requestZreDirectories

Abfrage von Zeitreihen-Ordnern:

Beispiel: http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestZreDirectories/Nile,|

requestZreFiles

Abfrage von vorhandenen Zeitreihen:

Beispiel: http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestZreFiles/Nile,hubert,16

requestSystemAndSysVar

Abfrage von Systemen und Systemvarianten

Beispiel: http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestSystemAndSysVar/WFP_SSD,hubert,1

HttpZreSrv

Der HttpZreSrv ist standardmäßig über den Port 8092 ansprechbar und bietet die folgenden Schnittstellen um auf Zeitreihen zuzugreifen:

requestSydroTimeSeries

Abfrage einer Zeitreihe

Als Parameter sind zu übergeben Client, User, Id der Zeitreihe, Startdate, Enddate und Separator (Trennzeichen für den CSV-Inhalt)

Wenn Startdate und Enddate mit 0 angegeben werden, wird die gesamte Zeitreihe gelesen. Um nur einen Teil der Zeitreihe zu bekommen, können Anfang und/oder Ende mit Datumsformat dd.MM.yyyy HH:mm (z.B. 01.01.2010 00:00) oder yyyyMMddHHmm (z.B. 201001010000) angegeben werden.

Beispiel: http://talsim.de:8092/TalsimNGServer/HttpZreSrv/requestSydroTimeSeries/CSV/UNDP_Kura,Kura,318,0,0,comma

postTimeSeriesValues

Setzen von Zeitreihenwerten (POST)

Beispiel: http://10.0.0.5:8092/TalsimNGServer/HttpZreSrv/postTimeSeriesValues
Post data (raw text):

<SydroTimeSeries>
    <Client>UNDP_Kura</Client>
    <Id>318</Id>
    <Length>427</Length>
    <Name>GE.Iori</Name>
    <ResultMsg></ResultMsg>
    <StationId>21</StationId>
    <TimeSeriesString>
	1975-01-01 00:00:00,0.09&#xD;
	1975-02-01 00:00:00,0.1&#xD;
	1975-03-01 00:00:00,0.3&#xD;
	1975-04-01 00:00:00,0.99&#xD;
	1975-05-01 00:00:00,1.19&#xD;
	1975-06-01 00:00:00,0.58&#xD;
	1975-07-01 00:00:00,0.22&#xD;
	1975-08-01 00:00:00,0.11&#xD;
	1975-09-01 00:00:00,0.09&#xD;
	1975-10-01 00:00:00,0.1&#xD;
</TimeSeriesString>
</SydroTimeSeries>

requestSydroZreBin

Beispiel: http://talsim.de:8092/TalsimNGServer/HttpZreSrv/requestSydroZreBin/WFP_SSD,hubert,724,201001010000,201201010000,0

refreshSydroZreBin

Beispiel: http://localhost:8092/TalsimNGServer/HttpZreSrv/refreshSydroZreBin/All/WFP_SSD,hubert