π€οΈ Daily Weather Forecast Bot
A comprehensive n8n workflow that fetches detailed weather forecasts from OpenWeatherMap and sends beautifully formatted daily summaries to Telegram.
π Features
-
π Daily Overview: Complete temperature range, rainfall totals, and wind conditions
-
β° Hourly Forecast: Weather predictions at key times (9AM, 12PM, 3PM, 6PM, 9PM)
-
π‘οΈ Smart Emojis: Context-aware weather icons and temperature indicators
-
π‘ Smart Recommendations: Contextual advice (umbrella alerts, clothing suggestions, sun protection)
-
πͺοΈ Enhanced Details: Feels-like temperature, humidity levels, wind speed, UV warnings
-
π± Rich Formatting: HTML-formatted messages with emojis for excellent readability
-
π Timezone-Aware: Proper handling of Luxembourg timezone (CET/CEST)
π οΈ What This Workflow Does
-
Triggers daily at 7:50 AM to send morning weather updates
-
Fetches 5-day forecast from OpenWeatherMap API with 3-hour intervals
-
Processes and analyzes weather data with smart algorithms
-
Formats comprehensive report with HTML styling and emojis
-
Sends to Telegram with professional formatting and actionable insights
βοΈ Setup Instructions
1. OpenWeatherMap API
- Sign up at OpenWeatherMap
- Get your free API key (1000 calls/day included)
- Replace
API_KEY
in the HTTP Request node URL
2. Telegram Bot
3. Location Configuration
- Default location: Strassen, Luxembourg
- To change: modify
q=Strassen
in the HTTP Request URL
- Format:
q=CityName,CountryCode
(e.g., q=Paris,FR
)
π― Technical Details
-
API Source: OpenWeatherMap 5-day forecast
-
Schedule: Daily at 7:50 AM (configurable)
-
Format: HTML with rich emoji formatting
-
Error Handling: 3 retry attempts with 5-second delays
-
Rate Limits: Uses only 1 API call per day
-
Timezone: Europe/Luxembourg (handles CET/CEST automatically)
π Weather Data Analyzed
- Temperature ranges and "feels like" temperatures
- Precipitation forecasts and accumulation
- Wind speed and conditions
- Humidity levels and comfort indicators
- Cloud coverage and visibility
- UV index recommendations
- Time-specific weather patterns
π‘ Smart Features
-
Conditional Recommendations: Only shows relevant advice
-
Night/Day Awareness: Different emojis for time of day
-
Temperature Context: Color-coded temperature indicators
-
Weather Severity: Appropriate icons for weather intensity
-
Humidity Comfort: Comfort level indicators
-
Wind Analysis: Descriptive wind condition text
π§ Customization Options
-
Schedule: Modify trigger time in the Schedule node
-
Location: Change city in HTTP Request URL
-
Forecast Hours: Adjust
desiredHours
array in the code
-
Temperature Thresholds: Modify emoji temperature ranges
-
Recommendation Logic: Customize advice triggers
π± Sample Output
π€οΈ Weather Forecast for Strassen, LU
π
Monday, 2 June 2025
π Daily Overview
π‘οΈ Range: 12Β°C - 22Β°C
π§ Comfortable (65%)
β° Hourly Forecast
π 09:00 βοΈ 15Β°C
π 12:00 π€οΈ 20Β°C
π 15:00 βοΈ 22Β°C (feels 24Β°C)
π 18:00 β
19Β°C
π 21:00 π 16Β°C
π‘ Data from OpenWeatherMap | Updated: 07:50 CET
π Getting Started
- Import this workflow to your n8n instance
- Add your OpenWeatherMap API key
- Set up Telegram bot credentials
- Test manually first
- Activate for daily automated runs
π Requirements
- n8n instance (cloud or self-hosted)
- Free OpenWeatherMap API account
- Telegram bot token
- Basic understanding of n8n workflows
Perfect for: Daily weather updates, team notifications, personal weather tracking, smart home automation triggers.