diff options
| author | mroik <mroik@delayed.space> | 2021-11-25 00:48:12 +0100 |
|---|---|---|
| committer | mroik <mroik@delayed.space> | 2021-11-25 00:48:12 +0100 |
| commit | 15e9047c6cdde34662f86fa0b1156c7a860cb895 (patch) | |
| tree | 1f3ff8c737ed1c169055796c717301bf30d6b090 | |
| parent | 9ac7fd007bb935f708be95ed1dcdba4cc8330d76 (diff) | |
Highlighting
| -rw-r--r-- | config.py | 1 | ||||
| -rw-r--r-- | mentioned.py | 14 |
2 files changed, 13 insertions, 2 deletions
@@ -2,4 +2,5 @@ from os import environ API_ID = environ.get("TELEGRAM_API_ID") API_HASH = environ.get("TELEGRAM_API_HASH") +GROUP_ID = environ.get("TELEGRAM_GROUP_ID") WORDLIST = [] # List of words to be notified about diff --git a/mentioned.py b/mentioned.py index 1cc9f20..429791e 100644 --- a/mentioned.py +++ b/mentioned.py @@ -1,3 +1,5 @@ +import re + from telethon import TelegramClient, events from telethon.tl.types import PeerUser @@ -24,10 +26,18 @@ async def handler(event: events.NewMessage.Event): if message.mentioned: return for word in WORDLIST: - if word.upper() in message.message.upper(): + if f" {word.upper()} " in message.message.upper()\ + or message.message.upper().startswith(f"{word.upper()} ")\ + or message.message.upper().endswith(f" {word.upper()}"): msg = f"[{from_.user_id}](tg://user?id={from_.user_id}) tagged you in" msg += f" [{chan.channel_id}](https://t.me/c/{chan.channel_id}/{str(message.id)}):\n" - msg += f"{message.message}" + found = re.search(f"{word.upper()}", message.message.upper()) + if found is None: + msg += f"{message.message}" + else: + msg += f"{message.message[:found.start()]}__"\ + f"{message.message[found.start():found.end()]}__"\ + f"{message.message[found.end():]}" await client.send_message("me", msg) return |
