Wetterbericht des Tages per Telegram mit Openweather

Hallo,

Hier ist eine Szene, die es ermöglicht, das Wetter jeden Morgen per Telegram-Nachricht zu erhalten.

Zuerst benötigen Sie einen OpenWeather 3 API-Key (Achtung, alte Keys, die für Version 2 funktionieren, sind für dieses Tutorial nicht gültig).
Falls Sie keinen haben, gehen Sie hier hin: Members

:warning: Der Plan erlaubt 1000 Aufrufe pro Tag (mehr als ausreichend). Darüber hinaus werden Sie für 100 zusätzliche Aufrufe 0,14 € berechnet.

Jetzt können Sie eine Szene mit Folgendem erstellen:

  • dem Auslöser Ihrer Wahl. Ich habe Programmierten Auslöser (täglich um 7:30 Uhr) gewählt.

  • einer Aktion HTTP-Anfrage senden
    Die URL wird sein

https://api.openweathermap.org/data/3.0/onecall?lat=<latitude>&lon=<longitude>&exclude=minutely,hourly,current,alert&lang=fr&units=metric&appid=<api_key>

Für Paris zum Beispiel ergibt sich

https://api.openweathermap.org/data/3.0/onecall?lat=48.8588897&lon=2.320041&exclude=minutely,hourly,current,alert&lang=fr&units=metric&appid=XXXXXXXXX

Sie können die GPS-Koordinaten einer Adresse einfach mit dieser Website finden: https://www.coordonnees-gps.fr/
Verwenden Sie nicht den Knopf Testen, um den Aufruf zu testen

:information_source: Informationen

  • der Parameter exclude ermöglicht es, nur das Wetter der Tage in der Antwort zu erhalten
  • der Parameter metrics ermöglicht es, die Antwort in Grad Celsius zu erhalten
  • der Parameter lang ermöglicht es, die Antwort mit Beschreibungen in Französisch zu erhalten


  • schließlich eine Aktion Nachricht senden. Sie können die Nachricht nach Belieben anpassen, indem Sie die Variablen der vorherigen HTTP-Antwort verwenden. Für mich ergibt sich:
Bonjour Cyril, aujourd'hui, le temps est {{ 1. 1. data.daily.[0].weather.[0].description }} et il fera entre {{ 1. 1. data.daily.[0].temp.min }} °C et {{ 1. 1. data.daily.[0].temp.max }} °C

Hallo @cicoub13, musstest du deine Kreditkarte eingeben, um auf die Onecall-API zugreifen zu können?

Ja :money_mouth_face:

Ok, wenn du die Weather API nutzt, musst du deine Kreditkarte nicht angeben, genau das machen wir in Gladys :slight_smile:

Tatsächlich können Sie die kostenlose Version 2.5 der API nutzen (ohne Kreditkarte), die dieselben Funktionen bietet.

http://api.openweathermap.org/data/2.5/weather?lat=43.267093&lon=-0.421642&lang=fr&units=metric&cnt=1&appid=XXX

Soll ich den Leitfaden mit beiden Optionen oder nur mit dieser aktualisieren? Aber gab es nicht eine Geschichte, dass man keine Schlüssel mehr für diese Version bekommen kann?

Nein, genau das ist es. Die OneCall-API ist nicht mehr verfügbar, der Rest ist in Ordnung. Ich habe erst letzte Woche einen Token erstellt :slight_smile:

Hallo @cicoub13

Bei mir funktioniert es nicht mit dem Weather-API-Schlüssel. Ich sehe keine weiteren Rückmeldungen zum Thema, ob es anderen Nutzern gelungen ist oder nicht.

Hier ist die Fehlermeldung:

{
  "cod": 401,
  "message": "Ungültiger API-Schlüssel. Weitere Informationen finden Sie unter https://openweathermap.org/faq#error401."
}

Erledigt, aber Code in deiner Nachricht muss geändert werden:

https://api.openweathermap.org/data/2.5/weather?lat=43.267093&lon=-0.421642&lang=fr&units=metric&cnt=1&appid=XXX

:wink:

Aber er zeigt mir überraschende Temperaturen an:

Hallo Jérôme, heute ist es teilweise bewölkt, es wird zwischen 281,92°C und 283,01°C und die Luftqualität beträgt 38

Ich habe das hier, das sieht okay aus. Bist du sicher, dass du die Einheiten in metrisch hast?

{"coord":{"lon":-0.4216,"lat":43.2671},"weather":[{"id":800,"main":"Clear","description":"ciel dégagé","icon":"01n"}],"base":"stations","main":{"temp":9.88,"feels_like":9,"temp_min":9.32,"temp_max":10.18,"pressure":1007,"humidity":92},"visibility":10000,"wind":{"speed":2.06,"deg":140},"clouds":{"all":0},"dt":1698700059,"sys":{"type":1,"id":6466,"country":"FR","sunrise":1698647606,"sunset":1698685027},"timezone":3600,"id":2980166,"name":"Saint-Faust","cod":200}

Ja
Die Stadt ist gut
Nur die Grade sind nicht konsistent. Ich werde morgen bei der automatischen Nachricht sehen, ob ich dasselbe habe.

Erledigt, ich hatte ein « s » zu metric in meiner Zeile eingefügt.

oups :sweat_smile:

Danke für den Tipp, sehr praktisch, schade nur, dass die Temperaturen auf einem Lautsprecher nur auf Englisch angezeigt werden.

Du meinst TTS über Sonos?

Ja, genau. Ich habe die Beschreibung auf Französisch mit der Option „&lang=fr“, aber die Zahlen werden auf Englisch vorgelesen, also zum Beispiel „la température sera entre one two dot one nine et one two dot three four“

Aha, ich glaube, das ist die TTS-API, die das macht. Man sollte testen, ob es bei allen ihren Stimmen genauso ist

Das ist KI-basiertes TTS, also könnte es vielleicht ein bisschen halluzinieren :grinning_face_with_smiling_eyes:

Zur Info, die API, die ich verwende, ist:

Ich hatte ein paar Rückmeldungen zur Stimme, also hatte ich vorgeschlagen, sie zu ändern, aber seitdem gab es keine Rückmeldung mehr ^^

Ich bin anderer Meinung als du, du hattest doch Feedback:

Wenn du das nicht berücksichtigst, ist das etwas anderes… :thinking::roll_eyes:

@spenceur Da haben wir uns wohl missverstanden, da dein letzter Beitrag „Ich bestätige das mit Madame ^^“ sagte, habe ich auf die Bestätigung von Madame gewartet, bevor ich etwas ändere :stuck_out_tongue: (Da dein erster Beitrag so klang, als ob Madame sich eher über die Stimme beschwert hätte!)

Falls es für Grace in Ordnung ist, schaue ich morgen, um es zu ändern!

Edit: Ich hoffe, Grace funktioniert dann besser mit den Zahlen

Gibt es nicht einen Sprachparameter, der übertragen werden muss, um das zu ändern? (Vielleicht wird er bereits gesendet und es funktioniert nicht)

In meinem Fall wird das Sprachparameter gesendet und funktioniert für die Beschreibung. Ich bekomme also „leichtes Nieselregen“ auf Französisch, aber die Zahlen auf Englisch und einzeln ausgesprochen :man_shrugging:
Ich habe ein bisschen gesucht, aber nicht mehr als das.