aiogram / aiogram/bot

Telegram bot future

Aperta
#32 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
invalid
Lingua principale
Python
Stelle
282
Fork
58
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup
from telegram.ext import ApplicationBuilder, CommandHandler, CallbackQueryHandler, ContextTypes
import logging

BOT_TOKEN = "7699211626:AAEE0rLHWFzafG_jVlzGfOn9-QTbYooXvkE"
CHANNEL_USERNAME = "pixelverse_hd"

logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO
)

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
keyboard = [
[InlineKeyboardButton("✅ Join Channel", url=f"https://t.me/{CHANNEL_USERNAME}")],
[InlineKeyboardButton("🔁 Verify", callback_data="verify")]
]
reply_markup = InlineKeyboardMarkup(keyboard)
await update.message.reply_text(
"Welcome! To use this bot, please join our channel first and verify.",
reply_markup=reply_markup
)

async def button_handler(update: Update, context: ContextTypes.DEFAULT_TYPE):
query = update.callback_query
user_id = query.from_user.id
await query.answer()

try:
member = await context.bot.get_chat_member(chat_id=f"@{CHANNEL_USERNAME}", user_id=user_id)
if member.status in ['member', 'administrator', 'creator']:
await query.edit_message_text("✅ Verification successful! You now have access.")
# Additional features can be added here
else:
await query.edit_message_text("❌ You are not a member of the channel.")
except:
await query.edit_message_text("⚠️ Unable to verify. Please try again later.")

if __name__ == '__main__':
app = ApplicationBuilder().token(BOT_TOKEN).build()
app.add_handler(CommandHandler("start", start))
app.add_handler(CallbackQueryHandler(button_handler))
print("Bot is running...")
app.run_polling()

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.