pyrogram/docs/source/start/examples/welcome_bot.rst

30 lines
1.1 KiB
ReStructuredText
Raw Normal View History

2022-04-24 09:56:07 +00:00
welcome_bot
===========
2020-08-22 14:09:38 +00:00
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.
.. code-block:: python
2020-08-22 14:09:38 +00:00
from pyrogram import Client, emoji, filters
2022-04-24 09:56:07 +00:00
# Target chat. Can also be a list of multiple chat ids/usernames
TARGET = -100123456789
# Welcome message template
MESSAGE = "{} Welcome to [Pyrogram](https://docs.pyrogram.org/)'s group chat {}!"
app = Client("my_account")
# Filter in only new_chat_members updates generated in TARGET chat
2020-08-22 14:09:38 +00:00
@app.on_message(filters.chat(TARGET) & filters.new_chat_members)
2022-04-24 09:56:07 +00:00
async def welcome(client, message):
# Build the new members list (with mentions) by using their first_name
2020-08-22 14:09:38 +00:00
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
2020-08-22 14:09:38 +00:00
text = MESSAGE.format(emoji.SPARKLES, ", ".join(new_members))
# Send the welcome message, without the web page preview
2022-04-24 09:56:07 +00:00
await message.reply_text(text, disable_web_page_preview=True)
app.run() # Automatically start() and idle()