Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import settings
- from bot import bot
- import config_loader as config_loader
- from scenary import main as scenary_main
- import time
- from multiprocessing.context import Process
- import keyboards
- from logic import balance, edit_profile, prognoz, chat, new_user, main, pool
- import helpers
- import message_mapper
- from dal.User import User
- import json
- from logic.activity import start_schedule, start_prognoz_schedule, start_prognoz_spammer
- config = config_loader.Config()
- @bot.callback_query_handler(func=lambda c: True)
- def submenus(c):
- bot.clear_step_handler_by_chat_id(chat_id=c.message.chat.id)
- try:
- bot.edit_message_reply_markup(c.message.chat.id, message_id=c.message.message_id - 1, reply_markup='')
- except:
- pass
- user = User(c.from_user.id)
- try:
- c_data = json.loads(c.data)
- if c_data['s'] == 'main':
- main.submenus(c.message, c_data, user)
- if c_data['s'] == 'new_user':
- new_user.submenus(c.message, c_data, user)
- if c_data['s'] == 'balance':
- balance.submenus(c.message, c_data, user)
- if c_data['s'] == 'edit_profile':
- edit_profile.submenus(c.message, c_data, user)
- if c_data['s'] == 'prognoz':
- prognoz.submenus(c.message, c_data, user)
- if c_data['s'] == 'chat':
- chat.submenus(c.message, c_data, user)
- if c_data['s'] == 'pool':
- pool.submenus(c.message, c_data, user)
- except Exception as e:
- helpers.logs('submenus:\nПользователь:' + str(user.id) + ' ' + user.user_info.user_name + '\n' + str(
- e.args) + '\n' + c.data)
- # Функция, обрабатывающая команду /start
- @bot.message_handler(commands=["start"])
- def start(m, res=False):
- user = User(m.from_user.id)
- try:
- if user.is_confirm_user:
- bot.clear_step_handler_by_chat_id(chat_id=m.chat.id)
- if user.has_no_reg_data():
- new_user.init(m, user)
- else:
- helpers.bot_message_send(user, m, scenary_main.get_hello(user.user_info.name),
- keyboards.main_menu(), 'html')
- helpers.bot_message_send(user, m, scenary_main.get_menu_text(user), keyboards.menu(), "html")
- else:
- user.new_user(bot, m.chat.id, m.from_user.id, m.from_user.username, m.from_user.language_code, m.text)
- new_user.init(m, user)
- except Exception as e:
- helpers.logs('start:\nПользователь:' + str(user.id) + ' ' + user.user_info.user_name + '\n' + str(e.args))
- @bot.message_handler(content_types=['text'])
- def menus(message):
- try:
- bot.edit_message_reply_markup(message.chat.id, message_id=message.message_id - 1, reply_markup='')
- except:
- pass
- m = message.text.strip()
- user = User(message.from_user.id)
- try:
- if m == 'Продолжить':
- bot.clear_step_handler_by_chat_id(chat_id=message.chat.id)
- user.user_info.set_is_updated(True)
- if not user.has_no_reg_data():
- helpers.bot_message_send(user, message,
- 'На чем мы остановились?',
- keyboards.main_menu())
- else:
- helpers.bot_message_send(user, message,
- 'Давай продолжим регистрацию',
- keyboards.default())
- new_user.init(message, user)
- return
- if m == 'Профиль👑':
- user.set_last_step_handler("")
- bot.clear_step_handler_by_chat_id(chat_id=message.chat.id)
- helpers.bot_message_send(user, message, scenary_main.get_profile(user),
- keyboards.profile(user))
- return
- if m == 'Меню':
- user.set_last_step_handler("")
- bot.clear_step_handler_by_chat_id(chat_id=message.chat.id)
- helpers.bot_message_send(user, message, scenary_main.get_menu_text(user), keyboards.menu(), "html")
- return
- if m == 'Помощь☘':
- user.set_last_step_handler("")
- bot.clear_step_handler_by_chat_id(chat_id=message.chat.id)
- helpers.bot_message_send(user, message, scenary_main.get_support(), None, 'Markdown')
- return
- if m == 'Отмена':
- bot.clear_step_handler_by_chat_id(chat_id=message.chat.id)
- helpers.bot_message_send(user, message,
- 'Ваш платеж отменен. Получить космики можно просто позвав друзей! За каждого друга будет начислено 2 космика⭐️',
- keyboards.main_menu())
- return
- message_mapper.message_caser(message, user)
- except Exception as e:
- helpers.logs('menus:\nПользователь:' + str(user.id) + ' ' + user.user_info.user_name + '\n' + str(
- e.args) + '\n' + 'text:' + message)
- def Poller():
- try:
- bot.polling(none_stop=True, interval=0)
- except Exception as e:
- helpers.logs('Poller:' + str(e.args))
- time.sleep(2)
- Poller()
- def Processes_spammer():
- try:
- Process(target=start_schedule, args=(10, '1')).start()
- except Exception as e:
- helpers.logs('Processes_spammer:' + str(e.args))
- time.sleep(2)
- Processes_spammer()
- def Processes_autoprognoz():
- try:
- Process(target=start_prognoz_schedule, args=(10, '1')).start()
- except Exception as e:
- helpers.logs('Processes_autoprognoz:' + str(e.args))
- time.sleep(2)
- Processes_autoprognoz()
- def Processes_autoprognoz_spammer():
- try:
- Process(target=start_prognoz_spammer, args=(10, '1')).start()
- except Exception as e:
- helpers.logs('Processes_autoprognoz_spammer:' + str(e.args))
- time.sleep(2)
- Processes_autoprognoz_spammer()
- # Запускаем бота
- if __name__ == '__main__':
- Processes_spammer()
- Processes_autoprognoz()
- Processes_autoprognoz_spammer()
- Poller()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement