Загрузка...

Делаем своего бота для донатов звёздами

Тема в разделе Статьи создана пользователем Архистратиг 23 окт 2024. (поднята 31 окт 2024) 1199 просмотров

  1. Архистратиг
    Архистратиг Автор темы 23 окт 2024 Звезды по 1.3₽ https://lolz.live/threads/8842508/ 16 821 26 июл 2020
    Адаптировано с видео


    Подготовка к написанию кода

    1. Создаем папку, в которой будет храниться наш телеграм бот.

    Для этого вводим в консоль:

    Python
    mkdir TelegramStarsBot
    [IMG]

    По указанному выше пути у нас создастся папка с названием TelegramStarsBot.

    2. Переходим в папку с ботом прописывая

    Python
    cd TelegramStarsBot\
    [IMG]

    После этого все взаимодействия с консолью будут именно в нужной нам папке.

    3. Клонируем гитхаб со стартовым ботом в git командой

    Python
    git clone [URL]https://github.com/Priler/telegramStarsBot[/URL]

    Чтобы команда заработала, нужно скачать git под свою OC, и выполнять команду из неё
    https://git-scm.com/downloads

    [IMG]

    4. Ставим нужные библиотеки командой

    Python
    pip install -r requirements.txt
    [IMG]

    Для виндовс нужна именно aiohttp[speedups]==3.9.5 версия

    Получаем токен бота и проверяем бота.

    1. Переходим в бота BotFather

    [IMG]

    2. Создаем своего бота командой /newbot, даем ему имя и юзернейм.

    [IMG]

    3. Копируем наш токен и вставляем его в файл config.toml

    [IMG]

    4. Проверяем нашего бота, запуская файл bot.py

    [IMG]

    Бот запустился, значит, всё работает.

    Делаем тестовый донат.

    [IMG]

    Делаем тестовый возврат

    [IMG]

    Всё, теперь вы можете принимать донаты!

    Бота можно затестить по ссылке - https://t.me/zvezdalolzabot
    Осторожнее, в моем боте /refund вырезаны.

    Чтобы вырезать /refund заходим в папку handlers и открываем файл personal_actions.py

    [IMG]

    Находим код ниже и удаляем его
    Python
    @router.message(Command("paysupport"))
    async def cmd_paysupport(message: Message, l10n: FluentLocalization):
    await message.answer(l10n.format_value("donate-paysupport-message"))


    @router.message(Command("refund"))
    async def cmd_refund(message: Message, bot: Bot, command: CommandObject, l10n: FluentLocalization):
    # ID транзакции для рефанда
    # по ней можно понять, какой товар/услугу возвращает человек
    # и по правилам ТГ, вы можете ОТКАЗАТЬ в рефанде
    # но только в том случае, если условия отказа прописаны в Terms of Service вашего бота
    # ...
    # для примера, мы будем разрешать любой возврат звезд в любое время
    t_id = command.args

    # чекаем, указан ли ID транзакции
    if t_id is None:
    await message.answer(l10n.format_value("donate-refund-input-error"))
    return

    # пытаемся сделать рефанд
    try:
    await bot.refund_star_payment(
    user_id=message.from_user.id,
    telegram_payment_charge_id=t_id
    )
    await message.answer(l10n.format_value("donate-refund-success"))

    except TelegramBadRequest as e:
    err_text = l10n.format_value("donate-refund-code-not-found")

    if "CHARGE_ALREADY_REFUNDED" in e.message:
    err_text = l10n.format_value("donate-refund-already-refunded")

    await message.answer(err_text)
    return
    Перезапускаем бота и видим, что кнопка /refund перестала работать

    [IMG]

    Копим нужное количество звёзд донатами и выводим

    [IMG]
     
    Этот материал оказался полезным?
    Вы можете отблагодарить автора темы путем перевода средств на баланс
    Отблагодарить автора
    23 окт 2024 Изменено
    1. abcdefghijklmnop
  2. foxynesss
    foxynesss 23 окт 2024 https://lolz.live/threads/8981756/ | VDS сервера в Москве 8066 3 мар 2022
    аааа коды
     
  3. good_players
    good_players 23 окт 2024 https://lolz.live/threads/8634402/ - Лучшие телеграмм аккаунты 12 560 21 июл 2022
    Дуров оценил, понятно попрошайка [IMG]
     
    23 окт 2024 Изменено
    1. good_players
      Как он стелит [IMG]
    2. Арарат
      good_players, бывают в жизни огорчения
  4. МЭЙБИ_БЭЙБИ
    спасибо,статья нормальная
    но моей маме мне легче донатить наличкой,а не звездами в тг
     
    23 окт 2024 Изменено
  5. Kalipso
    Kalipso 23 окт 2024 530 12 апр 2022
    Ещё один хауди хо со своей хуйней
     
  6. Transfer
    Transfer 23 окт 2024 бесплатный уник до 04.08 - t.me/cryo_uniqueizer 686 5 июл 2024
    автопродажа где
     
  7. Киана
    Почему каждый чих ты суешь в статьи?
    Этому добру место в разделе python, а не здесь.

    Не знаю зачем вывел git как доп инструмент, если можно просто скачать с сайта гитхаба. Это первое.
    Не понимаю зачем просто переписывать инструкцию, как использовать бота, если все уже указано в гите. Это второе.
     
  8. гусярик
    гусярик 23 окт 2024 :tg::tg::tg::tg::tg::tg::tg::tg::tg::tg::tg::tg::tg::tg::tg: 17 471 9 мар 2022
    в чем прикол этих здездочек, их продать можно?
     
    1. Посмотреть предыдущие комментарии (10)
    2. adidas
    3. гусярик
      Архистратиг, 12 уведов,я думал мне рут лям оформил и меня поздравляют, а тут 2 умнейших человека этой планеты ведут диалог
  9. ВилсонМозгодел
    хауди хо друзья
     
  10. krutyshkin
    krutyshkin 23 окт 2024 148 1166 6 фев 2019
    удобная платежка для eu аудитории
     
  11. v3stern
    v3stern 24 окт 2024 2 17 окт 2024
    [IMG]
    хауди хо повесился походу
     
  12. БИЛЛИНОГАМИ
    БИЛЛИНОГАМИ 25 окт 2024 Банки|Турция|Верификации|Биржи - lzt.lol/TUR :zerotwo:
    Имбуля, но звёзды в СНГ сегменте еще имеют малый спрос.
     
Top
Загрузка...