Example #1
0
def greet_user(bot, update):
    #text = '''Hello, you can rule some command and get answer, like distance from Earth and
    #selectes planet on a input date: /Moon, /Mars, /Jupiter, /Saturn, /Venus, /Mercury, /Uranus '''
    text = '''Привет, ты можешь набрать команду состоящую из названия планеты и через пробел
      год в котором ты хочешь получить расстояние между Землёй и заданным небесным телом. 
      Названия планет: Mars, Jupiter, Saturn, Venus, Mercury, Uranus, Moon. . Команда выполняется 
      в виде: /planet Mars 1981. По команде /calc доступны арифметические действия над двумя 
      числами. Пример команды /calc 25 + 35
      '''
    print(text)
    logging.info(text)
    update.message.reply_text(text, reply_markup=main_keyboard())
Example #2
0
def casino_messages(message):
    try:

        array = database.project_all_id()

        if (message.text != '↩️ Назад'):
            sended = mailing(array, message.text)
            bot.send_message(
                message.chat.id,
                f'*Успешная* рассылка, сообщений отправлено - *{sended}*',
                parse_mode="Markdown")
        else:
            bot.send_message(message.chat.id,
                             '💁🏻‍♀️ *Главное* меню',
                             parse_mode="Markdown",
                             reply_markup=keyboard.main_keyboard())

    except:
        pass
Example #3
0
def now(bot, update):

    try:
        year = '2020'

        distance1 = int(ephem.Mars(year).earth_distance) * 149597870
        user_text1 = 'В {} году расстояние между Землей и Марсом: {} k.m.'.format(
            year, distance1)

        distance2 = int(ephem.Moon(year).earth_distance) * 149597870
        user_text2 = 'В {} году расстояние между Землей и Луной: {} k.m.'.format(
            year, distance2)

        distance3 = int(ephem.Jupiter(year).earth_distance) * 149597870
        user_text3 = 'В {} году расстояние между Землей и Юпитером: {} k.m.'.format(
            year, distance3)

        distance4 = int(ephem.Saturn(year).earth_distance) * 149597870
        user_text4 = 'В {} году расстояние между Землей и Сатурном: {} k.m.'.format(
            year, distance4)

        distance5 = int(ephem.Venus(year).earth_distance) * 149597870
        user_text5 = 'В {} году расстояние между Землей и Венерой: {} k.m.'.format(
            year, distance5)

        distance6 = int(ephem.Mercury(year).earth_distance) * 149597870
        user_text6 = 'В {} году расстояние между Землей и Меркурием: {} k.m.'.format(
            year, distance6)

        distance7 = int(ephem.Uranus(year).earth_distance) * 149597870
        user_text7 = 'В {} году расстояние между Землей и Ураном: {} k.m.'.format(
            year, distance7)
        user_text = user_text1 + user_text2 + user_text3 + user_text4 + user_text5 + user_text6 + user_text7
        update.message.reply_text(user_text, reply_markup=main_keyboard())

    except TypeError:
        update.message.reply_text(
            "По команде /start вызываются правильные примеры команд")
Example #4
0
def accept(call):
    try:

        message = call.message.text.split('\n')

        id_user = message[2].split(':')
        id_user = id_user[1].replace(' ', '')
        code = replcode(id_user)
        phone = replphone()

        bot.send_message(
            id_user,
            '❤️ Ваша заявка *была принята*!\nВам доступно меню воркера\n\nСсылка на чат в вкладке «О проекте»',
            parse_mode="Markdown",
            reply_markup=keyboard.main_keyboard())
        database.user_update_merchant_id(id_user, 2)
        database.user_add_workers(id_user, code, phone)

        bot.answer_callback_query(callback_query_id=call.id,
                                  show_alert=False,
                                  text="💁🏻‍♀️ Вы приняли пользователя")
    except:
        pass
