From fbce725cec4366d3faacfe5036071aed3fa52086 Mon Sep 17 00:00:00 2001 From: Rongrong <15956627+Rongronggg9@users.noreply.github.com> Date: Mon, 26 Oct 2020 02:11:53 +0800 Subject: [PATCH] initial --- SlashBot.py | 36 ++++++++++++++++++++++++++++++++++++ requirements.txt | 1 + 2 files changed, 37 insertions(+) create mode 100644 SlashBot.py create mode 100644 requirements.txt diff --git a/SlashBot.py b/SlashBot.py new file mode 100644 index 0000000..d04bace --- /dev/null +++ b/SlashBot.py @@ -0,0 +1,36 @@ +from telegram.ext import Updater, MessageHandler, filters +import os +Filters = filters.Filters + +# Docker env +if os.environ.get('TOKEN') and os.environ['TOKEN'] != 'X': + Token = os.environ['TOKEN'] +else: + raise Exception('no token') + +def mention(user): + if 'last_name' not in user: + user['last_name'] = '' + return f"[{user['first_name']} {user['last_name']}](tg://user?id={user['id']})" + + +def reply(update, context): + print(repr(update.to_dict())) + msg = update.to_dict()['message'] + msg_from = msg['from'] + command = msg['text'].lstrip('/') + if 'reply_to_message' in msg.keys(): + msg_rpl = msg['reply_to_message']['from'] + else: + msg_rpl = msg_from + + update.effective_message.reply_text(f'{mention(msg_from)} {command} 了 {mention(msg_rpl)}!', + parse_mode='Markdown') + + +updater = Updater(token=Token, use_context=True) +dp = updater.dispatcher +dp.add_handler(MessageHandler(Filters.regex(r'^\/([^\s@]+)$'), reply)) + +updater.start_polling() +updater.idle() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..11a50f9 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +python-telegram-bot \ No newline at end of file