From d890215b12dec864d1cfb496425722bbf6662c33 Mon Sep 17 00:00:00 2001 From: LordBaryhobal Date: Tue, 17 Sep 2024 18:28:41 +0200 Subject: [PATCH] added start command --- src/beebot.py | 7 +++++++ src/lang.json | 9 ++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/beebot.py b/src/beebot.py index bb22e43..1000d1e 100644 --- a/src/beebot.py +++ b/src/beebot.py @@ -12,6 +12,7 @@ import aiohttp import telegram.constants from bs4 import BeautifulSoup from telegram import Update, InlineKeyboardMarkup, InlineKeyboardButton +from telegram.constants import ParseMode from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes, CallbackQueryHandler, Application log_dir = os.getenv("BEEBOT_LOGS") @@ -96,6 +97,7 @@ class BeeBot: self.load_i18n() self.tg_app = ApplicationBuilder().token(self.tg_token).build() + self.tg_app.add_handler(CommandHandler("start", self.cmd_start)) self.tg_app.add_handler(CommandHandler("week", self.cmd_week)) self.tg_app.add_handler(CommandHandler("today", self.cmd_today)) self.tg_app.add_handler(CommandHandler("settings", self.cmd_settings)) @@ -115,6 +117,11 @@ class BeeBot: return f"[{key}]" return self.langs[lang][key] + async def cmd_start(self, update: Update, context: ContextTypes.DEFAULT_TYPE) -> None: + logger.debug("Received /start") + lang = self.get_user_pref(update, context)["lang"] + await update.effective_chat.send_message(text=self.i18n(lang, "notif.start"), parse_mode=ParseMode.HTML) + async def cmd_week(self, update: Update, context: ContextTypes.DEFAULT_TYPE) -> None: logger.debug("Received /week") await self.request_menu(update, context, False) diff --git a/src/lang.json b/src/lang.json index e82b21b..9243844 100644 --- a/src/lang.json +++ b/src/lang.json @@ -11,7 +11,8 @@ "setting.language": "Langue: {}", "setting.categories": "Catégories: {}", "notif.wait_updating": "Le menu est en train d'être mis à jour, veuillez patienter...", - "notif.unavailable": "Il semblerait que le menu ne soit actuellement pas disponible" + "notif.unavailable": "Il semblerait que le menu ne soit actuellement pas disponible", + "notif.start": "Salut, je suis BeeBot 🐝, le robot des menus de la cafétéria de l'HEI !\n(changer la langue / change language / Sprache ändern: /settings)\n\nPour voir les menus de la semaine, utilisez la commande /week\nPour voir les menus du jour, utilisez /today\n\nSi vous souhaitez changer la langue dans laquelle je parle ou les catégories de prix affichées dans les menus, utilisez la commande /settings\n\nMerci de ne pas spammer afin de ne pas impacter l'utilisation de ce service par les autres personnes\n\nBon appétit ! 🍽" }, "en": { "category.student": "Student", @@ -25,7 +26,8 @@ "setting.language": "Language: {}", "setting.categories": "Categories: {}", "notif.wait_updating": "The menu is being updated, please wait...", - "notif.unavailable": "It seems that the menu is currently unavailable" + "notif.unavailable": "It seems that the menu is currently unavailable", + "notif.start": "Hi, I'm BeeBot 🐝, the HEI cafeteria menu robot !\n(changer la langue / change language / Sprache ändern: /settings)\n\nTo see the menus for the week, use the command /week\nTo see today's menus, use /today\n\nIf you want to change the language I speak or the price categories displayed in the menus, use the command /settings\n\nPlease do not spam to avoid affecting other people's use of this service\n\nEnjoy your meal ! 🍽" }, "de": { "category.student": "Student", @@ -39,6 +41,7 @@ "setting.language": "Sprache: {}", "setting.categories": "Kategorien: {}", "notif.wait_updating": "Das Menü wird gerade aktualisiert, bitte warten Sie...", - "notif.unavailable": "Es scheint, dass das Menü derzeit nicht verfügbar ist" + "notif.unavailable": "Es scheint, dass das Menü derzeit nicht verfügbar ist", + "notif.start": "Hallo, ich bin BeeBot 🐝, der Menüroboter der Cafeteria der HEI !\n(changer la langue / change language / Sprache ändern: /settings)\n\nUm die Menüs der Woche zu sehen, verwende den Befehl /week\nUm die Menüs des Tages zu sehen, verwenden Sie /today\n\nWenn Sie die Sprache, in der ich spreche, oder die Preiskategorien, die in den Menüs angezeigt werden, ändern möchten, verwenden Sie den Befehl /settings\n\nBitte spammen Sie nicht, um die Nutzung dieses Dienstes durch andere Personen nicht zu beeinträchtigen\n\nGuten Appetit ! 🍽" } } \ No newline at end of file