Zum Inhalt springen

Standort-Parsing in Chat-Channels

Kennst du das Problem? Du willst Standortdaten von verschiedenen Messengern verarbeiten, aber jeder Dienst kocht sein eigenes Süppchen. Einer schickt rohe Koordinaten, der andere eine Venue-ID und der nächste ein Live-Signal. Das führt schnell zu unübersichtlichem Code und Fehlern beim Parsen der verschiedenen API-Antworten.

OpenClaw nimmt dir diese Arbeit ab. Es normalisiert geteilte Standorte aus Chat-Channels in ein einheitliches Format. So erhältst du lesbaren Text für deine Logs und strukturierte Daten für deine Logik, ohne dich mit den Eigenheiten der einzelnen Provider herumschlagen zu müssen.

  • Einen aktiven Channel (Telegram, WhatsApp oder Matrix)
  • Zugriff auf den ctx Payload in deinem Gateway

OpenClaw verarbeitet Standorte automatisch auf zwei Arten: Es hängt einen menschenlesbaren Text an den Nachrichteninhalt an und fügt strukturierte Felder zum ctx Payload hinzu.

Standorte werden als einfache Textzeilen ohne Klammern gerendert. Hier sind die Formate, die du erwarten kannst:

  • Pin: 📍 48.858844, 2.294351 ±12m
  • Benannter Ort: 📍 Eiffel Tower — Champ de Mars, Paris (48.858844, 2.294351 ±12m)
  • Live-Standort: 🛰 Live location: 48.858844, 2.294351 ±12m
  • Mit Kommentar: Wenn der Channel eine Caption enthält, wird diese in der nächsten Zeile ausgegeben:
    📍 48.858844, 2.294351 ±12m
    Meet here

Für deine Programmierlogik füllt OpenClaw den ctx Payload mit diesen Feldern:

  • LocationLat (number) & LocationLon (number)
  • LocationSource (pin | place | live)
  • LocationIsLive (boolean)
  • LocationAccuracy (number, in Metern; optional)

Beim Arbeiten mit den verschiedenen Channels solltest du diese spezifischen Verhaltensweisen kennen:

  1. Telegram: Venues werden automatisch auf LocationName und LocationAddress gemappt. Live-Standorte verwenden intern live_period.
  2. WhatsApp: Kommentare aus locationMessage.comment und Captions aus liveLocationMessage.caption werden als zusätzliche Textzeile angehängt.
  3. Matrix: Die geo_uri wird als Pin-Standort interpretiert. Dabei wird die Höhe (altitude) ignoriert und LocationIsLive ist immer auf false gesetzt.
  4. Allgemein: Falls optionale Felder wie LocationName oder LocationAddress im Quell-Event nicht existieren, werden sie im ctx weggelassen.

Hast du Fragen zur Konfiguration deines Gateways? Nutze den AI Setup Assistant, um Hilfe bei deinem spezifischen Setup zu erhalten.

OpenClaw

OpenClaw Expert

Noch festgefahren?

Wenn diese Seite nicht hilft, frage OpenClaw Expert nach Schritt-fuer-Schritt-Loesungen.