from pyrogram import Client, filters from pyrogram.types import CallbackQuery, Message, InlineKeyboardButton, InlineKeyboardMarkup #===============================================================# async def texts(client, query): msg = f"""
**Text Configuration:****Start Message:**
{client.messages.get('START', 'Empty')}
**Force Sub Message:**
{client.messages.get('FSUB', 'Empty')}
**About Message:**
{client.messages.get('ABOUT', 'Empty')}
**Reply Message:**
{client.reply_text}
"""
reply_markup = InlineKeyboardMarkup([
[InlineKeyboardButton(f'ꜱᴛᴀʀᴛ ᴛᴇxᴛ', 'start_txt'), InlineKeyboardButton(f'ꜰꜱᴜʙ ᴛᴇxᴛ', 'fsub_txt')],
[InlineKeyboardButton('ʀᴇᴘʟʏ ᴛᴇxᴛ', 'reply_txt'), InlineKeyboardButton('ᴀʙᴏᴜᴛ ᴛᴇxᴛ', 'about_txt')],
[InlineKeyboardButton('◂ ʙᴀᴄᴋ', 'settings')]]
)
await query.message.edit_text(msg, reply_markup=reply_markup)
return
#===============================================================#
@Client.on_callback_query(filters.regex("^start_txt$"))
async def start_txt(client: Client, query: CallbackQuery):
await query.answer()
ask_text = await client.ask(query.from_user.id, "Send new start text message in the next 60 seconds, send `0` to cancel or wait 60 seconds!\n\n__Note you can use both markdown and html formatting!__", filters=filters.text, timeout=60)
try:
text = ask_text.text
if text == '0':
return await ask_text.reply("__Start text has not changed!__")
client.messages['START'] = text
await texts(client, query)
return await ask_text.reply("__Start text has been changed!__")
except Exception as e:
return client.logger(__name__, client.name).error(e)
#===============================================================#
@Client.on_callback_query(filters.regex("^fsub_txt$"))
async def force_txt(client: Client, query: CallbackQuery):
await query.answer()
ask_text = await client.ask(query.from_user.id, "Send new force sub text message in the next 60 seconds, send `0` to cancel or wait 60 seconds!\n\n__Note you can use both markdown and html formatting!__", filters=filters.text, timeout=60)
try:
text = ask_text.text
if text == '0':
return await ask_text.reply("__Force Sub text has not changed!__")
client.messages['FSUB'] = text
await texts(client, query)
return await ask_text.reply("__Force Sub text has been changed!__")
except Exception as e:
return client.logger(__name__, client.name).error(e)
#===============================================================#
@Client.on_callback_query(filters.regex("^about_txt$"))
async def about_txt(client: Client, query: CallbackQuery):
await query.answer()
ask_text = await client.ask(query.from_user.id, "Send new about text message in the next 60 seconds, send `0` to cancel or wait 60 seconds!\n\n__Note you can use both markdown and html formatting!__", filters=filters.text, timeout=60)
try:
text = ask_text.text
if text == '0':
return await ask_text.reply("__About text has not changed!__")
client.messages['ABOUT'] = text
await texts(client, query)
return await ask_text.reply("__About text has been changed!__")
except Exception as e:
return client.logger(__name__, client.name).error(e)
#===============================================================#
@Client.on_callback_query(filters.regex("^reply_txt$"))
async def reply_txt(client: Client, query: CallbackQuery):
await query.answer()
ask_text = await client.ask(query.from_user.id, "Send new reply text message in the next 60 seconds, send `0` to cancel or wait 60 seconds!\n\n__Note you can use both markdown and html formatting!__", filters=filters.text, timeout=60)
try:
text = ask_text.text
if text == '0':
return await ask_text.reply("__Reply text has not changed!__")
client.reply_text = text
await texts(client, query)
return await ask_text.reply("__Reply text has been changed!__")
except Exception as e:
return client.logger(__name__, client.name).error(e)