Weather bot for Telegram Messenger with multiple APIs and bookmarks support.
- Multiple APIs support:
- Different report types:
- Daily forecast
- Current weather and hourly forecast
- Hourly forecast on different heights (10m, 80m, 120m and 180m)
- Weather by location (using built-in Telegram location sharing)
- Text location search (using Open Meteo Geocoding API)
- Beaufort Scale wind level display
- Per-user bookmarks
- Per-user quotas on API requests
- Multiple languages support. Currently translated to:
- English
- Russian
- API responses caching
- Install .NET 8 SDK for your platform
- Download the latest release or build it yourself, unpack the archive
- Run
WeatherBot
(Linux) orWeatherBot.exe
(Windows), the app will createconfiguration.json
file and exit - Open created configuration file and fill the following properties:
TelegramBotToken
with a Telegram bot API token (can be obtained from @BotFather bot)OpenWeatherMap:ApiToken
with Open Weather Map API token (register here), or completely removeOpenWeatherMap
section
- Run the application again. If authorization is successful, console will display "Logged-in as {bot name}"
- Send
/start
or/help
to the bot to get list of commands. Share a location to get weather
- Install .NET 8 SDK for your platform
- In project directory, run
dotnet publish ./WeatherBot/WeatherBot.csproj
- Binaries will be located in
./WeatherBot/bin/Release/net8.0/publish
- Telegram.Bot (MIT license)
- sqlite-net-pcl (MIT license)
- CoordinateSharp (AGPL-3.0 license)