73 lines
4.4 KiB
Python
73 lines
4.4 KiB
Python
import asyncio
|
||
from aiogram import Bot, Dispatcher, types
|
||
import re
|
||
import os
|
||
import time
|
||
import shutil
|
||
import random
|
||
from create_bot import bot, request_url, important_message, url, token, bucket_name, username, password, endpoint_url
|
||
from req import check_register
|
||
import urllib.request
|
||
from messages import get_main_menu_message
|
||
from aiogram.fsm.context import FSMContext
|
||
from aiogram.fsm.state import State, StatesGroup
|
||
from aiogram.enums import ParseMode
|
||
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton, ReplyKeyboardRemove, InlineKeyboardMarkup, InlineKeyboardButton, WebAppInfo
|
||
|
||
from loguru import logger
|
||
|
||
import boto3
|
||
from botocore.config import Config
|
||
|
||
def get_answer_keyboard():
|
||
button1 = InlineKeyboardButton(text='Главное меню', callback_data='main_menu')
|
||
kb = [[button1]]
|
||
keyboard = InlineKeyboardMarkup(inline_keyboard=kb)
|
||
return keyboard
|
||
|
||
def get_main_keyboard_inline(is_admin=False, ref_code=None):
|
||
button1 = InlineKeyboardButton(text='👾 Кликер', web_app=WebAppInfo(url=f'{url}?referred_by={ref_code}'))
|
||
button2 = InlineKeyboardButton(text='ℹ️ Инструкция', callback_data='instruction_inline')
|
||
button3 = InlineKeyboardButton(text='🔥 Кто мы?', web_app=WebAppInfo(url='https://test.com'))
|
||
button4 = InlineKeyboardButton(text='ТЕСТ', callback_data='test_message')
|
||
kb = [[button1], [button2], [button3]]
|
||
if is_admin:
|
||
kb.append([button4])
|
||
keyboard = InlineKeyboardMarkup(inline_keyboard=kb)
|
||
return keyboard
|
||
|
||
def gen_ok_keyboard(number):
|
||
kb = [[InlineKeyboardButton(text='Подтвердить ✅', callback_data=f'approve_{number}'), InlineKeyboardButton(text='Изменить 🔄', callback_data=f'edit_{number}')]]
|
||
keyboard = InlineKeyboardMarkup(inline_keyboard=kb)
|
||
return keyboard
|
||
|
||
async def get_main_menu_answer(call: types.CallbackQuery):
|
||
logger.info(f"{call.from_user.id} - @{call.from_user.username} : главное меню через инлайн кнопку")
|
||
await call.message.edit_text(get_main_menu_message(), reply_markup=get_main_keyboard_inline(), parse_mode=ParseMode.MARKDOWN)
|
||
|
||
async def get_main_menu_after_picture(call: types.CallbackQuery):
|
||
logger.info(f"{call.from_user.id} - @{call.from_user.username} : главное меню через инлайн кнопку после картинки")
|
||
await call.message.delete()
|
||
await bot.send_message(call.from_user.id, get_main_menu_message(), reply_markup=get_main_keyboard_inline(), parse_mode=ParseMode.MARKDOWN)
|
||
|
||
async def command_start(message : types.Message):
|
||
ref_code = ''
|
||
if message.text[7:].startswith('user_'):
|
||
ref_code = message.text[12:]
|
||
if not check_register(message.from_user.id):
|
||
|
||
logger.info(f"{message.from_user.id} - @{message.from_user.username} : команда /start и не зарегистрирован")
|
||
await bot.send_message(message.from_user.id, '👋', reply_markup=ReplyKeyboardRemove())
|
||
# await asyncio.sleep(3)
|
||
await bot.send_message(message.from_user.id, '👑 Я - KYC Кликер бот! Зарабатывай баллы кликами, поднимайся в рейтинге и получай бонусы. Развивайся быстрее с нашей специальной системой для новичков!', reply_markup=ReplyKeyboardRemove())
|
||
# await asyncio.sleep(3)
|
||
await bot.send_message(message.from_user.id, '🎁 Используй баллы в аукционе за ценные призы! Победителей много, приглашаем в увлекательную битву кликов!', reply_markup=ReplyKeyboardRemove())
|
||
# await asyncio.sleep(3)
|
||
await bot.send_message(message.from_user.id, '👯 Участвуй в реферальной программе, чтобы получать % с кликов друзей и зарабатывать больше баллов для аукциона. ', reply_markup=ReplyKeyboardRemove())
|
||
# await asyncio.sleep(3)
|
||
await bot.send_message(message.from_user.id, '🍀 Удачи в битве!', reply_markup=ReplyKeyboardRemove())
|
||
# await asyncio.sleep(3)
|
||
else:
|
||
logger.info(f"{message.from_user.id} - @{message.from_user.username} : команда /start")
|
||
|
||
await bot.send_message(message.from_user.id, get_main_menu_message(), reply_markup=get_main_keyboard_inline(ref_code=ref_code), parse_mode=ParseMode.MARKDOWN) |