# 🌐 fetchGisStationsMeasurements – Geräte-Messwerte abrufen

## Zweck

Diese Funktion ruft Messwerte aller Geräte einer Karte ab.  
Die Daten werden vom Webservice `GisStationsMeasurements` bereitgestellt.

---

## Webservice-Endpunkt

```
GisStationsMeasurements?idMap={idMap}&idUser={idUser}
```

---

## Besonderheit: Port-Steuerung per Umgebungsvariable

Die Webservices (z. B. `WebServiceMap.asmx`) laufen **immer auf Port 80** –  
auch in der Entwicklungsumgebung.

Um das zu berücksichtigen, wird der Port über `.env.local` gesteuert:

```env
NEXT_PUBLIC_API_PORT_MODE=dev
```

### Beispiel (aus dem Code):

```js
const mode = process.env.NEXT_PUBLIC_API_PORT_MODE;

const apiBaseUrl =
  mode === "dev"
    ? `${window.location.protocol}//${window.location.hostname}:80/talas5/ClientData/WebServiceMap.asmx`
    : `${window.location.origin}/talas5/ClientData/WebServiceMap.asmx`;
```

---

## Parameter

| URL-Parameter | Beschreibung | Übergabe durch TALAS.web |
|---------------|--------------|---------------------------|
| `m`           | Map-ID       | Ja                        |
| `u`           | User-ID      | Ja                        |

Diese Parameter werden clientseitig aus der URL gelesen:

```js
const params = new URLSearchParams(window.location.search);
const idMap = params.get("m");
const idUser = params.get("u");
```

---

## Beispiel-Aufruf

```
http://10.10.0.13/talas5/MessagesMap/mapTypeC.aspx?m=12&u=484
```

→ ergibt folgenden Webservice-Aufruf:

```
http://10.10.0.13/talas5/ClientData/WebServiceMap.asmx/GisStationsMeasurements?idMap=12&idUser=484
```

---

## Siehe auch

- `.env.local` → `NEXT_PUBLIC_API_PORT_MODE`
- `docs/frontend/redux/api/fromWebService/fetchGisSystemStatic.md`
- API-Datei: `/redux/api/fromWebService/fetchGisStationsMeasurements.js`

---

📄 Pfad: `/docs/frontend/redux/api/fromWebService/fetchGisStationsMeasurements.md`