__ __ ______ _______ ______ ______ __ __ ______
/__/\ /__/\ /_____/\ /______/\ /_____/\ /_____/\ /_/\/_/\ /_____/\
\ \::\\:.\ \ \:::__\/ \::::__\/__\:::_ \ \ \:::_ \ \\:\ \:\ \\:::_ \ \
\_\::_\:_\/ /: / \:\ /____/\\:(_) ) )_\:\ \ \ \\:\ \:\ \\:(_) \ \
_\/__\_\_/\ /::/___ \:\\_ _\/ \: __ `\ \\:\ \ \ \\:\ \:\ \\: ___\/
\ \ \ \::\ \/_:/____/\ \:\_\ \ \ \ \ `\ \ \\:\_\ \ \\:\_\:\ \\ \ \
\_\/ \__\/\_______\/ \_____\/ \_\/ \_\/ \_____\/ \_____\/ \_\/
xzgroup@lab#:~/site$
█
# APRS.fi Telegram Bot - Vash IU1BOT/1XZ001
~ $ --- The bot /
aprs.fi-API-Telegram-bot is a compact Python project that turns aprs.fi into a chat-friendly “tracking and WX console” on Telegram, perfect for radio nerds who want quick telemetry without opening a map or a browser.
The repo is intentionally small: a single script (aprs_bot.py) plus a README and a GPL-3.0 license, so you can audit everything, fork it, and run it on a Raspberry Pi/VPS in true XZ Group fashion.
The bot periodically pulls both position (“loc”) and weather (“wx”) for a callsign from the aprs.fi API and formats the result into one message (complete with a few emojis for readability), using plain requests plus the classic python-telegram-bot Updater/CommandHandler stack with polling.
Each Telegram chat keeps its own isolated configuration (callsign and interval), and the scheduler uses the JobQueue to run repeating updates; the defaults are set to a one-hour interval and a prefilled callsign (with a small “tribute” note in the code). From Telegram you can start and stop updates, change the target callsign and the update interval on the fly, and there are also debug/inspection commands to list active jobs and show the current settings for that chat.
The repo is intentionally small: a single script (aprs_bot.py) plus a README and a GPL-3.0 license, so you can audit everything, fork it, and run it on a Raspberry Pi/VPS in true XZ Group fashion.
The bot periodically pulls both position (“loc”) and weather (“wx”) for a callsign from the aprs.fi API and formats the result into one message (complete with a few emojis for readability), using plain requests plus the classic python-telegram-bot Updater/CommandHandler stack with polling.
Each Telegram chat keeps its own isolated configuration (callsign and interval), and the scheduler uses the JobQueue to run repeating updates; the defaults are set to a one-hour interval and a prefilled callsign (with a small “tribute” note in the code). From Telegram you can start and stop updates, change the target callsign and the update interval on the fly, and there are also debug/inspection commands to list active jobs and show the current settings for that chat.