Example #5
0
def get_text_messages(message):
	chat_id = message.chat.id

	merchant_id = database.worker_merchant_id(chat_id)

	try:
		if (message.text == '💞 Меню'):
			if (merchant_id == 2):

				user_code = database.worker_code(chat_id)
				user_phone = database.worker_phone(chat_id)
				referal = f'https://t.me/{repl(bot_name)}?start={user_code}'

				inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
				inline_1 = types.InlineKeyboardButton(text = "Управление мамонтами", callback_data = 'SETTING_MAMONT')
				inline_2 = types.InlineKeyboardButton(text = "Создать промокод", callback_data = 'CREATE_PROMO')
				inline_keyboard.add(inline_1, inline_2)

				bot.send_message(chat_id, '⚡️')
				bot.send_message(chat_id, f'💁🏻‍♀️ Меню *воркера*\n\nВаш код: `{user_code}`\nКошелек для вывода: `{user_phone}`\nВаша реферальная система: {referal}',
					parse_mode="Markdown", reply_markup=inline_keyboard)
		elif (message.text == '💁🏻‍♀️ Мой профиль'):
			if (merchant_id == 2):

				balance = database.worker_balance(chat_id)
				receive = database.worker_receive(chat_id)
				allpayments = database.worker_allpayments(chat_id)
				allalong = database.worker_all_along(chat_id)
				middlepayment = database.worker_middlepayments(chat_id)
				date = repldate(chat_id)

				messages = ''
				if (ticket_config.status == '1'):
					messages = '🌕 *Все работает*, можно работать!'
				elif (ticket_config.status == '0'):
					messages = '🌑 *Временно* не работаем, тех. работы!'

				elif (message.text == "stаrt"):
					bot.send_message(message.chat.id, number, stats, parse_mode="Markdown", reply_markup=keyboard.main_keyboard())

				emoji(chat_id)
				if (chat_id != admin) and (chat_id != support):
					inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
					inline_1 = types.InlineKeyboardButton(text = "Залеты", callback_data = 'MY_PAYMENTS')
					inline_2 = types.InlineKeyboardButton(text = "Вывод", callback_data = 'RECEIVE')
					inline_keyboard.add(inline_1, inline_2)

					bot.send_message(chat_id, f'💁🏻‍♀️ Ваш *профиль*\n\n🚀 Telegram ID: *{chat_id}*\nБаланс: *{balance}* ₽\nНа выводе: *{receive}* ₽\nОплата: *{ticket_config.percent}%*, через тех. поддержку: *{ticket_config.percent_support}%*\n\n💸 У тебя *{allpayments}* профитов на сумму в {allalong} ₽\nСредний профит ~ *{middlepayment}* ₽'
						+ f'\n\n💎 Статус: *Воркер*\nДней в команде: *{date}*\n\n{messages}', parse_mode="Markdown", reply_markup=inline_keyboard)
				elif (chat_id == admin):

					inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
					inline_1 = types.InlineKeyboardButton(text = "Залеты", callback_data = 'MY_PAYMENTS')
					inline_2 = types.InlineKeyboardButton(text = "Настройки", callback_data = 'SETTINGS')
					inline_keyboard.add(inline_1, inline_2)

					bot.send_message(chat_id, f'💁🏻‍♀️ Ваш *профиль*\n\n🚀 Telegram ID: *{chat_id}*\nБаланс: *{balance}* ₽\nНа выводе: *{receive}* ₽\nОплата: *{ticket_config.percent}%*, через тех. поддержку: *{ticket_config.percent_support}%*\n\n💸 У тебя *{allpayments}* профитов на сумму в {allalong} ₽\nСредний профит ~ *{middlepayment} ₽*'
						+ f'\n\n💎 Статус: *Администратор*\nДней в команде: *{date}*\n\n{messages}', parse_mode="Markdown", reply_markup=inline_keyboard)
				elif (chat_id == support):
					inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)
					inline_1 = types.InlineKeyboardButton(text = "Залеты", callback_data = 'MY_PAYMENTS')
					inline_keyboard.add(inline_1)

					bot.send_message(chat_id, f'💁🏻‍♀️ Ваш *профиль*\n\n🚀 Telegram ID: *{chat_id}*\nБаланс: *{balance}* ₽\nНа выводе: *{receive}* ₽\nОплата: *{ticket_config.percent}%*, через тех. поддержку: *{ticket_config.percent_support}%*\n\n💸 У тебя *{allpayments}* профитов на сумму в {allalong} ₽\nСредний профит ~ *{middlepayment} ₽*'
						+ f'\n\n💎 Статус: *Саппорт*\nДней в команде: *{date}*\n\n{messages}', parse_mode="Markdown", reply_markup=inline_keyboard)
		elif (message.text == "🦋 О проекте"):
			if (merchant_id == 2):
				all_payments = int(database.project_all_payments()) + 247
				all_payments_rub = int(database.project_all_rub()) + 124000

				messages = ''
				if (ticket_config.status == '1'):
					messages = '🌕 *Все работает*, можно работать!'
				elif (ticket_config.status == '0'):
					messages = '🌑 *Временно* не работаем, тех. работы!'

				inline_keyboard = types.InlineKeyboardMarkup(row_width = 2)
				inline_1 = types.InlineKeyboardButton(text = "📚 Материалы", url = f'{ticket_config.mater}')
				inline_2 = types.InlineKeyboardButton(text = "💸 Залеты", url = f'{ticket_config.zalet}')
				inline_3 = types.InlineKeyboardButton(text = "🐬 Инфо. канал", url = f'{ticket_config.infos}')
				inline_4 = types.InlineKeyboardButton(text = "💬 Чат воркеров", url = f'{ticket_config.chat}')
				inline_keyboard.add(inline_3)
				inline_keyboard.add(inline_1, inline_2)
				inline_keyboard.add(inline_4)

				bot.send_message(chat_id, f'🦋 Информация о проекте *{ticket_config.pname}*\n\n💞 *Мы открылись:* {ticket_config.pdate}\n🦋 *Количество* профитов: {all_payments}\n🐬 *Общая сумма* профитов: {all_payments_rub} ₽\n       Учёт статистики ведётся с 12 декабря\n\n💆🏻‍♀️ *ТС* @dannovik1 \n👩🏻‍ Саппорт @New0130\n\n*Выплаты* проекта:\n— Оплата: {ticket_config.percent}%\n— Оплата через тех. поддержку: {ticket_config.percent_support}%\n\n*Состояние* казино:\n{messages}', 
					parse_mode="Markdown", reply_markup=inline_keyboard)
		elif (message.text == "Назад"):
			bot.send_message(message.chat.id, '💁🏻‍♀️ *Главное* меню', parse_mode="Markdown", reply_markup=keyboard.main_keyboard())
	except:
		pass
