Server-API: Unterschied zwischen den Versionen

Aus TALSIM Docs
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
<div class="achtung">Die Server-API befindet sich noch in der Entwicklungsphase, Änderungen sind zu erwarten</div>
<div class="achtung">Die Server-API befindet sich noch in der Entwicklungsphase, Änderungen sind zu erwarten</div>


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:
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:
__TOC__
__TOC__
<div class="info">In den unten angegebenen Beispielen wird als Server-Adresse <code>talsim.de</code> verwendet, dies ist mit der Adresse oder IP des tatsächlich verwendeten Talsim-Servers zu ersetzen.</div>
<div class="info">In den unten angegebenen Beispielen wird als Server-Adresse <code>talsim.de</code> verwendet, dies ist mit der Adresse oder IP des tatsächlich verwendeten Talsim-Servers zu ersetzen.</div>
==HttpDataSrv==
==HttpDataSrv==
Der HttpDataSrv ist standardmäßig über den Port 8090 ansprechbar und bietet die folgenden Schnittstellen:
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===
===requestClients===
Generelle Abfrage aller Kunden
Generelle Abfrage aller Kunden (wird zukünftig in requestCustomers geändert)


Beispiel: <code><nowiki>http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestClients/|</nowiki></code>
Beispiel: <code><nowiki>http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestClients/|</nowiki></code>
Zeile 23: Zeile 23:
Beispiel: <code><nowiki>http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestSystemAndSysVar/WFP_SSD,hubert,1</nowiki></code>
Beispiel: <code><nowiki>http://talsim.de:8090/TalsimNGServer/HttpDataSrv/requestSystemAndSysVar/WFP_SSD,hubert,1</nowiki></code>
==HttpZreSrv==
==HttpZreSrv==
Der HttpZreSrv ist standardmäßig über den Port 8092 ansprechbar und bietet die folgenden Schnittstellen um auf Zeitreihen zuzugreifen:
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 <code>Customer</code>, <code>User</code>, <code>Id</code> der Zeitreihe, Weitere Parameter sind entweder ein SQL Statement <code>SQLCriteria</code> oder alternativ drei Parameter als <code>Startdate</code>, <code>Enddate</code> und <code>AttributeFlag</code>.
Wenn Startdate und Enddate mit <code>0</code> angegeben werden, wird die gesamte Zeitreihe gelesen. Um nur einen Teil der Zeitreihe zu bekommen, können Anfang und/oder Ende mit Datumsformat <code>yyyy-MM-dd HH:mm</code> (z.B. <code>2010-08-15 08:00</code>) angegeben werden.
 
Beispiel 1: <code><nowiki>http://talsim.de:8092/TalsimNGServer/HttpZreSrv/SydroTimeSeries/TestAPI,MusterUser,9999,attribFlag=0</nowiki></code>
Beispiel 2: <code><nowiki>http://talsim.de:8092/TalsimNGServer/HttpZreSrv/SydroTimeSeries/TestAPI,MusterUser,9999,2001-05-15 00:00,2001-10-15 00:00,-1</nowiki></code> oder
 
===requestSydroTimeSeries===
===requestSydroTimeSeries===
Abfrage einer Zeitreihe
Abfrage einer Zeitreihe


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


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

Version vom 16. Oktober 2019, 11:45 Uhr

Die Server-API befindet sich noch in der Entwicklungsphase, Änderungen sind zu erwarten

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:

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 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&#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