diff --git a/.gitignore b/.gitignore index c9fd099..e8fbc22 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ src/constants.py +*.session diff --git a/shell.nix b/shell.nix index 60b31c2..401e4d0 100644 --- a/shell.nix +++ b/shell.nix @@ -5,7 +5,7 @@ with pkgs; mkShell { buildInputs = [ python38 - python38Packages.python-telegram-bot + python38Packages.telethon python38Packages.aiosmtpd python38Packages.pytest ]; diff --git a/src/bot.py b/src/bot.py index 3007303..43a04c5 100644 --- a/src/bot.py +++ b/src/bot.py @@ -1,30 +1,19 @@ -from telegram.ext import Updater, CommandHandler -from constants import TOKEN +from telethon import TelegramClient, events +from constants import API_ID, API_HASH, BOT_TOKEN + +bot = TelegramClient("bot", API_ID, API_HASH).start(bot_token=BOT_TOKEN) -def initialize_bot(): - updater = Updater(token=TOKEN, use_context=True) - dispatcher = updater.dispatcher - return updater, dispatcher - - -def start_callback(update, context): - context.bot.send_message( - chat_id=update.effective_chat.id, - text="Hola, muy buenas. Gracias por ponerte en contacto con UGR Tracing Bot. Para poder continuar con el proceso por favor responda a este mensaje con un identificador Ășnico (DNI o correo institucional). Muchas gracias.", +@bot.on(events.NewMessage(pattern="/start")) +async def start(event): + await event.respond( + "Hola, muy buenas. Gracias por ponerte en contacto con UGR Tracing Bot. Para poder continuar con el proceso por favor responda a este mensaje con un identificador Ășnico (DNI o correo institucional). Muchas gracias." ) - - -def add_callbacks(dispatcher): - start_handler = CommandHandler("start", start_callback) - dispatcher.add_handler(start_handler) + raise events.StopPropagation def main(): - updater, dispatcher = initialize_bot() - add_callbacks(dispatcher) - updater.start_polling() - updater.idle() + bot.run_until_disconnected() if __name__ == "__main__":