-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.py
41 lines (30 loc) · 1.25 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
from dotenv import load_dotenv
load_dotenv(".envrc")
import os, logging
from telegram.ext import Application, CommandHandler, MessageHandler, filters
from src.telegram_handlers import handle_audio, handle_text, start, reset, error_handler, post_init, post_shutdown
# Logging-Konfiguration für Debugging
logging.basicConfig(
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s", level=logging.INFO
)
def main():
# Erstellen des Telegram-Bots mit dem Application-Builder
application = (Application.builder()
.token(os.getenv("TELEGRAM_BOT_TOKEN"))
.post_init(post_init)
.post_shutdown(post_shutdown)
.build())
# Hinzufügen der Audio- und Text-Handler
application.add_handler(CommandHandler("start", start))
application.add_handler(CommandHandler("reset", reset))
application.add_handler(MessageHandler(filters.VOICE, handle_audio))
application.add_handler(
MessageHandler(filters.TEXT & ~filters.COMMAND, handle_text)
)
application.add_error_handler(error_handler)
# Starten des Bots
application.run_polling()
# Shutdown des Schedulers wenn der Bot heruntergefahren wird
# scheduler.shutdown()
if __name__ == "__main__":
main()