added more reactions
This commit is contained in:
		| @@ -3,6 +3,8 @@ from pathlib import Path | |||||||
| from telegram.ext import ConversationHandler, CommandHandler, MessageHandler, filters, CallbackQueryHandler | from telegram.ext import ConversationHandler, CommandHandler, MessageHandler, filters, CallbackQueryHandler | ||||||
| from telegram import InlineKeyboardButton, InlineKeyboardMarkup | from telegram import InlineKeyboardButton, InlineKeyboardMarkup | ||||||
| from telegram import Update | from telegram import Update | ||||||
|  | import re | ||||||
|  | import random | ||||||
|  |  | ||||||
| from .basehandler import BaseHandler | from .basehandler import BaseHandler | ||||||
|  |  | ||||||
| @@ -15,19 +17,38 @@ TURTLE_VIDEOS = list(TURTLE_VIDEO_LOCATION.glob("*.mp4")) | |||||||
| class TurtleHandler(BaseHandler): | class TurtleHandler(BaseHandler): | ||||||
|     def __init__(self): |     def __init__(self): | ||||||
|         self.entry_string = "Variation of hallo" |         self.entry_string = "Variation of hallo" | ||||||
|         self.handler = MessageHandler(filters.Regex(r"Hallo|hallo"), self.entry_point) |         self.handler = MessageHandler(filters.Regex(r"[hH]([aA]+|[eE]+)[lL]{2,}[oOöÖ]+(le)?|(chen)") |  # react to hello strings | ||||||
|  |                                       filters.Regex(b"\xF0\x9F\x90\xA2".decode("utf8")) |               # react to turtle emoji | ||||||
|  |                                       filters.Regex(r"[sS](childkröte)|[tT](urtle)"),                   # react to turtle string | ||||||
|  |                                       self.entry_point) | ||||||
|         pass |         pass | ||||||
|  |  | ||||||
|     async def entry_point(self, update: Update, context): |     async def entry_point(self, update: Update, context): | ||||||
|         await super().entry_point(update, context) |         await super().entry_point(update, context) | ||||||
|         msgtxt = update.message.text |         msgtxt = update.message.text | ||||||
|         if "hallo" in msgtxt: |         turtle_emoji = b"\xF0\x9F\x90\xA2".decode("utf8") | ||||||
|  |  | ||||||
|  |         if "hallo" in msgtxt:                                               # react to hallo | ||||||
|             vid = TURTLE_VIDEOS[0] |             vid = TURTLE_VIDEOS[0] | ||||||
|             answertxt = "hallo1" |             answertxt = "Hallo!" | ||||||
|         elif "Hallo" in msgtxt: |         elif re.search("[eE][lL]{2,}[oO]", msgtxt):                         # react to hello | ||||||
|             vid = TURTLE_VIDEOS[1] |             vid = TURTLE_VIDEOS[2] | ||||||
|             answertxt = "Hallo2" |             answertxt = "Hello!"         | ||||||
|  |         elif re.search("([aA]{4,}|[lL]{4,}|[oO]{4,}|[öÖ]{4,})", msgtxt):    # react to stretched hello | ||||||
|  |             vid = TURTLE_VIDEOS[5] | ||||||
|  |             answertxt = "That's a lot of letters!" | ||||||
|  |         elif re.search(turtle_emoji, msgtxt):                               # react to turtle emoji | ||||||
|  |             vid=TURTLE_VIDEOS[0] # TODO: choose video for smiley reaction | ||||||
|  |             answertxt="Turtle detected! Self-destruction mode activated..." | ||||||
|  |         elif re.search("[sS](childkröte)|[tT](urtle)", msgtxt):             # react to turtle string | ||||||
|  |             vid=None | ||||||
|  |             answertxt=turtle_emoji | ||||||
|  |         else: | ||||||
|  |             vid = random.choice(TURTLE_VIDEOS[1:2]+TURTLE_VIDEOS[3:5]+TURTLE_VIDEOS[6:]) | ||||||
|  |             answertxt = "" | ||||||
|  |  | ||||||
|         await update.message.reply_video(video=vid, caption=answertxt) |         if vid!=None: | ||||||
|         # await update.message.reply_text(text=answertxt) |             await update.message.reply_video(video=vid, caption=answertxt) | ||||||
|  |         else: | ||||||
|  |             await update.message.reply_text(text=answertxt) | ||||||
|          |          | ||||||
		Reference in New Issue
	
	Block a user
	 Lia Schöneweiß
					Lia Schöneweiß