From b5b6135cc3f7f2ac46b663c81e9ca6d232150321 Mon Sep 17 00:00:00 2001 From: YOLANDO Date: Wed, 25 Mar 2026 12:37:26 +0700 Subject: [PATCH] final 1 --- __pycache__/yt_engine.cpython-312.pyc | Bin 5964 -> 5964 bytes bot.py | 121 +++++++++++++++----------- cookies.txt | 16 ++-- downloads/7SqNVv98e8Q.mp3 | Bin 0 -> 3380397 bytes downloads/grp6FCnioMM.mp3 | Bin 0 -> 4359981 bytes downloads/gvunApwKIiY.mp3 | Bin 0 -> 753069 bytes downloads/gvunApwKIiY.webm | Bin 0 -> 3340320 bytes yt_engine.py | 2 +- 8 files changed, 77 insertions(+), 62 deletions(-) create mode 100644 downloads/7SqNVv98e8Q.mp3 create mode 100644 downloads/grp6FCnioMM.mp3 create mode 100644 downloads/gvunApwKIiY.mp3 create mode 100644 downloads/gvunApwKIiY.webm diff --git a/__pycache__/yt_engine.cpython-312.pyc b/__pycache__/yt_engine.cpython-312.pyc index 31c953349f47e4dc6cbb7034a784dd5f1be75d28..3ffee21e131f2ab64329d4c40ef64af4aae0da2d 100644 GIT binary patch delta 25 fcmX@3cSeuvG%qg~0}y=4+{l$9#>hIkT`") + await message.answer("🎧 **Music Bot Ready!**\nKirim format: `/play `\nSetelah lagu terkirim, klik rekomendasi di bawahnya untuk melanjutkan.", parse_mode="Markdown") @dp.message(Command("play")) async def cmd_play(message: types.Message): query = message.text.replace("/play", "").strip() if not query: - return await message.answer("⚠️ Masukkan judul lagu. Contoh: `/play Dewa 19 Kangen`") + return await message.answer("⚠️ Masukkan judul lagu. Contoh: /play Dewa 19 Kangen") - status_msg = await message.answer("⏳ *Dimasukkan ke antrean reguler...*") - # Priority 1 = Reguler (Add to Queue) - await music_queue.put((1, time.time(), query, message.chat.id, status_msg.message_id)) + status_msg = await message.answer("⏳ Memproses pesananmu...") + await music_queue.put((query, message.chat.id, status_msg.message_id)) -# --- CALLBACK HANDLERS (TOMBOL INTERAKTIF) --- -@dp.callback_query(F.data.startswith("play_") | F.data.startswith("queue_")) -async def handle_action_buttons(callback: CallbackQuery): - action, video_id = callback.data.split("_", 1) +# --- HANDLER TOMBOL SUGGESTION --- +@dp.callback_query(F.data.startswith("play_")) +async def handle_suggestion_click(callback: CallbackQuery): + video_id = callback.data.split("_", 1)[1] - # Hapus tombol di pesan yang diklik biar gak di-spam klik + # 1. Hapus tombol di pesan sebelumnya biar chat nggak penuh tombol mati await callback.message.edit_reply_markup(reply_markup=None) + # 2. Kirim status baru + status_msg = await bot.send_message(callback.message.chat.id, "⏳ Mengunduh lagu pilihanmu...") query_url = f"https://www.youtube.com/watch?v={video_id}" - if action == "play": - status_msg = await bot.send_message(callback.message.chat.id, "🚀 *VIP Prioritas! Memproses sekarang...*") - # Priority 0 = VIP (Bypass Antrean) - await music_queue.put((0, time.time(), query_url, callback.message.chat.id, status_msg.message_id)) - await callback.answer("Memutar langsung!") - elif action == "queue": - status_msg = await bot.send_message(callback.message.chat.id, "📥 *Ditambahkan ke antrean...*") - # Priority 1 = Reguler - await music_queue.put((1, time.time(), query_url, callback.message.chat.id, status_msg.message_id)) - await callback.answer("Masuk antrean!") + # 3. Masukkan ke antrean + await music_queue.put((query_url, callback.message.chat.id, status_msg.message_id)) + await callback.answer("Siapp! Diproses...") # --- CORE LOGIC --- async def process_music_request(query: str, chat_id: int, status_msg_id: int): local_file = None + total_start_time = time.time() # ⏱️ START TIMER TOTAL + try: - await bot.edit_message_text("🔍 Mencari dan memproses lagu...", chat_id, status_msg_id) + logger.info(f"▶️ MEMULAI PROSES LAGU: {query}") + await bot.edit_message_text("🔍 Mencari ke YouTube...", chat_id, status_msg_id) + + # --- FASE 1: YOUTUBE & FFMPEG --- + t_yt_start = time.time() yt_result = await process_youtube_request(query) + t_yt_end = time.time() + logger.info(f"⏱️ [FASE 1] yt-dlp & FFmpeg memakan waktu: {t_yt_end - t_yt_start:.2f} detik") if yt_result["status"] == "error": return await bot.edit_message_text(f"❌ Gagal: {yt_result['message']}", chat_id, status_msg_id) @@ -103,65 +102,81 @@ async def process_music_request(query: str, chat_id: int, status_msg_id: int): local_file = yt_result["file_path"] s3_object_name = f"{video_id}.mp3" + # --- FASE 2: MINIO S3 --- + t_s3_start = time.time() cached_data = await db.get_cache(video_id) if cached_data: - await bot.edit_message_text("⚡ Mengambil dari Cache S3...", chat_id, status_msg_id) + await bot.edit_message_text("⚡ Mengambil dari Cache (MinIO)...", chat_id, status_msg_id) local_file = f"downloads/cache_{video_id}.mp3" await download_audio(s3_object_name, local_file) + logger.info(f"⏱️ [FASE 2] Download dari MinIO memakan waktu: {time.time() - t_s3_start:.2f} detik") else: - await bot.edit_message_text("☁️ Mengunggah ke S3 Storage...", chat_id, status_msg_id) + await bot.edit_message_text("☁️ Mengunggah ke MinIO Server...", chat_id, status_msg_id) if local_file and os.path.exists(local_file): await upload_audio(local_file, s3_object_name) await db.save_cache(video_id, title, s3_object_name) + logger.info(f"⏱️ [FASE 2] Upload ke MinIO memakan waktu: {time.time() - t_s3_start:.2f} detik") - await bot.edit_message_text("📤 Mengirim audio ke Telegram...", chat_id, status_msg_id) + # --- FASE 3: TELEGRAM UPLOAD --- + await bot.edit_message_text("📤 Mengirim file ke Telegram...", chat_id, status_msg_id) if local_file and os.path.exists(local_file): + t_tele_start = time.time() audio = FSInputFile(local_file) await bot.send_audio(chat_id=chat_id, audio=audio, title=title, performer="Music Bot", request_timeout=300) - await bot.delete_message(chat_id, status_msg_id) + t_tele_end = time.time() + logger.info(f"⏱️ [FASE 3] Upload ke Telegram memakan waktu: {t_tele_end - t_tele_start:.2f} detik") - # --- MENCARI REKOMENDASI LAGU (MIX ALGORITHM) --- + if status_msg_id: + await bot.delete_message(chat_id, status_msg_id) + + # --- SUGGEST 5 LAGU --- + t_recs_start = time.time() recs = await get_recommendations(video_id) + logger.info(f"⏱️ [FASE 4] Fetch Rekomendasi memakan waktu: {time.time() - t_recs_start:.2f} detik") + if recs: kb = [] - # Buat baris tombol untuk setiap lagu rekomendasi - for rec in recs: - short_title = rec['title'][:30] + "..." if len(rec['title']) > 30 else rec['title'] - kb.append([InlineKeyboardButton(text=f"🎵 {short_title}", callback_data="ignore")]) - kb.append([ - InlineKeyboardButton(text="▶️ Play Now", callback_data=f"play_{rec['id']}"), - InlineKeyboardButton(text="➕ Queue", callback_data=f"queue_{rec['id']}") - ]) + for rec in recs[:5]: + short_title = rec['title'][:60] + "..." if len(rec['title']) > 60 else rec['title'] + kb.append([InlineKeyboardButton(text=f"▶️ {short_title}", callback_data=f"play_{rec['id']}")]) reply_markup = InlineKeyboardMarkup(inline_keyboard=kb) - await bot.send_message(chat_id, f"💡 **Rekomendasi Selanjutnya untukmu:**", reply_markup=reply_markup, parse_mode="Markdown") + await bot.send_message( + chat_id=chat_id, + text=f"💡 **Rekomendasi dari:**\n_{title}_", + reply_markup=reply_markup, + parse_mode="Markdown" + ) + + logger.info(f"✅ TOTAL WAKTU E2E: {time.time() - total_start_time:.2f} detik\n{'-'*40}") except Exception as e: logger.error(f"Error: {e}") + try: + await bot.edit_message_text("❌ Terjadi kesalahan internal saat memproses lagu.", chat_id, status_msg_id) + except: pass finally: if local_file and os.path.exists(local_file): os.remove(local_file) -# --- AUTO CLEANUP --- +# --- AUTO CLEANUP CACHE --- async def cleanup_expired_cache(): expired_items = await db.get_expired_cache(days=7) for item in expired_items: await delete_audio(item['s3_object_key']) await db.delete_cache(item['youtube_id']) -# --- MAIN LOOP --- +# --- MAIN RUNNER --- async def main(): await db.connect() - - # Menyalakan Background Worker untuk Queue asyncio.create_task(queue_worker()) scheduler = AsyncIOScheduler() scheduler.add_job(cleanup_expired_cache, 'cron', hour=3, minute=0) scheduler.start() - - logger.info("🚀 Bot Music Ready dengan Antrean & Rekomendasi!") + + logger.info("🚀 Bot Music - Mode Interactive Playlist Berjalan!") await bot.delete_webhook(drop_pending_updates=True) await dp.start_polling(bot) diff --git a/cookies.txt b/cookies.txt index ed8ec8e..e96bafc 100644 --- a/cookies.txt +++ b/cookies.txt @@ -3,12 +3,12 @@ .youtube.com TRUE / TRUE 2147483647 __Secure-1PAPISID CABFFJNnCe9Ocqz0/ANX4rXmqpbZzZy8y1 .youtube.com TRUE / TRUE 2147483647 __Secure-1PSID g.a0008AhqPWcg3-Syf1o_JEl3LCHzWFKn_n3Y8jgh3RnwDW83PtpvDZ6ZjTqI52V0CZWm40gj1wACgYKAYYSARESFQHGX2MigEiR2_gNFFV-QFRM2YthnxoVAUF8yKp0aiEfXAKcPOTZdsLVsdG00076 -.youtube.com TRUE / TRUE 1805949648 __Secure-1PSIDCC AKEyXzXscwi6BSxDoeuZ7ScUtDA6oVx7r92n-r3mTU3Htk4sV9EpzXwavLppIPUDaV5LUM9wcw +.youtube.com TRUE / TRUE 1805951136 __Secure-1PSIDCC AKEyXzUIxLQmOaltTf1fGcQk8YPiD-LeYgDwpvoYnXyN2XpMqdyv8dRk8RMnPnEuNpcNaJpiuA .youtube.com TRUE / TRUE 2147483647 __Secure-1PSIDRTS sidts-CjcBWhotCb-4c6IuQXRvmRVYyon3cb4LfaOkQmhdlWz2FTjey8tLFTyGymAQr1fbHPACgLGOXKsXEAA .youtube.com TRUE / TRUE 2147483647 __Secure-1PSIDTS sidts-CjUBWhotCXH5m0kFaAC1lhqf8kaotcZDxFxOty6XBxNsYxySai6J15Fi8BHklGtKOGZKSNYrLxAA -.youtube.com TRUE / TRUE 1837485634 __Secure-3PAPISID CABFFJNnCe9Ocqz0/ANX4rXmqpbZzZy8y1 -.youtube.com TRUE / TRUE 1837485634 __Secure-3PSID g.a0008AhqPWcg3-Syf1o_JEl3LCHzWFKn_n3Y8jgh3RnwDW83PtpvC14W2htdab0jQBsnf1YkqgACgYKAdcSARESFQHGX2MiTK5ZxIBltpFTHCsEt_xiuxoVAUF8yKrG5FgxNyKwsIayRODxp8Fo0076 -.youtube.com TRUE / TRUE 1805949648 __Secure-3PSIDCC AKEyXzU266eQwSCnNxn6ExAq3rRybQLzE4Z8R5O0uaTVV9E5h7LZ9FtpNU2MulJbDaDuM8Bhcw +.youtube.com TRUE / TRUE 1837487124 __Secure-3PAPISID CABFFJNnCe9Ocqz0/ANX4rXmqpbZzZy8y1 +.youtube.com TRUE / TRUE 1837487124 __Secure-3PSID g.a0008AhqPWcg3-Syf1o_JEl3LCHzWFKn_n3Y8jgh3RnwDW83PtpvC14W2htdab0jQBsnf1YkqgACgYKAdcSARESFQHGX2MiTK5ZxIBltpFTHCsEt_xiuxoVAUF8yKrG5FgxNyKwsIayRODxp8Fo0076 +.youtube.com TRUE / TRUE 1805951136 __Secure-3PSIDCC AKEyXzUEL9zBsIFlxJP8kImHFhOK8FA5ZzEE4j6_lcjzKUrODAt1IS4GDcyMK2tbSJFdpBMnaA .youtube.com TRUE / TRUE 2147483647 __Secure-3PSIDRTS sidts-CjcBWhotCb-4c6IuQXRvmRVYyon3cb4LfaOkQmhdlWz2FTjey8tLFTyGymAQr1fbHPACgLGOXKsXEAA .youtube.com TRUE / TRUE 2147483647 __Secure-3PSIDTS sidts-CjUBWhotCXH5m0kFaAC1lhqf8kaotcZDxFxOty6XBxNsYxySai6J15Fi8BHklGtKOGZKSNYrLxAA .youtube.com TRUE / TRUE 2147483647 __Secure-BUCKET CJsE @@ -19,7 +19,7 @@ .youtube.com TRUE / TRUE 2147483647 APISID PbWG-XrqTeJJFiPn/ACQ0hTzgL5lCMuKP5 .youtube.com TRUE / FALSE 0 PREF hl=en&tz=UTC .youtube.com TRUE / TRUE 0 SOCS CAI -.youtube.com TRUE / TRUE 0 YSC P4gtt98KyR4 -.youtube.com TRUE / TRUE 1789965648 VISITOR_INFO1_LIVE simeqjbyhfg -.youtube.com TRUE / TRUE 1789965648 VISITOR_PRIVACY_METADATA CgJJRBIEGgAgbg%3D%3D -.youtube.com TRUE / TRUE 1837485634 LOGIN_INFO AFmmF2swRgIhALLG_pjzu2VHqpJ3nvTgO4BBFATaF3B4-ynZF1X3zIZ7AiEAxxUAkMU1uCiUa0ieIKye_J-fFQZUfYU0UWWYlfDdjMY:QUQ3MjNmeVhrOEFad0h6TkRFZEFwdl9FZU15ejZuT0VVV0cwNmgtSVljMGFQRmlxQkppa0pCQ1VaXzZXTEtYU2JaSF9sLS1uemN5YWUzNG9WZlA3Z1NlWENpSnNkSDdTRjJHY0hFZ2xuaUVBaXJTTXAzNDNxY2wtVFFFMzRJNmdXbXpDazZhVmt1dHJndGhfSDF3U181QlI5UDdvVmhxc1VB +.youtube.com TRUE / TRUE 0 YSC 1xjiT5Oikbs +.youtube.com TRUE / TRUE 1837487125 LOGIN_INFO AFmmF2swRQIhAL69BVhiHN7pI8NRR4HKWf4y1nB2NymBs8b4SapeMuYBAiBXnlXmRsm7fl_vzwvgkCRSs-81PNyApm33E11JW8RoJA:QUQ3MjNmejFnV0xvdHdQeXktQUJoY1pZZ3lDT1N4U1ZMUUNYVmdDNG02YzZTSjM2ejltODhFWFBjTXduNXNyamQ5OEZRRzU3RzVpWTJVM051T3pwbHEzZkZTcjJtS1RTcXFoMVpDLWRiR1g0YVN6VnpBQTFUOUxhSTZiMUlMdzB4bWtjaVV2dklrcW05TlVKOE0tcGpRVnRrSE9rX1czUE9B +.youtube.com TRUE / TRUE 1789967136 VISITOR_INFO1_LIVE 68v_ALXnekk +.youtube.com TRUE / TRUE 1789967136 VISITOR_PRIVACY_METADATA CgJJRBIEGgAgIA%3D%3D diff --git a/downloads/7SqNVv98e8Q.mp3 b/downloads/7SqNVv98e8Q.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..0aaafcf14ec43cc8561445dfe7b7fadedd8d1099 GIT binary patch literal 3380397 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