---
title: "Meteosource Wetter-API"
description: "Meteosource Weather API-Integration für TapHome — aktuelles Wetter, tägliche Temperaturprognosen und Niederschlag über HTTPS-Cloud-API (Gratis-Tarif)."
url: "https://taphome.com/de/compatibility/meteosource/"
language: de
lastmod: 2026-03-28
generator: hugo
ai:
  topics: ["http","data-service","cloud-api","weather","packet-parser"]
  questions: ["Wie integriere ich Meteosource-Wetterdaten mit TapHome?","Welche Wetterdaten liefert die Meteosource-Vorlage für TapHome?","Wie erhalte ich einen kostenlosen Meteosource API-Schlüssel für TapHome?","Wie funktioniert der Wettertyp-Mehrwertschalter in TapHome?","Reicht der kostenlose Meteosource-Tarif für die TapHome-Abfrage aus?","Wie ändere ich die Zeitzone in der Meteosource-Vorlage?"]
---

# Meteosource Wetter-API

Kommunikation: Packet Parser → HTTP

- [Offizielle Meteosource-Website](https://www.meteosource.com)

## Integrationsanleitung

Meteosource ist ein globaler Wetterdatenanbieter, der aktuelle Bedingungen, Vorhersagen und historische Daten über eine REST-API bereitstellt. Die TapHome-Vorlage verbindet sich mit dem kostenlosen Tarif der Meteosource-API über HTTPS und liest aktuelle Wetterbedingungen und die Tagesvorhersage für einen konfigurierten GPS-Standort.

Die Vorlage bietet 8 schreibgeschützte Geräte, die Wettertyp, Windgeschwindigkeit und -richtung, aktuelle Temperatur, tägliche Minimal-/Maximaltemperaturen und Niederschlag (aktuell und täglich) abdecken. Das Modul fragt die API alle 5 Minuten ab und speichert die vollständige JSON-Antwort im Cache — einzelne Sensoren lesen dann in kürzeren Intervallen aus dem Cache. Der kostenlose Tarif erlaubt 400 Aufrufe pro Tag und die Vorlage nutzt etwa 288 Aufrufe pro Tag, was bequem innerhalb des Limits liegt.

## Konfiguration

### API-Schlüssel erhalten

1. Registrieren Sie ein kostenloses Konto auf [meteosource.com/client/sign-up](https://www.meteosource.com/client/sign-up)
2. Nach der Registrierung ist der API-Schlüssel im Konto-Dashboard verfügbar
3. Kopieren Sie den Schlüssel — er wird beim Import der Vorlage in TapHome benötigt

> [!TIP]
> Der kostenlose Tarif bietet 400 API-Aufrufe pro Tag mit einem Limit von 10 Anfragen pro Minute. Die TapHome-Vorlage fragt alle 5 Minuten ab (288 Aufrufe/Tag), was eine komfortable Reserve lässt. Der kostenlose Tarif erfordert eine Erwähnung und einen Backlink zu Meteosource bei kommerzieller Nutzung.

### Import-Parameter

Beim Import der Vorlage in TapHome sind drei Parameter erforderlich:

| Parameter | Beschreibung | Beispiel |
|-----------|-------------|---------|
| `latitude` | Breitengrad des Standorts in Dezimalgrad | `48.1778` |
| `longitude` | Längengrad des Standorts in Dezimalgrad | `17.1426` |
| `apiKey` | Meteosource API-Schlüssel aus dem Konto-Dashboard | `abc123def456...` |

Um die Koordinaten eines Standorts zu finden, klicken Sie mit der rechten Maustaste auf [Google Maps](https://maps.google.com) und wählen Sie die Koordinaten aus dem Kontextmenü.

### Modulvariablen

Nach dem Import der Vorlage kann eine Variable in den Moduleinstellungen angepasst werden:

| Variable | Beschreibung | Standardwert |
|----------|-------------|-------------|
| `tz` | Zeitzone im tzinfo-Format | `Europe/Prague` |

Die Zeitzone bestimmt, wie Zeitstempel in der API-Antwort interpretiert werden. Benutzer außerhalb der CET/CEST-Zeitzone sollten diesen Wert an ihren Standort anpassen (z. B. `America/New_York`, `Asia/Tokyo`, `UTC`).

### API-Endpoint

Das Modul verbindet sich mit `www.meteosource.com` über HTTPS (Port 443) und ruft auf:

```
GET /api/v1/free/point?lat={lat}&lon={lon}&sections=current,daily&timezone={tz}&language=en&units=ca&key={apiKey}
```

Die Vorlage verwendet das Einheitensystem `ca` (kanadisch): Celsius für Temperatur, km/h für Windgeschwindigkeit, mm für Niederschlag und hPa für Druck.

## Gerätefunktionen

### Wettertyp

Das Gerät **Weather Type** ist ein Mehrwertschalter, der das Meteosource-Feld `icon_num` (Werte 1–36) auf 7 TapHome-Wetterkategorien abbildet:

| Schalterwert | Kategorie | Meteosource-Icons (Tag) | Meteosource-Icons (Nacht) |
|-------------|-----------|-------------------------|---------------------------|
| 0 | Klar / Sonnig | 2, 3, 4, 5 | 26, 27, 28 |
| 1 | Wolken / Bedeckt | 6, 7, 8 | 29, 30, 31 |
| 2 | Regen | 11, 12, 13, 25 | 32, 34, 35, 36 |
| 3 | Nieselregen / Leichter Regen | 10 | -- |
| 4 | Gewitter | 14, 15 | 33 |
| 5 | Schnee / Gefrierend | 16–24 | -- |
| 6 | Nebel | 9 | -- |

Wenn die Iconnummer 1 oder nicht erkannt ist, wird der Schalter auf den Standardwert 1 (Wolken) gesetzt. Der Wettertyp wird alle 30 Minuten abgefragt.

### Temperatur

Drei Temperaturgeräte liefern aktuelle und Vorhersagedaten:

- **Temperature** — aktuelle Lufttemperatur in 2 m Höhe in Celsius. Verwendet einen dedizierten Temperatursensor-Gerätetyp mit Fehlermeldung, wenn die API-Antwort nicht verfügbar ist
- **Temperature Max** — heutige vorhergesagte Höchsttemperatur in Celsius, gelesen aus dem Abschnitt der Tagesvorhersage (`daily.data[0]`)
- **Temperature Min** — heutige vorhergesagte Tiefsttemperatur in Celsius, gelesen aus dem Abschnitt der Tagesvorhersage (`daily.data[0]`)

### Wind

- **Wind Speed** — aktuelle Windgeschwindigkeit in 10 m Höhe in km/h (unter Verwendung des Einheitensystems `ca`). Meldet einen Fehler, wenn die zwischengespeicherte Antwort nicht verfügbar ist
- **Wind Direction** — Windrichtung in Grad (0–360, wobei 0/360 = Nord, 90 = Ost, 180 = Süd, 270 = West). Dies ist das am häufigsten abgefragte Gerät mit 15-Sekunden-Intervallen, das aus der zwischengespeicherten Antwort liest

### Niederschlag

- **Precipitation (1-hour)** — aktuelle Niederschlagsmenge in mm. Meldet einen Fehler, wenn die zwischengespeicherte Antwort nicht verfügbar ist
- **Precipitation (Daily)** — heutiger gesamter täglicher vorhergesagter Niederschlag in mm, gelesen aus dem Abschnitt der Tagesvorhersage

### Weitere Funktionen

Die Meteosource-API bietet auch gefühlte Temperatur, Windböen, Wolkenbedeckung, Luftdruck, Luftfeuchtigkeit, Sichtweite, UV-Index, Taupunkt, Windchill, Niederschlagsart und eine Wetterzusammenfassung als Text für aktuelle Bedingungen. Ein Luftqualitäts-Endpoint mit PM10, PM2.5, NO2, CO, O3 und AQI ist separat verfügbar. Diese können in einem zukünftigen Vorlagen-Update hinzugefügt werden.

## Fehlerbehebung

### Alle Geräte zeigen NaN oder keine Daten an

1. Überprüfen Sie, dass der TapHome Core Internetzugang hat — die Vorlage erfordert ausgehende HTTPS-Konnektivität zu `www.meteosource.com`
2. Prüfen Sie, ob der API-Schlüssel gültig ist und nicht neu generiert wurde
3. Bestätigen Sie, dass die Breiten- und Längengradwerte korrekte Dezimalkoordinaten sind
4. Neue API-Schlüssel benötigen möglicherweise einige Minuten zur Aktivierung nach der Registrierung

### Veraltete oder verzögerte Messwerte

Das Modul fragt die Meteosource-API alle 5 Minuten ab und speichert die Antwort in einer Cache-Variable. Einzelne Sensoren lesen in kürzeren Intervallen (15 Sekunden bis 1 Minute) aus diesem Cache. Wenn der API-Aufruf fehlschlägt, geben alle Sensoren ihre zuletzt zwischengespeicherten Werte zurück, bis die nächste erfolgreiche Abfrage stattfindet.

> [!WARNING]
> Die Meteosource-API ist ein Cloud-Dienst, der eine aktive Internetverbindung am TapHome Core erfordert. Bei Internetausfällen oder API-Ausfallzeiten erhält die Vorlage keine aktualisierten Wetterdaten. Die Standard-Zeitzone ist `Europe/Prague` — Benutzer in anderen Regionen müssen die Modulvariable `tz` für korrekte lokale Zeitstempel ändern.

## Verfügbare Geräte 8

Diese Geräte erscheinen nach dem Import in TapHome.

Meteosource Modul

Benutzerdefinierte Variablen

|                               |                                                                                                 |
|-------------------------------|-------------------------------------------------------------------------------------------------|
| `apiKey` (string)             | Meteosource API-Schlüssel zur Authentifizierung (aus dem meteosource.com Dashboard)             |
| `lat` (string)                | Geografische Breite des Wetterstandorts in Dezimalgrad (wird beim Import gesetzt)               |
| `lon` (string)                | Geografische Länge des Wetterstandorts in Dezimalgrad (wird beim Import gesetzt)                |
| `tz` (string) = Europe/Prague | IANA-Zeitzonenkennung für die Zeitstempelkonvertierung (z. B. Europe/Prague, America/New\_York) |

Lesen (Modul)

```taphome
VAR request := HTTPREQUEST(
	"/api/v1/free/point?lat=" + lat + "&lon=" + lon + "&sections=current,daily&timezone=" + tz + "&language=en&units=ca&key=" + apiKey,
	"GET" 
);
VAR response := SENDHTTPREQUEST(request);
VAR responseHeaders := response.Headers;
IF response.IsSuccess  
  responseJson := response.Content;
END
```

Wettertyp Mehrwertschalter Nur lesen

Wetterlage als Multi-Value-Switch — Klar, Wolken, Regen, Nieselregen, Gewitter, Schnee, Nebel

integer → mapped Einheit: category JSON parsejson()

Werte / Zustände: ${weather\_clear} · ${weather\_clouds} · ${weather\_rain} · ${weather\_drizzle} · ${weather\_thunderstorm} · ${weather\_snow} · ${weather\_fog}

Schaltzustand lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error")
    return(NaN);
END 

VAR weather := PARSEJSON(responseJson, "current.icon_num");
SWITCH(weather, 
2, 0, 3, 0, 4, 0,26,0, 27,0,28,0,
5, 0, 6, 1, 7, 1, 8,1,29,1,30,1,31,1, 
	11,2,12,2,13,2,25,2,32,2,34,2,35,2,36,2,
10,3,
	16,5,17,5,18,5,19,5,20,5,21,5,22,5,23,5,24,5,
14,4,15,4,33,4,
9,6, 
1);
```

Windgeschwindigkeit Variable Nur lesen

numeric Einheit: km/h JSON parsejson()

Lesen

```taphome
IF(
	ISNULL(responseJson) | responseJson = "error", 
	NaN,
	TODOUBLE(PARSEJSON(responseJson,
		"current.wind.speed"))
);
```

Lesen (Modul)

```taphome
IF(ISNULL(responseJson) | responseJson = "error", ADDERROR("Failed to read data "));
```

Windrichtung Variable Nur lesen

Windrichtung in Grad — 0/360 = Nord, 90 = Ost, 180 = Süd, 270 = West

numeric Einheit: ° JSON parsejson()

Lesen

```taphome
IF(
	ISNULL(responseJson) | responseJson = "error", 
	NaN,
	TODOUBLE(PARSEJSON(responseJson,
		"current.wind.angle"))
)
```

Temperatur Temperatursensor Nur lesen

numeric Einheit: °C JSON parsejson()

Lesen (Modul)

```taphome
IF(ISNULL(responseJson) | responseJson = "error", ADDERROR("Failed to read data "));
```

Temperatur lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error", NaN, TODOUBLE(PARSEJSON(responseJson,"current.temperature")))
```

Temperatur Max Variable Nur lesen

Heutige Vorhersage-Höchsttemperatur aus der Tagesvorhersage

numeric Einheit: °C JSON parsejson()

Lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error", NaN, TODOUBLE(PARSEJSON(responseJson,"daily.data[0].all_day.temperature_max")))
```

Temperatur Min Variable Nur lesen

Heutige Vorhersage-Tiefsttemperatur aus der Tagesvorhersage

numeric Einheit: °C JSON parsejson()

Lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error", NaN, TODOUBLE(PARSEJSON(responseJson,"daily.data[0].all_day.temperature_min")))
```

Niederschlag (1 Stunde) Variable Nur lesen

numeric Einheit: mm JSON parsejson()

Lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error", NaN, TODOUBLE(PARSEJSON(responseJson,"current.precipitation.total")))
```

Lesen (Modul)

```taphome
IF(ISNULL(responseJson) | responseJson = "error", ADDERROR("Failed to read data "));
```

Niederschlag (täglich) Variable Nur lesen

Heutiger gesamter täglicher Vorhersage-Niederschlag aus der Tagesvorhersage

numeric Einheit: mm JSON parsejson()

Lesen

```taphome
IF(ISNULL(responseJson) | responseJson = "error", NaN, TODOUBLE(PARSEJSON(responseJson,"daily.data[0].all_day.precipitation.total")))
```

**Verbindung:** Packet Parser → HTTP

Mögliche Verbesserungen (12)

- Feels Like Temperature — Perceived temperature accounting for wind chill and humidity. Float, Celsius with ca units
- Wind Gusts — Peak wind gust speed at 10m. Float, km/h with ca units
- Cloud Cover — Total cloud cover percentage. Integer, 0–100%
- Atmospheric Pressure — Sea level atmospheric pressure. Float, hPa with ca units
- Relative Humidity — Relative humidity. Integer, 0–100%
- Visibility — Visibility distance. Float, km with ca units
- UV Index — UV radiation index. Float, 0–11+ scale
- Dew Point — Dew point temperature. Float, Celsius with ca units
- Wind Chill — Wind chill temperature. Float, Celsius with ca units
- Precipitation Type — Type of precipitation — none, rain, snow, rain\_snow, ice\_pellets, frozen\_rain. String value
- Weather Summary — Human-readable text description of current weather. Translated per language parameter
- Air Quality Index — Requires separate /air\_quality endpoint. Includes PM10, PM2.5, NO2, CO, O3, AQI (1–6 scale). Not available via Point endpoint

## Importparameter

Diese Werte geben Sie beim Import des XML ein.

| In der App abgefragt | Standard  |
|----------------------|-----------|
| latitude             | `48.1778` |
| longitude            | `17.1426` |
| Meteosource API key  | `apiKey`  |

## Quellen

- Meteosource — Main Website & Pricing
  
  [www.meteosource.com](https://www.meteosource.com/pricing) 2026-03-28
- Meteosource — API Documentation
  
  [www.meteosource.com](https://www.meteosource.com/documentation) 2026-03-28

## Verwandte Dokumentation

- [Packet-Parser-Integration](https://taphome.com/de/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/de/docs/integration/packet-parser/)
- [Packet-Parser-Funktionen](https://taphome.com/de/docs/script/packet-parser/)
- [Parsing-Funktionen](https://taphome.com/de/docs/script/parsing-functions/)

