value_ ?: 0; if ($sellVoucherStatus == 0) { $offText = getSettingsBot('sellVoucherOffText')->value_ ?? "⚠️ *بخش فروش ووچر غیرفعال*\n\nمتأسفانه در حال حاضر امکان فروش ووچر وجود ندارد.\n\n💬 لطفاً با پشتیبانی تماس بگیرید."; $bot->sendMessage($from_id, $offText); die; } $response_text = "💵 *فروش ووچر*\n\n"; $response_text .= "لطفاً نوع ووچر مورد نظر خود را انتخاب کنید:\n\n"; $response_text .= "💡 *نکته مهم:*\n"; $response_text .= "• فروش ووچر به صورت کاملاً اتوماتیک و آنی انجام می‌شود\n"; $response_text .= "• پس از تایید کد ووچر، مبلغ به حساب شما واریز می‌گردد\n"; $response_text .= "• تمامی تراکنش‌ها امن و سریع می‌باشند"; $bot->sendMessage($from_id, $response_text, json_encode([ 'resize_keyboard' => true, 'keyboard' => [ [['text' => '🛒 فروش یو ووچر']], [['text' => '🔙 بازگشت به منوی اصلی']] ] ])); die; } if ($text == '🛒 فروش یو ووچر') { $sellVoucherStatus = getSettingsBot('sellVoucherStatus')->value_ ?: 0; if ($sellVoucherStatus == 0) { $offText = getSettingsBot('sellVoucherOffText')->value_ ?? "⚠️ *بخش فروش ووچر غیرفعال*\n\nمتأسفانه در حال حاضر امکان فروش ووچر وجود ندارد.\n\n💬 لطفاً با پشتیبانی تماس بگیرید."; $bot->sendMessage($from_id, $offText); die; } $loading_message = $bot->sendMessage($from_id, "⏳ *در حال دریافت قیمت لحظه‌ای...*\n\n📡 لطفاً چند لحظه صبر کنید تا قیمت به‌روز برای شما محاسبه شود."); $loading_message_id = $loading_message->result->message_id ?? null; $usdt_irt_price = getUsdtIrtPrice(); $uv_sell = getSettingsBot('uv_sell')->value_ ?? 0; if ($usdt_irt_price === null || $usdt_irt_price === false) { if ($loading_message_id) { $bot->editMessage($from_id, "❌ *خطا در دریافت قیمت*\n\n⚠️ متأسفانه در حال حاضر امکان دریافت قیمت لحظه‌ای وجود ندارد.\n\n🔄 لطفاً چند دقیقه دیگر دوباره تلاش کنید.", $loading_message_id); } else { $bot->sendMessage($from_id, "❌ *خطا در دریافت قیمت*\n\n⚠️ متأسفانه در حال حاضر امکان دریافت قیمت لحظه‌ای وجود ندارد.\n\n🔄 لطفاً چند دقیقه دیگر دوباره تلاش کنید."); } die; } $final_price = (int)$usdt_irt_price + (int)$uv_sell; $price_formatted = number_format($final_price); $usdt_price_formatted = number_format($usdt_irt_price); $price_text = "💰 *قیمت لحظه‌ای فروش یو ووچر*\n\n"; $price_text .= "💰 *قیمت نهایی فروش*: `$price_formatted` تومان\n\n"; $price_text .= "💡 *لطفاً کد ووچر خود را ارسال کنید:*\n"; $price_text .= "⚠️ توجه: کد ووچر باید معتبر و استفاده نشده باشد"; if ($loading_message_id) { $bot->editMessage($from_id, $price_text, $loading_message_id); $bot->sendMessage($from_id, "لطفاً کد ووچر را وارد کنید:", $back_keyboard); } else { $bot->sendMessage($from_id, $price_text, $back_keyboard); } setStep($from_id, 'enter-code-uv'); die; } if ($text == '💎 فروش پرمیوم ووچر') { $bot->sendMessage($from_id, "🤝 این بخش به زودی فعال خواهد شد."); die; } if (strpos($currentUser->step, 'enter-code-') !== false) { $type = explode('-', $currentUser->step)[2]; $type_name = ($type == 'uv') ? 'یو ووچر' : 'پرمیوم ووچر'; if ($type == 'uv') { $loading_msg = $bot->sendMessage($from_id, "⏳ *در حال بررسی کد ووچر...*\n\n📡 لطفاً چند لحظه صبر کنید.\n\n🔄 در حال اتصال به سیستم ووچر و اعتبارسنجی کد..."); $loading_msg_id = $loading_msg->result->message_id ?? null; $requestToUwallet = $uVoucher->redeemVoucher('UUSD', $text); if ($requestToUwallet->message == 200) { $transActionId = $requestToUwallet->data->transactionId; $transActionStatus = $requestToUwallet->data->status; $transActionCode = $text; $transActionDate = jdate("Y/m/d - H:i:s", strtotime(date("Y-m-d H:i:s")), tr_num: 'en'); do { $support_code = rand(10000, 50000); $query = "SELECT COUNT(*) FROM `purchased_vouchers` WHERE `support_code` = ?"; $stmt = $db->prepare($query); $stmt->execute([$support_code]); $rowCount = $stmt->fetchColumn(); } while ($rowCount > 0); $query = "INSERT INTO `purchased_vouchers` (`chat_id`, `code`, `track_id`,`support_code` ,`type`, `status`) VALUES (?, ?,?, ?, ?, ?)"; $stmt = $db->prepare($query); $stmt->execute([$from_id, $transActionCode, $transActionId, $support_code, 'uVoucher', 'pending']); $response_text = "✅ *کد ووچر دریافت شد*\n\n"; $response_text .= "📊 *جزئیات درخواست:*\n\n"; $response_text .= "🎫 *کد ووچر:* `$transActionCode`\n"; $response_text .= "🆔 *شناسه تراکنش:* `$transActionId`\n"; $response_text .= "🔑 *کد رهگیری:* `$support_code`\n"; $response_text .= "📅 *تاریخ ثبت:* $transActionDate\n"; $response_text .= "⏳ *وضعیت:* در حال پردازش و بررسی\n\n"; $response_text .= "💡 *توضیحات:*\n"; $response_text .= "• کد ووچر شما با موفقیت دریافت و در صف تایید قرار گرفت\n\n"; $response_text .= "• پس از بررسی و تایید، مبلغ به حساب شما واریز خواهد شد\n\n"; $response_text .= "• لطفاً چند دقیقه منتظر بمانید تا وضعیت نهایی به شما اطلاع داده شود\n\n"; $response_text .= "• در صورت نیاز به کمک، با پشتیبانی تماس بگیرید 📞"; if ($loading_msg_id) { $bot->editMessage($from_id, $response_text, $loading_msg_id); } else { $bot->sendMessage($from_id, $response_text); } } else { $error_msg = "❌ *خطا در عملیات فروش*\n\n"; $error_msg .= "⚠️ کد ووچر ارسالی شما معتبر نیست یا قبلاً استفاده شده است.\n\n"; $error_msg .= "💡 *لطفاً بررسی کنید:*\n"; $error_msg .= "• کد ووچر را به درستی وارد کرده باشید\n"; $error_msg .= "• کد ووچر قبلاً استفاده نشده باشد\n"; $error_msg .= "• کد ووچر مربوط به سیستم یو ووچر باشد\n\n"; $error_msg .= "🔄 در صورت اطمینان از صحت کد، با پشتیبانی تماس بگیرید."; if ($loading_msg_id) { $bot->editMessage($from_id, $error_msg, $loading_msg_id); } else { $bot->sendMessage($from_id, $error_msg); } } $bot->sendMessage($from_id, '✅ به منوی اصلی بازگشتید', $main_keyboard); setStep($from_id, 'home'); die; } elseif ($type == 'ps') { $randomString = substr(str_shuffle('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'), 0, 4); $bot->sendMessage($from_id, '⏳ لطفاً چند لحظه منتظر بمانید ...'); $response = $psVoucher->redeemVouchers($text, 'USD', $randomString); if ($response->Status == 2) { $transActionCode = $response->Code; $transActionStatus = 'Confirmed'; $transActionId = $response->TransactionID; $transActionAmount = $response->Amount; $transActionDate = jdate("Y/m/d - H:i:s", strtotime(date("Y-m-d H:i:s")), tr_num: 'en'); $giveMoney = getSettingsBot('ps_sell')->value_ ?? 0; $finalAmount = $giveMoney * $transActionAmount; $response_text = "*🎉 تراکنش موفقیت آمیز بود*\n\n"; $response_text .= "🔥 مبلغ: $finalAmount تومان\n\n"; $response_text .= "*✅ کد ووچر شما: *\n" . "`" . $transActionCode . "`" . "\n\n"; $response_text .= "*🏷 شناسه تراکنش: *\n" . "`" . $transActionId . "`" . "\n\n"; $response_text .= "*📆 تاریخ تراکنش: *\n" . $transActionDate . "\n\n"; $response_text .= "*💡 وضعیت: *" . ucfirst($transActionStatus) . "\n"; $bot->editMessage($from_id, $response_text, $message_id + 1); $query = "UPDATE `users` SET `balance` = `balance` - ? WHERE `chat_id` = ?"; $stmt = $db->prepare($query); $stmt->execute([$finalAmount, $from_id]); do { $support_code = rand(10000, 50000); $query = "SELECT COUNT(*) FROM `purchased_vouchers` WHERE `support_code` = ?"; $stmt = $db->prepare($query); $stmt->execute([$support_code]); $rowCount = $stmt->fetchColumn(); } while ($rowCount > 0); $query = "INSERT INTO `purchased_vouchers` (`chat_id`,`amount`, `code`, `track_id`, `support_code`,`type`, `status`) VALUES (?,?, ?, ?,?, ?, ?)"; $stmt = $db->prepare($query); $stmt->execute([$from_id, $finalAmount, $transActionCode, $randomString, $support_code, 'psVoucher', 'confirm']); $query = "UPDATE `users` SET `balance` = `balance` + ? WHERE `chat_id` = ?"; $stmt = $db->prepare($query); $stmt->execute([$finalAmount, $from_id]); $channel = getSettingsBot('sell_voucher_channel')->value_ ?? 0; $full_name = $currentUser->full_name; $log_text = " 🛒 **فروش ووچر جدید** 🛒 👤 **شناسه کاربر**: $from_id 🔰 **نام و نام خانوادگی**: $full_name 💳 **شناسه رهگیری**: $support_code 🏷️ **نوع ووچر**: psVoucher 💸 **مبلغ کل**: $finalAmount تومان ⏳ **تاریخ فروش**: " . $transActionDate . " ✅ فروش ووچر با موفقیت توسط کاربر با شناسه $from_id انجام شد. "; $bot->sendMessage($channel, $log_text); } else { $bot->editMessage($from_id, '❌ خطا در عملیات فروش! کد ووچر معتبر نیست یا قبلاً استفاده شده است.', $message_id + 1); } $bot->sendMessage($from_id, '✅ به منو اصلی بازگشتید', $main_keyboard); setStep($from_id, 'home'); die; } }