import telebot #Keyboard from telebot.types import ReplyKeyboardMarkup, KeyboardButton #VAR import import var var.init() #FUNC import from func import * API_TOKEN = var.API_MAIN bot = telebot.TeleBot(API_TOKEN) @bot.message_handler(commands=['start']) def welcome(message): markup = ReplyKeyboardMarkup(resize_keyboard=True) markup.add('Баланс') markup.add('Ввести/Вывести') markup.add('Перевод') markup.add('Помощь') bot.reply_to(message, """ Используя данный банк, вы соглашаетесь с следующими положениями в ссылке - https://t.me/cryptodm_bank/8 """,reply_markup=markup) @bot.message_handler(commands=['help']) def help(message): bot.reply_to(message, """ ┌─────────Помощь───────── ├[Основная информация](https://t.me/cryptodm_bank/5) ├[Спец.команды](https://t.me/cryptodm_bank/4) ├[Соглашения](https://t.me/cryptodm_bank/8) │ ├Разработчик/Администратор ├@kirill638355 ├Ник: \_SAN5\_SkeLet0n\_ │ ├[Исходный код](https://gitlab.com/justuser31/dm_moneybot) └───────────────────────── """,parse_mode='Markdown') @bot.message_handler(commands=['unreg']) def unregs(message): unreg(message) @bot.message_handler(commands=['balance']) def balance(message): read() if checkauth(message): name=var.db[str(message.chat.id)] bot.reply_to(message,f""" Баланс ➣ {var.db[name]} CDM """) @bot.message_handler(commands=['change']) def change(message): if checkauth(message): var.steps[message.chat.id]="change" bot.reply_to(message,""" Пока моментальный ввод/вывод недоступен, извините. ┌─────Расписание── │17:00 - 22:00 (По Москве) ├──────────────── └➣Введите время или напишите "отмена" """) else: err(message) @bot.message_handler(commands=['pay']) def pay(message): if checkauth(message): bot.reply_to(message,"Сумма ➣") var.steps[message.chat.id]="pay_num" @bot.message_handler(func=lambda message: True) def checks(message): if message.text == 'Баланс': balance(message) elif message.text == 'Ввести/Вывести': change(message) elif message.text == 'Перевод': pay(message) elif message.text == 'Помощь': help(message) else: try: print(var.steps[message.chat.id]) except: var.steps[message.chat.id] = None if var.steps[message.chat.id] == "reg": reg(message) elif var.steps[message.chat.id] == "pass": passwd(message) elif var.steps[message.chat.id] == "change": if (message.text).lower() != "отмена": try: read() bot.send_message(2057834471,"#######################\nИгрок "+str(var.db[str(message.chat.id)])+" (@"+message.from_user.username+")"+" просит встречу в "+message.text+"\n#######################\n") bot.reply_to(message,"Запрос успешно отправлен!") var.steps[message.chat.id]=None except: err(message) elif (message.text).lower() == "отмена": bot.reply_to(message,"Операция отменена.") var.steps[message.chat.id]=None elif var.steps[message.chat.id] == "pay_num": try: # if True: read() #FLOAT var.pnum[message.chat.id] = float(message.text) if var.pnum[message.chat.id] > 0.00000000001: if float(var.db[var.db[str(message.chat.id)]]) >= var.pnum[message.chat.id]: bot.reply_to(message,"Ник адресата ➣") var.steps[message.chat.id]="pnick" else: err(message) else: print(1) err(message) except: err(message) elif var.steps[message.chat.id] == "pnick": var.pnick[message.chat.id] = message.text bot.reply_to(message,f""" Ник ➣ {var.pnick[message.chat.id]} Сумма ➣ {str(var.pnum[message.chat.id])} Для подтверждения напишите 'да' """) var.steps[message.chat.id] = "pay_valid" elif var.steps[message.chat.id] == "pay_valid": if message.text == 'да': try: # if 1 == 1: var.db[var.pnick[message.chat.id]] = var.db[var.pnick[message.chat.id]]+var.pnum[message.chat.id] var.db[var.db[str(message.chat.id)]] = var.db[var.db[str(message.chat.id)]]-var.pnum[message.chat.id] #Date today = date.today() payer=var.db[str(message.chat.id)] # payer_bill=str(message.chat.id) sum=str(var.pnum[message.chat.id]) dttm=today.strftime("%d.%m.%Y_"+time.strftime("%H:%M", time.localtime())) signstr=payer+var.pnick[message.chat.id]+dttm sign=str(hashlib.sha1(str.encode(signstr)).hexdigest()) bot.reply_to(message,"Успешно") bot.reply_to(message,f""" -----ЧЕК---- Плательщик: {payer} Сумма: {sum} CDM ~~~~~~~~~~ Получатель: {var.pnick[message.chat.id]} Время&Дата: {dttm} ------------ ~CryptoDM~ ПОДПИСЬ: {sign} ___________ """) f=open('signs.sha256','a') f.write(sign+"-"+dttm+"\n") f.close() try: getid = list(var.db.keys())[list(var.db.values()).index(var.pnick[message.chat.id])] bot.send_message(getid,f""" ╔════════════════════════ ║Вам перевели ➣ {sum} CDM ╚════════════════════════ """) except: pass write() except: err(message) else: var.steps[message.chat.id] = None bot.reply_to(message,"Вы отменили операцию") bot.infinity_polling()