-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
121 lines (95 loc) · 4.95 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
import requests
import telebot
from telebot import types
from SimpleQIWI import *
bot = telebot.TeleBot('5771987782:AAFciAC1HNQn8xqO5ir8KerASpdxviCebbE') # токен от бота в телеграм, создать бота можно тут - t.me/BotFather
number = '79617747171' # номер киви
token = '321' # токен киви, взять тут - qiwi.com/api
api = QApi(token=token, phone=number)
sum = 100 # сколько мамонт должен заплатить
menu = types.InlineKeyboardMarkup(row_width=3)
menu.add(
types.InlineKeyboardButton(text='Купить', callback_data='buy'), # +
types.InlineKeyboardButton(text='Информация', callback_data='info') # +
)
games = types.InlineKeyboardMarkup(row_width=3)
games.add(
types.InlineKeyboardButton(text='Pubg mobile', callback_data='pubg'),
types.InlineKeyboardButton(text='Brawl Stars', callback_data='brawl'),
types.InlineKeyboardButton(text='Standoff 2', callback_data='standoff'),
types.InlineKeyboardButton(text='Назад', callback_data='back')
)
@bot.message_handler(content_types=["text"])
def message_send(message):
chat_id = message.chat.id
message_id = message.message_id
username = message.from_user.first_name
starter= f'''
Привет, {username}! Это бот для покупки валюты в разных играх.
Нажимай на клавиатуру ниже..
'''
if message.text == '/start':
bot.send_message(chat_id, starter, reply_markup=menu)
@bot.callback_query_handler(func=lambda call: True)
def handler_call(call):
chat_id = call.message.chat.id
message_id = call.message.message_id
username = call.from_user.first_name
oplata = 'opl' + str(chat_id)
sendRequests = f"https://qiwi.com/payment/form/99?extra%5B%27account%27%5D={number}&amountInteger={sum}&amountFraction=0&extra%5B%27comment%27%5D={oplata}¤cy=643&blocked%5B0%5D=sum&blocked%5B1%5D=comment&blocked%5B2%5D=account"
buy1 = types.InlineKeyboardMarkup(row_width=3)
buy1.add(
types.InlineKeyboardButton(text='Оплатить', url=sendRequests, callback_data='pay'),
types.InlineKeyboardButton(text='Проверить оплату', callback_data='check'),
types.InlineKeyboardButton(text='Назад', callback_data='back')
)
if call.data == 'buy':
bot.send_message(chat_id, 'Выберите игру, для которой хотите купить валюту', reply_markup=games)
elif call.data == 'info':
helpp = '''
Помощь
Это бот для покупки валюты для таких игр как: Pubg mobile, Standoff 2, Brawl Start.
Чтобы приобрести подписку на валюту, нажмите "Купить", после оплаты, администратор попросит у вас ваши игровые данные, чтобы отправить валюту.
'''
bot.send_message(chat_id, helpp, reply_markup=menu)
elif call.data == 'brawl':
bbb = f'''
Приобретение валюты для Brawl Stars
Стоимость бесконечной подписки на валюту: {sum}руб
После оплаты, вы будете перенаправлены на получение валюты
Ваш ID: {chat_id}
'''
bot.send_message(chat_id, bbb, parse_mode='MarkdownV2', reply_markup=buy1)
elif call.data == 'standoff':
bbb = f'''
Приобретение валюты для Standoff 2
Стоимость бесконечной подписки на валюту: {sum}руб
После оплаты, вы будете перенаправлены на получение валюты
Ваш ID: {chat_id}
'''
bot.send_message(chat_id, bbb, parse_mode='MarkdownV2', reply_markup=buy1)
elif call.data == 'pubg':
bbb = f'''
Приобретение валюты для Pubg Mobile
Стоимость бесконечной подписки на валюту: {sum}руб
После оплаты, вы будете перенаправлены на получение валюты
Ваш ID: {chat_id}
'''
bot.send_message(chat_id, bbb, parse_mode='MarkdownV2', reply_markup=buy1)
elif call.data == 'check':
try:
payload = 'opl' + str(chat_id)
bot.send_message(chat_id, 'Начинаю проверку платежей...')
for i in range(len(api.payments['data'])):
if api.payments['data'][i]['comment'] == payload and api.payments['data'][i]['sum']['amount'] == sum:
bot.send_message(chat_id, 'Что-то пошло не по плану, подождите немного...', reply_markup=menu)
bot.send_message(chat_id, 'Ошибка: Не найдено', reply_markup=buy1)
except:
print('11122')
elif call.data == 'back':
starter= f'''
Привет, {username}! Это бот для покупки валюты в разных играх.
Нажимай на клавиатуру ниже..
'''
bot.send_message(chat_id, starter, reply_markup=menu)
bot.polling(none_stop=True)