from telegram import ( ReplyKeyboardMarkup, ReplyKeyboardRemove, KeyboardButton, Update, ) from telegram.ext import ( Application, CommandHandler, MessageHandler, ConversationHandler, ContextTypes, filters, ) # ========================= # TOKEN VA ADMIN ID # ========================= TOKEN = "YANGI_TOKENINGIZ" ADMIN_ID = 6502958049 # ========================= ISM, TEL, BUYURTMA = range(3) async def start(update: Update, context: ContextTypes.DEFAULT_TYPE): await update.message.reply_text( "Assalomu alaykum π\n\nBuyurtma berish uchun ismingizni yozing." ) return ISM async def ism(update: Update, context: ContextTypes.DEFAULT_TYPE): context.user_data['ism'] = update.message.text keyboard = [ [KeyboardButton("π± Telefon raqam yuborish")] ] markup = ReplyKeyboardMarkup( keyboard, resize_keyboard=True, one_time_keyboard=True ) await update.message.reply_text( "Telefon raqamingizni yozing:", reply_markup=markup ) return TEL async def tel(update: Update, context: ContextTypes.DEFAULT_TYPE): context.user_data['tel'] = update.message.text await update.message.reply_text( "Buyurtmangizni yozing π", reply_markup=ReplyKeyboardRemove() ) return BUYURTMA async def buyurtma(update: Update, context: ContextTypes.DEFAULT_TYPE): context.user_data['buyurtma'] = update.message.text text = f""" π YANGI BUYURTMA π€ Ism: {context.user_data['ism']} π Telefon: {context.user_data['tel']} π¦ Buyurtma: {context.user_data['buyurtma']} """ await context.bot.send_message( chat_id=ADMIN_ID, text=text ) await update.message.reply_text( "β Buyurtmangiz qabul qilindi!\n\nTez orada siz bilan bogβlanamiz." ) return ConversationHandler.END async def cancel(update: Update, context: ContextTypes.DEFAULT_TYPE): await update.message.reply_text( "β Bekor qilindi" ) return ConversationHandler.END def main(): app = Application.builder().token(TOKEN).build() conv_handler = ConversationHandler( entry_points=[CommandHandler("start", start)], states={ ISM: [MessageHandler(filters.TEXT & ~filters.COMMAND, ism)], TEL: [MessageHandler(filters.TEXT & ~filters.COMMAND, tel)], BUYURTMA: [MessageHandler(filters.TEXT & ~filters.COMMAND, buyurtma)], }, fallbacks=[CommandHandler("cancel", cancel)], ) app.add_handler(conv_handler) print("Bot ishga tushdi...") app.run_polling() if name == 'main': main()