aiogram / aiogram/bot

Telegram bot future

Open
#32 0 comments 0 reactions 0 assignees View on GitHub
invalid
Dominant language
Python
Stars
282
Forks
58
PR merge metrics
No merged PRs in 30d

Description

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()

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.