Реализовать telegramm бота -продавца, имеющего меню выбора жанров игр (action, mmo, rpg) и имеющего возможность проведения платежа и выбора варианта доставки
Ответы
Ответ:
Спочатку напиши у консоль pip install telebot
далi встав цей код у python файл
там де bot = telebot.TeleBot() треба записати токен боту в одинарних лапках ' '
import telebot
from telebot import types
bot = telebot.TeleBot('запиши сюди токен боту')
# Обробник команди /start
@bot.message_handler(commands=['start'])
def start(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
genre_buttons = [types.KeyboardButton('Action'), types.KeyboardButton('MMO'), types.KeyboardButton('RPG')]
markup.add(*genre_buttons)
bot.send_message(message.chat.id, "Вітаю! Виберіть жанр ігор:", reply_markup=markup)
# Обробник вибору жанру
@bot.message_handler(func=lambda message: message.text in ['Action', 'MMO', 'RPG'])
def select_genre(message):
genre = message.text
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
payment_buttons = [types.KeyboardButton('Оплатити'), types.KeyboardButton('Скасувати')]
markup.add(*payment_buttons)
bot.send_message(message.chat.id, f"Ви обрали жанр: {genre}. Виберіть дію:", reply_markup=markup)
# Обробник вибору оплати
@bot.message_handler(func=lambda message: message.text in ['Оплатити', 'Скасувати'])
def payment(message):
action = message.text
if action == 'Оплатити':
# Логіка для оплати
bot.send_message(message.chat.id, "Введіть дані платежу.")
bot.register_next_step_handler(message, delivery)
else:
bot.send_message(message.chat.id, "Оплата скасована.")
# Обробник вибору доставки
def delivery(message):
delivery_option = message.text
# Логіка для обробки вибору доставки
bot.send_message(message.chat.id, f"Доставка: {delivery_option}. Дякуємо за замовлення!")
# Обробник невідомих команд
@bot.message_handler(func=lambda message: True)
def unknown_command(message):
bot.send_message(message.chat.id, "Невідома команда. Будь ласка, спробуйте ще раз.")
# Головна функція
def main():
bot.polling()
if __name__ == '__main__':
main()