Compare commits

...
3 Commits
Author SHA1 Message Date
YoursFunny d079271ef9 fix action 2024-05-12 23:42:18 +08:00
YoursFunny 1526c7900c add set template 2024-05-12 23:34:11 +08:00
YoursFunny 79d68b2e82 fix int admin id 2024-04-28 01:57:10 +08:00
2 changed files with 21 additions and 3 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ import os
import re
BOT_TOKEN = os.getenv("BOT_TOKEN")
ADMIN = os.getenv("BOT_ADMIN").split(",")
ADMIN = [int(i) for i in os.getenv("BOT_ADMIN").split(",")]
WEBHOOK = os.getenv("WEBHOOK", False)
if WEBHOOK:
+20 -2
View File
@@ -89,12 +89,17 @@ async def edit_message(update: Update, context: ContextTypes.DEFAULT_TYPE) -> No
return
if update.message.reply_to_message != context.user_data['message_reply']:
return
update_text = html.escape(update.message.text)
template = context.user_data.get('template', None)
if template:
update_text = template
else:
update_text = html.escape(update.message.text)
match = common.message_url_regex.search(update_text)
if match:
match = match.span()
update_text = update_text[:match[0]] + '<a href="{0}">{1}</a>'.format(
context.user_data['message_url'], update_text[match[0] + 1:match[1] - 1]
context.user_data['message_url'],
update_text[match[0] + 1:match[1] - 1] if not template else update.message.text
) + update_text[match[1]:]
message_to_send = context.user_data['message_to_send']
await message_to_send[0].edit_caption(update_text)
@@ -162,6 +167,18 @@ async def cmd_edit_before_forward(update: Update, context: ContextTypes.DEFAULT_
await update.effective_message.reply_text("Enable edit before forward.")
@send_action(ChatAction.TYPING)
async def cmd_set_template(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
reply = update.effective_message.reply_to_message
if not reply:
await update.effective_message.reply_text("Please reply to a message to set as template.")
return
if '[]' in reply.text_html:
context.user_data['template'] = reply.text_html
await update.effective_message.reply_text("Template set.")
await update.effective_message.reply_text("Please reply to a message with [] to set as template.")
@send_action(ChatAction.TYPING)
async def cmd_user_dict(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
await update.effective_message.reply_text(str(context.user_data))
@@ -208,6 +225,7 @@ def main():
CommandHandler("set_forward_channel", cmd_set_forward_channel),
CommandHandler("remove_forward_channel", cmd_remove_forward_channel),
CommandHandler("edit_before_forward", cmd_edit_before_forward),
CommandHandler("set_template", cmd_set_template),
MessageHandler(~filters.COMMAND & filters.ChatType.PRIVATE, edit_message),
CallbackQueryHandler(query_forward_message, pattern="forward"),
CommandHandler("bot_dict", cmd_user_dict, filters=user_filter),