welcome_bot
This example uses the emoji
module to easily add emoji in your text messages and filters
to make it only work for specific messages in a specific chat.
from pyrogram import Client, emoji, filters
# Target chat. Can also be a list of multiple chat ids/usernames
TARGET = -100123456789
# Welcome message template
MESSAGE = "{} Welcome to [Electrogram](https://electrogram-docs.vercel.app/)'s group chat {}!"
app = Client("my_account")
# Filter in only new_chat_members updates generated in TARGET chat
@app.on_message(filters.chat(TARGET) & filters.new_chat_members)
async def welcome(client, message):
# Build the new members list (with mentions) by using their first_name
new_members = [u.mention for u in message.new_chat_members]
# Build the welcome message by using an emoji and the list we built above
text = MESSAGE.format(emoji.SPARKLES, ", ".join(new_members))
# Send the welcome message, without the web page preview
await message.reply_text(text, disable_web_page_preview=True)
app.run() # Automatically start() and idle()