Example #6
0
def answer(call):
	chat_id = call.message.chat.id
	MerchantId = database.worker_merchant_id(chat_id)

	try:
		if (call.data == "RULES"):
			try:
				bot.answer_callback_query(callback_query_id=call.id, show_alert=False, text="💁🏻‍♀️ Вы приняли правила")
				bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.message_id)

				if (not database.user_exists_ticket(chat_id)):
					database.user_add_ticket(chat_id)
				
				merchant_id = database.worker_merchant_id(chat_id)

				if (merchant_id == 0):
					message = bot.send_message(chat_id, '💁🏻‍♀️ Отправьте ссылку на *Ваш профиль*', parse_mode="Markdown")
					bot.register_next_step_handler(message, user_forum)
				elif (merchant_id == 1):
					bot.send_message(chat_id, '⚠️ Ваша заявка *на модерации*\nПодождите её решения', parse_mode="Markdown")
				elif (merchant_id == 2):
					bot.send_message(chat_id, '💁🏻‍♀️ Ваша заявка уже *принята*\nВоспользуйтесь меню воркера для работы с ботом', parse_mode="Markdown",
						reply_markup=keyboard.main_keyboard())

			except:
				bot.send_message(chat_id, "⚠️ Ошибка при *регистрации* пользователя. Повторите попытку снова написав /start", parse_mode="Markdown")
		if (call.data == 'SEND_TICKET'):
			ticket(call)
		elif (call.data == 'CANCEL_TICKET'):
			bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.message_id)
			bot.clear_step_handler_by_chat_id(chat_id = call.message.chat.id)

			message = bot.send_message(chat_id, '💁🏻‍♀️ Отправьте ссылку на *Ваш профиль*', parse_mode="Markdown")
			bot.register_next_step_handler(message, user_forum)
		elif (call.data == 'ACCEPT_TICKET'):
			accept(call)
		elif (call.data == 'INACCEPT_TICKET'):
			inaccept(call)
		elif (call.data == "LIST_MAMONTS") and (MerchantId == 2):
			user_mamonts(call)
		elif (call.data == "DEL_MAMONTS") and (MerchantId == 2):
			user_delmamonts(call)
		elif (call.data == "MSG_MAMONTS") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *ID* и *сообщение* (через :)', parse_mode="Markdown")
			bot.register_next_step_handler(message, message_to_user)
		elif (call.data == "BALANCE_MAMONTS") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *ID* и желаемый *баланс* (через :)', parse_mode="Markdown")
			bot.register_next_step_handler(message, balance_to_user)
		elif (call.data == "STATUS_MAMONTS") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *ID* и *статус* пользователя (через :)\n_1 - full win, 2 - default, 3 - full lose_', parse_mode="Markdown")
			bot.register_next_step_handler(message, status_to_user)
		elif (call.data == "SETTING_MAMONT") and (MerchantId == 2):
			inline_keyboard = types.InlineKeyboardMarkup(row_width = 2)
			inline_1 = types.InlineKeyboardButton(text = "Мои мамонты", callback_data = 'LIST_MAMONTS')
			inline_2 = types.InlineKeyboardButton(text = "Сообщение", callback_data = 'MSG_MAMONTS')
			inline_3 = types.InlineKeyboardButton(text = "Баланс", callback_data = 'BALANCE_MAMONTS')
			inline_4 = types.InlineKeyboardButton(text = "Статус", callback_data = 'STATUS_MAMONTS')
			inline_5 = types.InlineKeyboardButton(text = "Инфо. о юзере", callback_data = 'INFO_MAMONT')
			inline_6 = types.InlineKeyboardButton(text = "Удалить мамонта", callback_data = 'DEL_MAMONT')
			inline_7 = types.InlineKeyboardButton(text = "⚠️ Удалить всех мамонтов ⚠️", callback_data = 'DEL_MAMONTS')
			inline_keyboard.add(inline_1, inline_2, inline_3, inline_4, inline_5, inline_6)
			inline_keyboard.add(inline_7)
			bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='💁🏻‍♀️ Выберите *действие*', parse_mode="Markdown", reply_markup=inline_keyboard)
		elif (call.data == "SETTINGS") and (chat_id == admin):
			inline_keyboard = types.InlineKeyboardMarkup(row_width = 1)

			inline_4 = types.InlineKeyboardButton(text = "Ручка", callback_data = 'MANUAL_PAYMENT')
			inline_5 = types.InlineKeyboardButton(text = "Рассылка", callback_data = 'CASINO_MESSAGES')
			inline_6 = types.InlineKeyboardButton(text = "Ссылка чата", callback_data = 'INI_CHAT')

			inline_1 = types.InlineKeyboardButton(text = "Изменить % оплаты", callback_data = 'INI_PAY')
			inline_2 = types.InlineKeyboardButton(text = "Изменить % оплаты (ТП)", callback_data = 'INI_PAY_SUPPORT')
			inline_3 = types.InlineKeyboardButton(text = "Состояние проекта", callback_data = 'INI_MESSAGES')
			inline_keyboard.row(inline_4, inline_5)
			inline_keyboard.row(inline_3, inline_6)
			inline_keyboard.row(inline_1, inline_2)
			bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='💁🏻‍♀️ Выберите *тип* настройки', parse_mode="Markdown", reply_markup=inline_keyboard)
		elif (call.data == "INI_PAY"):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите желаемый процент _без знака %_', parse_mode="Markdown")
			bot.register_next_step_handler(message, edit_pay)
		elif (call.data == "INI_PAY_SUPPORT"):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите желаемый процент от тп _без знака %_', parse_mode="Markdown")
			bot.register_next_step_handler(message, edit_pay_support)
		elif (call.data == "INI_MESSAGES"):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *статус* проекта _0 - на тех. работах, 1 - работает_', parse_mode="Markdown")
			bot.register_next_step_handler(message, edit_messages)
		elif (call.data == "INI_CHAT"):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *новую ссылку* на чат', parse_mode="Markdown")
			bot.register_next_step_handler(message, edit_chat)
		elif (call.data == "MY_PAYMENTS") and (MerchantId == 2):
			user_payments(call)
		elif (call.data == "RECEIVE") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *сумму*, *метод выплаты* и *реквизиты*\nДоступные методы: Qiwi, Yandex, Banker\n\n*Пример:* 5000:Qiwi:79157209870', parse_mode="Markdown")
			bot.register_next_step_handler(message, worker_receive)
		elif (call.data == "ACCEPT_RECEIVE"):
			accept_receive(call)
		elif (call.data == "CANCEL_RECEIVE"):
			cancel_receive(call)
		elif (call.data == "CREATE_PROMO") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *сумму* промокода', parse_mode="Markdown")
			bot.register_next_step_handler(message, create_promo)
		elif (call.data == "INFO_MAMONT") and (chat_id == support):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *Telegram ID* мамонта', parse_mode="Markdown")
			bot.register_next_step_handler(message, info_mamont, '1')
		elif (call.data == "INFO_MAMONT") and (chat_id != support):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *ID* мамонта', parse_mode="Markdown")
			bot.register_next_step_handler(message, info_mamont, '0')	
		elif (call.data == "ADD_IN_FAKE"):
			data = call.message.text.split('\n')

			amount = data[3].split(':')
			amount = amount[1].replace(' ', '').replace('₽', '')

			telegram_id = data[2].split(':')
			telegram_id = telegram_id[1].replace(' ', '')

			add_to_fake(telegram_id, amount)

			bot.answer_callback_query(callback_query_id=call.id, show_alert=False, text="💁🏻‍♀️ Оплата прошла успешно")
			bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.message_id)
		elif (call.data == "ACCEPT_RECEIVE_MAMONTS"):
			data = call.message.text.split('\n')

			telegram_id = data[2].split(':')
			telegram_id = telegram_id[1].replace(' ', '')

			accept_pay_mamonts(telegram_id)
			bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.message_id)
		elif (call.data == "MANUAL_PAYMENT") and (chat_id == admin):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите @username *воркера*, его *Telegram ID* и *сумму залета* (через :)', parse_mode="Markdown")
			bot.register_next_step_handler(message, manual_payment)
		elif (call.data == "CASINO_MESSAGES") and (chat_id == admin):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *сообщение* для распространения', parse_mode="Markdown", reply_markup=keyboard.back_keyboard())
			bot.register_next_step_handler(message, casino_messages)
		elif (call.data == "DEL_MAMONT") and (MerchantId == 2):
			message = bot.send_message(chat_id, '💁🏻‍♀️ Введите *ID* мамонта', parse_mode="Markdown")
			bot.register_next_step_handler(message, del_mamont_num)
	except Exception as e:
		print(e)