Telegram Error-Handling bei fehlendem oder falschen Token hinzugefügt

This commit is contained in:
2026-03-07 20:17:20 +00:00
parent 54be8a6f6f
commit 330dee175f

28
main.py
View File

@@ -11,6 +11,7 @@ import struct
import termios
from telegram import Update
from telegram.ext import ApplicationBuilder, ContextTypes, MessageHandler, filters
from telegram.error import InvalidToken
from google import genai
from google.genai import types
import json
@@ -228,20 +229,27 @@ async def handle_telegram_message(update: Update, context: ContextTypes.DEFAULT_
@app.on_event("startup")
async def startup_event():
global telegram_app
if TELEGRAM_TOKEN and ALLOWED_ID:
# Prüfe auch, ob der Token nicht aus Versehen noch der Platzhalter ist
if TELEGRAM_TOKEN and ALLOWED_ID and "dein-telegram-bot-token" not in TELEGRAM_TOKEN:
print("🤖 Starte Telegram Bot im Hintergrund...")
telegram_app = ApplicationBuilder().token(TELEGRAM_TOKEN).build()
try:
telegram_app = ApplicationBuilder().token(TELEGRAM_TOKEN).build()
# Leitet alle Text-Nachrichten an unsere Funktion weiter
telegram_app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, handle_telegram_message))
# Leitet alle Text-Nachrichten an unsere Funktion weiter
telegram_app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, handle_telegram_message))
# Bot asynchron in die FastAPI Event-Loop einhängen
await telegram_app.initialize()
await telegram_app.start()
await telegram_app.updater.start_polling()
print("✅ Telegram Bot lauscht!")
# Bot asynchron in die FastAPI Event-Loop einhängen
await telegram_app.initialize()
await telegram_app.start()
await telegram_app.updater.start_polling()
print("✅ Telegram Bot lauscht!")
except InvalidToken:
print("❌ Telegram-Fehler: Der Token in der .env ist ungültig! Der Bot bleibt inaktiv, aber der Server läuft weiter.")
except Exception as e:
print(f"❌ Unerwarteter Fehler beim Telegram-Start: {e}")
else:
print(" Telegram Bot inaktiv (Token oder ID fehlen in der .env).")
print(" Telegram Bot inaktiv (Token oder ID fehlen/sind Platzhalter in der .env).")
@app.on_event("shutdown")
async def shutdown_event():