Server-API
Die Serverkomponente von Talsim-NG (TalsimNGSrv) bietet eine REST (HTTP) Schnittstelle (API), über die Daten abgerufen und an den Server übermittelt werden können. Daten werden über diese Schnittstelle im XML oder JSON Format ausgetauscht. Im Folgenden wird diese Schnittstelle dokumentiert:
talsim.de
verwendet, dies ist mit der Adresse oder IP des tatsächlich verwendeten Talsim-Servers zu ersetzen.HttpDataSrv
Der HttpDataSrv Service dient zur Abfrage von Daten mit Bezug zum System, Systemvarianten, Listen zu Zeitreihen-Ordnern oder Zeitreihen. Der HttpDataSrv ist standardmäßig über den Port 8090 ansprechbar und bietet die folgenden Schnittstellen:
requestClients
Generelle Abfrage aller Kunden (wird zukünftig in requestCustomers geändert)
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
HttpZreSrv ist der zentrale Service zur Interaktion mit Zeitreihen. Der HttpZreSrv ist standardmäßig über den Port 8092 ansprechbar. Es gibt folgende Schnittstellen, um auf Zeitreihen und deren Metadaten zuzugreifen:
SydroTimeSeries
Abfrage einer Zeitreihe
Als Parameter sind zu übergeben Customer
, User
, Id
der Zeitreihe, Weitere Parameter sind entweder ein SQL Statement SQLCriteria
oder alternativ drei Parameter als Startdate
, Enddate
und AttributeFlag
.
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 yyyy-MM-dd HH:mm
(z.B. 2010-08-15 08:00
) angegeben werden.
Beispiel 1: http://talsim.de:8092/TalsimNGServer/HttpZreSrv/SydroTimeSeries/TestAPI,MusterUser,9999,attribFlag=0
Beispiel 2: http://talsim.de:8092/TalsimNGServer/HttpZreSrv/SydroTimeSeries/TestAPI,MusterUser,9999,2001-05-15 00:00,2001-10-15 00:00,-1
oder
requestSydroTimeSeries
Abfrage einer Zeitreihe
Als Parameter sind zu übergeben Customer
, 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
 1975-02-01 00:00:00,0.1
 1975-03-01 00:00:00,0.3
 1975-04-01 00:00:00,0.99
 1975-05-01 00:00:00,1.19
 1975-06-01 00:00:00,0.58
 1975-07-01 00:00:00,0.22
 1975-08-01 00:00:00,0.11
 1975-09-01 00:00:00,0.09
 1975-10-01 00:00:00,0.1
 </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