- name
- Weather&Webcam
- description
- Fetches current weather from Open-Meteo API and automatically captures a live webcam image from Meteoblue or Windy for the requested location. Use it when the user asks for the weather and wants to see a real image of the current conditions.
- metadata
Weather Location
This skill automates weather data retrieval using Open-Meteo and live webcam image capture using agent-browser.
Workflow
- Get Coordinates (Geocoding):
- Execute curl -s "https://geocoding-api.open-meteo.com/v1/search?name=[Location]&count=1&language=es&format=json" to resolve city name to coordinates.
- Get weather (Open-Meteo):
- Execute curl -s "https://api.open-meteo.com/v1/forecast?latitude=[Lat]&longitude=[Lon]¤t=temperature_2m,relative_humidity_2m,apparent_temperature,weather_code,wind_speed_10m" to get real-time data.
- Search for Webcam:
- Web search for site:meteoblue.com [Location] webcam or site:windy.com [Location] webcam. - Select the direct link to the location's webcam page.
- Capture Image (Agent Browser Method):
- Use agent-browser to navigate and interact:
/home/user/.npm-global/bin/agent-browser --session-name webcam open "[URL]"- Interaction: - Click "OK/Accept" on cookie banners using snapshot + click @ref. - Extraction: - Use eval to find the highest resolution URL (look for /full/ and original.jpg):
Array.from(document.querySelectorAll('img')).map(img => img.src).filter(src => src.includes('original.jpg') && src.includes('/full/'))[0]- Download: - Download with curl to /home/user/.openclaw/workspace/webcam.jpg.
- User Response:
- Send with message(action=send, media="/home/user/.openclaw/workspace/webcam.jpg", caption="[City]: [Icon] [Temp]°C [Humidity]% [Wind]km/h\ [Comment]"). - Respond with NO_REPLY.
Optimization (Token Saving)
- Open-Meteo API: Faster, keyless, and more reliable than wttr.in.
- Agent Browser: Priority method for Alex to ensure interaction (cookies) and high-quality images.
- Session Persistence: Use
--session-name webcamto keep cookies.