コード例 #1
0
            row_list.append([button_view_archive])

    if len(row_list) > 0:
        keyboard = ReplyKeyboardMarkup()
        for row in row_list:
            keyboard.row(*row)
    return keyboard


button_create_new = KeyboardButton('Создать новое')
button_view_archive = KeyboardButton('Архив')

button_back_to_events = KeyboardButton('Вернуться к списку ивентов')

button_cancel = KeyboardButton('Отмена')
keyboard_cancel = ReplyKeyboardMarkup().row(button_cancel)

# Изменить статус ивента
button_status_decrease = InlineKeyboardButton('-', callback_data='-')
button_status_increase = InlineKeyboardButton('+', callback_data='+')
button_current_status = InlineKeyboardButton('', callback_data='status')
status_buttons_list = [
    button_status_decrease, button_current_status, button_status_increase
]


def status_buttons(current_status: int):
    button_current_status.text = 'Статус: ' + str(current_status)
    return status_buttons_list

コード例 #2
0
from aiogram.types import KeyboardButton, ReplyKeyboardMarkup

get_phone_number = KeyboardButton('Отправить номер', request_contact=True)
get_location = KeyboardButton('Отправить месторасположение',
                              request_location=True)

settings_buttons = ReplyKeyboardMarkup(
    resize_keyboard=True,  # уменьшить размер клавиатуры
    one_time_keyboard=True,  # скрыть после нажатия
    keyboard=[['Показать текущие настройки'],
              ['Изменить максимальную плотность'], ['Изменить объем кольца'],
              ['Отмена']])

grunt_random_button = ReplyKeyboardMarkup(
    resize_keyboard=True,
    keyboard=[['Мне повезёт!'], ['Вернуться в главное меню']])
コード例 #3
0
ファイル: main.py プロジェクト: neoroles/telegram-bot-python
async def welcome(message: types.Message):
    button = KeyboardButton(B_REGISTRER)
    button.request_contact = True
    kb = ReplyKeyboardMarkup(resize_keyboard=True).add(button)
    await bot.send_message(message.chat.id, T_HELLO, reply_markup=kb)
    await bot.send_sticker(message.chat.id, 'CAADBAAD8AIAAlI5kwZeZ9hi6NX9qQI')
コード例 #4
0
from aiogram.types import KeyboardButton, ReplyKeyboardMarkup
from aiogram.utils.emoji import emojize

button_registration = KeyboardButton('{}  Зарегистрироваться'.format(
    emojize(":customs:")))

registration_menu = ReplyKeyboardMarkup(resize_keyboard=True)
registration_menu.clean()
registration_menu.row(button_registration)
コード例 #5
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

main_menu = ReplyKeyboardMarkup(
    keyboard=[
        [
            KeyboardButton(
                text="🧑‍💼 Личный кабинет"
            )
        ],
        [
            KeyboardButton(
                text='🙋 Тех. поддержка'
            )
        ]
    ],
    resize_keyboard=True
)
コード例 #6
0
"""
Different keyboards
"""
from aiogram.types import (
    ReplyKeyboardRemove,
    ReplyKeyboardMarkup,
    InlineKeyboardMarkup,
    InlineKeyboardButton,
    # KeyboardButton,
)
from bot.app.ticket import URGENCY

no_keyboard = ReplyKeyboardRemove()

select_urgent_keyboard = ReplyKeyboardMarkup(resize_keyboard=True,
                                             one_time_keyboard=True)
for value in URGENCY:
    select_urgent_keyboard.insert(URGENCY[value])

select_cancel_create = ReplyKeyboardMarkup(resize_keyboard=True,
                                           one_time_keyboard=True)
select_cancel_create.insert("/Отмена")

select_command = ReplyKeyboardMarkup(resize_keyboard=True,
                                     one_time_keyboard=True)
select_command.insert("/Мои заявки")
select_command.insert("/Создать заявку")


def select_approve_refuse(ticket_id: int) -> InlineKeyboardMarkup:
    """ Keyboard to approve or refuse ticket with ticket_id label """
コード例 #7
0
async def echo_message(message: types.Message):
    date = db.get_bot()
    text = message.text
    podcateg_active = False
    tovar_active = False
    tovar_chosen = False
    if db.get_podcat_by_parent(text, False):
        podcateg_active = True
    if db.get_prod_by_parent(text, False):
        tovar_active = True
    if db.get_prod_advanced(text, False):
        tovar_chosen = True
    if int(date[0]) != 0:
        if True:
            #-------------------------------ГЛАВНОЕ_МЕНЮ-----------------------------#
            state = dp.current_state(chat=message.chat.id,
                                     user=message.from_user.id)
            aastate = await state.get_state()
            if text == texts.back_button:
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                buy_menu = (texts.buy_button)
                pay_bal = (texts.balance_pay_button)
                buttons.add(buy_menu, pay_bal)
                balance = db.get_ebal(message.chat.id)

                reply = texts.menu_text

                b1 = db.get_buttons("1")
                b2 = db.get_buttons("2")

                if b1 != "0":
                    buttons.add(b1)
                if b2 != "0":
                    buttons.add(b2)
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    admin_menu = ("🔥 Админка 🔥")
                    buttons.add(admin_menu)
                await message.answer(reply.format(balance[0]),
                                     reply_markup=buttons)
            #-------------------------------TOVARS_MENU------------------------------#
            elif text == "💰 Управление продажами 💰":
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("🎁 Категории 🎁")
                    podcateg_button = ("💣 Подкатегории 💣")
                    sell_button = ("💰 Товары 💰")
                    admin = ("🔥 Админка 🔥")
                    buttons.add(categ_button).add(podcateg_button).add(
                        sell_button).add(admin)
                    await message.answer("Menu", reply_markup=buttons)
            #--------------------------------TVARI------------------------------------#
            elif text == "💰 Товары 💰":
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("✅ Добавить товар ✅")
                    podcateg_button = ("❌ Удалить товар ❌")
                    podcateg_button1 = ("💣 Пополнить товар 💣")
                    admin = ("💰 Управление продажами 💰")
                    buttons.add(categ_button).add(podcateg_button).add(
                        podcateg_button1).add(admin)
                    await message.answer("Menu", reply_markup=buttons)
            elif text == "💣 Пополнить товар 💣":
                categs = db.get_cat()
                tovarsss = "💰 Товары 💰"
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                await plus_tovar.categ.set()
                buttons.add(tovarsss)
                for cat in categs:
                    buttons.add(cat[0])
                await message.answer("🎁 Категории 🎁", reply_markup=buttons)
            elif text == "✅ Добавить товар ✅":
                categs = db.get_cat()
                tovarsss = "💰 Товары 💰"
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                await add_tovar.categ.set()
                buttons.add(tovarsss)
                for cat in categs:
                    buttons.add(cat[0])
                await message.answer("🎁 Категории 🎁", reply_markup=buttons)
            elif text == "❌ Удалить товар ❌":
                categs = db.get_cat()
                tovarsss = "💰 Товары 💰"
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                await del_tovar.categ.set()
                buttons.add(tovarsss)
                for cat in categs:
                    buttons.add(cat[0])
                await message.answer("🎁 Категории 🎁", reply_markup=buttons)
            #-------------------------------CATEG_MENU--------------------------------#
            elif text == "🎁 Категории 🎁":
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("✅ Добавить категорию ✅")
                    podcateg_button = ("❌ Удалить категорию ❌")
                    admin = ("💰 Управление продажами 💰")
                    buttons.add(categ_button).add(podcateg_button).add(admin)
                    await message.answer("Menu", reply_markup=buttons)
            elif text == "✅ Добавить категорию ✅":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("🎁 Категории 🎁")
                    buttons.add(categ_button)
                    await add_categ.name.set()
                    await message.answer("Отправьте мне название категории.",
                                         reply_markup=buttons)
            elif text == "❌ Удалить категорию ❌":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("🎁 Категории 🎁")
                    buttons.add(categ_button)
                    categs = db.get_cat()
                    for cat in categs:
                        buttons.add(cat[0])
                    back_menu = (texts.back_button)
                    await del_categ.name.set()
                    await message.answer("Отправьте мне название категории.",
                                         reply_markup=buttons)
            #-------------------------------PODCATEG_MENU----------------------------#
            elif text == "💣 Подкатегории 💣":
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("✅ Добавить подкатегорию ✅")
                    podcateg_button = ("❌ Удалить подкатегорию ❌")
                    admin = ("💰 Управление продажами 💰")
                    buttons.add(categ_button).add(podcateg_button).add(admin)
                    await message.answer("Menu", reply_markup=buttons)
            elif text == "✅ Добавить подкатегорию ✅":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("💣 Подкатегории 💣")
                    buttons.add(categ_button)
                    await add_podcateg.categ.set()
                    categs = db.get_cat()
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    for cat in categs:
                        buttons.add(cat[0])
                    back_menu = (texts.back_button)
                    buttons.add(back_menu)
                    await message.answer("В какую категорию ?",
                                         reply_markup=buttons)
            elif text == "❌ Удалить подкатегорию ❌":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    categ_button = ("💣 Подкатегории 💣")
                    buttons.add(categ_button)
                    await del_podcateg.categ.set()
                    categs = db.get_cat()
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    for cat in categs:
                        buttons.add(cat[0])
                    back_menu = (texts.back_button)
                    buttons.add(back_menu)
                    await message.answer("В какой категории??",
                                         reply_markup=buttons)

            #-------------------------------ADMIN_PANEL------------------------------#
            elif text == "🔥 Админка 🔥":
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                await state.finish()
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    #ref_edit = ("💵 Изменить % рефералки 💵")
                    #change_faq = ("ℹ️ Изменить FAQ ℹ️")
                    add_pr = ("📈 Редактирование рекламы 📈")
                    sell_settings = ("💰 Управление продажами 💰")
                    make_pr = ("💈 Сделать рассылку 💈")
                    back_menu = (texts.back_button)
                    buttons.add(add_pr).add(sell_settings).add(make_pr).add(
                        back_menu)
                    info = db.get_bot()

                    await message.answer(texts.admin_panel.format(
                        users_amount=db.get_len_users(),
                        make_money=info[2],
                        day=info[0],
                        live=info[1],
                        sold=info[3],
                        refproc=info[4]),
                                         reply_markup=buttons
                                         )  #{make_money}#{sold}#{refproc}

            #-------------------------------Изменение доли рефералки-----------------#
            elif text == "💵 Изменить % рефералки 💵":

                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    admin = ("🔥 Админка 🔥")
                    buttons.add(admin)
                    await ref_proc.get.set()
                    await message.answer(
                        "Отправьте мне долю реферера (целое число от 0 до 100 включительно.)",
                        reply_markup=buttons)
            #-------------------------------Управление кнопками пиара--------------------------#
            elif text == "📈 Редактирование рекламы 📈":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    b1 = db.get_buttons("1")
                    b2 = db.get_buttons("2")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)

                    if b1 == "0":
                        buttons.add("🔴 Откл 1 🔴")

                    else:
                        buttons.add("🟢 Вкл 1 🟢")
                    if b2 == "0":
                        buttons.add("🔴 Откл 2 🔴")

                    else:
                        buttons.add("🟢 Вкл 2 🟢")

                    admin = ("🔥 Админка 🔥")
                    buttons.add(admin)
                    await message.answer("Управление кнопками рекламы.",
                                         reply_markup=buttons)

            elif text == "🔴 Откл 1 🔴" or text == "🔴 Откл 2 🔴":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    if text == "🔴 Откл 1 🔴":
                        buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                        await add_piar_1.name.set()
                        admin = ("🔥 Админка 🔥")
                        buttons.add(admin)
                        await message.answer("Введите название кнопки.",
                                             reply_markup=buttons)
                    elif text == "🔴 Откл 2 🔴":
                        buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                        await add_piar_2.name.set()
                        admin = ("🔥 Админка 🔥")
                        buttons.add(admin)
                        await message.answer("Введите название кнопки.",
                                             reply_markup=buttons)
            elif text == "🟢 Вкл 1 🟢" or text == "🟢 Вкл 2 🟢":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    if text == "🟢 Вкл 1 🟢":
                        db.change_button("0", "0", 1)
                        b1 = db.get_buttons("1")
                        b2 = db.get_buttons("2")
                        buttons = ReplyKeyboardMarkup(resize_keyboard=True)

                        if b1 == "0":
                            buttons.add("🔴 Откл 1 🔴")

                        else:
                            buttons.add("🟢 Вкл 1 🟢")
                        if b2 == "0":
                            buttons.add("🔴 Откл 2 🔴")

                        else:
                            buttons.add("🟢 Вкл 2 🟢")

                        admin = ("🔥 Админка 🔥")
                        buttons.add(admin)
                        await message.answer("Кнопка была отключена.",
                                             reply_markup=buttons)
                    elif text == "🟢 Вкл 2 🟢":
                        db.change_button("0", "0", 2)
                        b1 = db.get_buttons("1")
                        b2 = db.get_buttons("2")
                        buttons = ReplyKeyboardMarkup(resize_keyboard=True)

                        if b1 == "0":
                            buttons.add("🔴 Откл 1 🔴")

                        else:
                            buttons.add("🟢 Вкл 1 🟢")
                        if b2 == "0":
                            buttons.add("🔴 Откл 2 🔴")

                        else:
                            buttons.add("🟢 Вкл 2 🟢")

                        admin = ("🔥 Админка 🔥")
                        buttons.add(admin)
                        await message.answer("Кнопка была отключена.",
                                             reply_markup=buttons)
            #-------------------------------Работа с товаром--------------------------#

            #-------------------------------РАССЫЛКА_С_ФОТО--------------------------#
            elif text == "💈 Сделать рассылку 💈":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    get_pr_text = ("✉️ Тест рассылки ✉️")
                    give_pr_text = ("📱 Изменить текст рассылки 📱")
                    start_pr = ("🚀 Запуск рассылки 🚀")

                    if Pr_set.photo:
                        add_photo = ("🟢 Фото 🟢")
                    else:
                        add_photo = ("🔴 Фото 🔴")
                    start_pr = ("🚀 Запуск рассылки 🚀")
                    admin = ("🔥 Админка 🔥")
                    buttons.add(get_pr_text).add(give_pr_text).add(
                        add_photo).add(start_pr).add(admin)
                    await message.answer(
                        "Меню создания рассылки \n Отправьте мне фото, чтобы оно отображалось в рассылке. \n🔴 Фото 🔴 - фото в рассылке отключено .\n🟢 Фото 🟢 - фото в рассылке включено.",
                        reply_markup=buttons)
            elif text == "🔴 Фото 🔴" or text == "🟢 Фото 🟢":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    if text == "🔴 Фото 🔴":
                        Pr_set.photo = True
                    else:
                        Pr_set.photo = False
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    get_pr_text = ("✉️ Тест рассылки ✉️")
                    give_pr_text = ("📱 Изменить текст рассылки 📱")
                    start_pr = ("🚀 Запуск рассылки 🚀")

                    if Pr_set.photo:
                        add_photo = ("🟢 Фото 🟢")
                    else:
                        add_photo = ("🔴 Фото 🔴")
                    start_pr = ("🚀 Запуск рассылки 🚀")
                    admin = ("🔥 Админка 🔥")
                    buttons.add(get_pr_text).add(give_pr_text).add(
                        add_photo).add(start_pr).add(admin)
                    await message.answer(
                        "Меню создания рассылки \n Отправьте мне фото, чтобы оно отображалось в рассылке. \n🔴 Фото 🔴 - фото в рассылке отключено .\n🟢 Фото 🟢 - фото в рассылке включено.",
                        reply_markup=buttons)
            elif text == "🚀 Запуск рассылки 🚀":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    ids = db.get_users_id()

                    for id in ids:
                        if Pr_set.photo:
                            try:
                                with open("pr.jpg", "rb") as f:
                                    await bot.send_photo(id[0],
                                                         f,
                                                         caption=Pr_set.text)
                            except:
                                pass
                        else:
                            await bot.send_message(id[0], Pr_set.text)
            elif text == "✉️ Тест рассылки ✉️":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    if Pr_set.photo:
                        with open("pr.jpg", "rb") as f:

                            await bot.send_photo(message.from_user.id,
                                                 f,
                                                 caption=Pr_set.text)
                    else:
                        await bot.send_message(message.from_user.id,
                                               Pr_set.text)
            elif text == "📱 Изменить текст рассылки 📱":
                if str(
                        message.from_user.id
                ) == settings.admin or message.from_user.id in settings.head_admin:
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    admin = ("🔥 Админка 🔥")
                    buttons.add(admin)
                    await pr_make.get_text.set()
                    await message.answer("Отправьте мне текст для рассылки.",
                                         reply_markup=buttons)
            #---------------------------ПОПОЛНЕНИЕ_БАЛАНСА---------------------------#
            elif text == texts.balance_pay_button:
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                btc_pay = (texts.btc_pay_button)
                ticket_pay = (texts.eticket_pay_button)
                back_menu = (texts.back_button)
                buttons.add(btc_pay, ticket_pay).add(back_menu)

                await message.answer(texts.deposit_menu_text,
                                     reply_markup=buttons)
            #---------------------------ГЛАВНЫЕ_КАТЕГОРИИ----------------------------#
            elif aastate != "del_categ:name" and text == texts.buy_button:
                categs = db.get_cat()
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                for cat in categs:
                    buttons.add(cat[0])
                back_menu = (texts.back_button)
                buttons.add(back_menu)

                await message.answer("Главные категории", reply_markup=buttons)
            #------------------------------ПОДКАТЕГОРИИ------------------------------#
            elif podcateg_active and aastate != "del_categ:name" and aastate != "add_podcateg:categ" and aastate != "add_podcateg:name" and aastate != "del_podcateg:categ" and aastate != "add_tovar:categ" and aastate != "del_tovar:categ" and aastate != "plus_tovar:categ":
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                podcats = db.get_podcat_by_parent(text, True)
                for podcat in podcats:
                    buttons.add(podcat[0])
                back_menu = (texts.back_button)
                buttons.add(back_menu)

                await message.answer("Подкатегории", reply_markup=buttons)
            #--------------------------------ТОВАРЫ----------------------------------#
            elif tovar_active and aastate != "del_podcateg:name" and aastate != "add_tovar:podcateg" and aastate != "del_tovar:podcateg" and aastate != "plus_tovar:tt" and aastate != "plus_tovar:podcateg":
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                products = db.get_prod_by_parent(text, True)
                for tov in products:
                    buttons.add(tov[0])
                back_menu = (texts.back_button)
                buttons.add(back_menu)

                await message.answer("Товары", reply_markup=buttons)
            #----------------ТОВАР_ВЫБРАН_ПОКАЗ_ОПИСАНИЯ_И_ПОКУПКА-------------------#
            elif tovar_chosen and aastate != "del_tovar:name" and aastate != "plus_tovar:name" and aastate != "plus_tovar:tt":
                buttons = InlineKeyboardMarkup(resize_keyboard=True)
                product = db.get_prod_advanced(text, True)
                tovar = "buy_" + product[3]
                buy_button = InlineKeyboardButton('Купить!',
                                                  callback_data=tovar)
                buttons.add(buy_button)
                msg_text = "{}\nОсталось товара: {}\nЦена: {}".format(
                    product[0], product[2], product[1])

                await message.answer(msg_text, reply_markup=buttons)
            #---------------------------БИТКОИН_ПЕРЕВОД------------------------------#
            elif text == texts.btc_pay_button:
                await btc_pay_balance.money.set()
                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                back_menu = (texts.back_button)
                buttons.add(back_menu)

                await message.answer(texts.deposit_btc_pay,
                                     reply_markup=buttons)
            #---------------------------ЭЛЕКТРОННЫЙ_ПЕРЕВОД--------------------------#
            elif text == texts.eticket_pay_button:
                await crystal_pay.money.set()

                buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                back_menu = (texts.back_button)
                buttons.add(back_menu)

                await message.answer(texts.deposit_crystal_pay,
                                     reply_markup=buttons)
            #---------------------------STATES---------------------------------------#
            else:
                state = dp.current_state(chat=message.chat.id,
                                         user=message.from_user.id)
                astate = await state.get_state()
                if astate == "btc_pay_balance:money":
                    try:
                        if int(message.text) >= 1:

                            await state.update_data(money=message.text)
                            await btc_pay_balance.next()
                            await message.answer(texts.deposit_btc_check)
                    except:
                        await message.answer("Сумма указана некорректно!")
                elif astate == "btc_pay_balance:check":
                    user_data = await state.get_data()
                    amount = user_data['money']
                    await state.finish()
                    good = InlineKeyboardButton(
                        'Принять',
                        callback_data=f'good_{message.from_user.id}_{amount}')
                    bad = InlineKeyboardButton(
                        'Отклонить',
                        callback_data=f'bad_{message.from_user.id}')
                    inlineb = InlineKeyboardMarkup().add(good, bad)
                    await bot.send_message(
                        db.get_log_chat(),
                        texts.deposit_go_to_log_channel.format(
                            username=message.from_user.username,
                            user_id=message.from_user.id,
                            amount=user_data['money'],
                            check=message.text),
                        reply_markup=inlineb)
                elif astate == "crystal_pay:money":
                    row = get(
                        f"https://api.crystalpay.ru/api.php?s={settings.crystal_token}&n={settings.crystal_pay_name}&o=generate&amount={message.text}"
                    ).text
                    row = json.loads(row)
                    #https://pay.crystalpay.ru/?i=

                    await state.finish()
                    pay = InlineKeyboardButton(
                        'Оплатить',
                        url=f"https://pay.crystalpay.ru/?i={row['id']}")
                    check_payment = InlineKeyboardButton(
                        'Проверить оплату', callback_data=f"check_{row['id']}")
                    inlineb = InlineKeyboardMarkup().add(pay).add(
                        check_payment)
                    await message.answer(texts.deposit_btc_pay,
                                         reply_markup=inlineb)
                elif astate == "pr_make:get_text":
                    await state.finish()
                    Pr_set.text = message.text
                    await message.answer("Текст рассылки был установлен!")
                elif astate == "ref_proc:get":
                    await state.finish()
                    db.change_ref_proc(message.text)
                    await message.answer("Новый процент был установлен.")
                elif astate == "add_piar_1:name":
                    await state.update_data(name=message.text)
                    await add_piar_1.next()
                    await message.answer("Введите текст кнопки.")
                elif astate == "add_piar_1:text":
                    user_data = await state.get_data()
                    db.change_button(user_data['name'], message.text, 1)
                    await message.answer("Кнопка включена!")

                elif astate == "add_piar_2:name":
                    await state.update_data(name=message.text)
                    await add_piar_2.next()
                    await message.answer("Введите текст кнопки.")
                elif astate == "add_piar_2:text":
                    user_data = await state.get_data()
                    db.change_button(user_data['name'], message.text, 2)
                    await message.answer("Кнопка включена!")
                elif astate == "add_categ:name":
                    db.add_cat(message.text)
                    await state.finish()
                    await message.answer("Категория добавлена!")
                elif astate == "del_categ:name":
                    db.del_cat(message.text)
                    await state.finish()
                    categ_button = ("🎁 Категории 🎁")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    await message.answer("Категория удалена !",
                                         reply_markup=buttons)
                elif astate == "add_podcateg:categ":
                    await state.update_data(categ=message.text)
                    categ_button = ("💣 Подкатегории 💣")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    await add_podcateg.next()
                    await message.answer("Отправь название подкатегории.",
                                         reply_markup=buttons)
                elif astate == "add_podcateg:name":
                    user_data = await state.get_data()
                    await state.finish()
                    db.add_podcat(user_data['categ'], message.text)
                    await message.answer("Подкатегория была добавлена!")
                elif astate == "del_podcateg:categ":
                    await state.update_data(
                        categ=db.get_podcat_by_parent(message.text, True))
                    categ_button = ("💣 Подкатегории 💣")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    podcats = db.get_podcat_by_parent(text, True)
                    for podcat in podcats:
                        buttons.add(podcat[0])
                    back_menu = (texts.back_button)
                    buttons.add(back_menu)
                    await del_podcateg.next()
                    await message.answer("Отправь название подкатегории.",
                                         reply_markup=buttons)
                elif astate == "del_podcateg:name":
                    user_data = await state.get_data()
                    await state.finish()
                    db.del_podcat(message.text)
                    await message.answer("Подкатегория была удалена!")
                elif astate == "add_tovar:categ":
                    await add_tovar.next()
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    podcats = db.get_podcat_by_parent(text, True)
                    for podcat in podcats:
                        buttons.add(podcat[0])
                    await message.answer("💣 Подкатегории 💣",
                                         reply_markup=buttons)
                elif astate == "add_tovar:podcateg":
                    await state.update_data(podcateg=message.text)
                    await add_tovar.next()

                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    await message.answer("Отправь мне название",
                                         reply_markup=buttons)
                elif astate == "add_tovar:name":
                    await state.update_data(name=message.text)
                    await message.answer("Сколько он будет стоить?")
                    await add_tovar.next()
                elif astate == "add_tovar:price":
                    await state.update_data(price=message.text)
                    await add_tovar.next()
                    await message.answer("Отправь описание товара")
                elif astate == "add_tovar:desc":  # del_tovar(tovid) get_prodid_by_name(name)
                    user_data = await state.get_data()
                    await state.finish()
                    db.add_prod(user_data['podcateg'], user_data['name'],
                                user_data['price'], message.text)
                    await message.answer("Товар добавлен.")

                elif astate == "del_tovar:categ":
                    await del_tovar.next()
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    podcats = db.get_podcat_by_parent(text, True)
                    for podcat in podcats:
                        buttons.add(podcat[0])
                    await message.answer("💣 Подкатегории 💣",
                                         reply_markup=buttons)
                elif astate == "del_tovar:podcateg":
                    await del_tovar.next()
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    products = db.get_prod_by_parent(text, True)
                    for tov in products:
                        buttons.add(tov[0])
                    await message.answer("Товары", reply_markup=buttons)
                elif astate == "del_tovar:name":
                    await state.update_data(name=message.text)
                    db.del_tovar(db.get_prodid_by_name(message.text))
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    await message.answer("Товар удалён", reply_markup=buttons)
                    await state.finish()

                elif astate == "plus_tovar:categ":
                    await plus_tovar.next()
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    podcats = db.get_podcat_by_parent(text, True)
                    for podcat in podcats:
                        buttons.add(podcat[0])
                    await message.answer("💣 Подкатегории 💣",
                                         reply_markup=buttons)
                elif astate == "plus_tovar:podcateg":
                    await plus_tovar.next()
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)

                    products = db.get_prod_by_parent(text, True)
                    for tov in products:
                        buttons.add(tov[0])
                    await message.answer("Товары", reply_markup=buttons)
                elif astate == "plus_tovar:tt":
                    await state.update_data(name=message.text)
                    await plus_tovar.next()
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    await message.answer(
                        "Отправьте мне товар, каждые данные должны начинаться с новой строки",
                        reply_markup=buttons)
                elif astate == "plus_tovar:name":
                    user_data = await state.get_data()
                    tove = text.split("\n")
                    for x in tove:
                        if x.replace(" ", ""):
                            db.add_prod_real(
                                db.get_prodid_by_name(user_data['name']), x)
                    categ_button = ("💰 Товары 💰")
                    buttons = ReplyKeyboardMarkup(resize_keyboard=True)
                    buttons.add(categ_button)
                    await message.answer("Товар пополнен",
                                         reply_markup=buttons)
                    await state.finish()

                else:  # add_prod_real(prodid,datayoba):
                    button_text = db.get_button_name(message.text)
                    if button_text != "0":
                        await message.answer(button_text[0])
                    #Head Admin's comm_ass
                    if int(message.from_user.id) in settings.head_admin:
                        if text.startswith("/addday"):
                            day = text.replace("/addday", "").replace(" ", "")
                            db.plus_day(day)
                            await message.answer(
                                f"Срок был продлён на {day} дней. ")
                        elif text == "/addlog":
                            db.add_log(message.chat.id)

                        elif text.startswith("/addcat"):  # /addcat catname
                            catname = text.replace("/addcat",
                                                   "").replace(" ", "")
                            try:
                                db.add_cat(catname)
                            except:
                                pass
                            await message.answer(
                                f"Добавлена новая категория: {catname}")
                        elif text.startswith(
                                "/addpodcat"):  # /addpodcat catname podcatname
                            podcatname = text.replace("/addpodcat ", "")
                            hopeless = podcatname.split()
                            try:
                                db.add_podcat(hopeless[0], hopeless[1])
                            except:
                                pass
                            await message.answer(
                                "Добавлена новая подкатегория {} , к категории {}"
                                .format(hopeless[1], hopeless[0]))
                        elif text.startswith(
                                "/addprod"
                        ):  # /addprod podcatname tovarname price description
                            podcatname = text.replace("/addprod ", "")
                            hope = podcatname.split()
                            desc = hope[4].replace("_", " ")
                            try:
                                sos = db.add_prod(hope[0], hope[1], hope[2],
                                                  desc)
                            except:
                                sos = "ERROR - TOVAR NOT DOBAVLEN"
                            await message.answer(
                                "Добавлен товар {} , к подкатегории {}, ценой {} рублей и идентефикатором {}"
                                .format(hope[2], hope[1], hope[3], sos))
                        elif text.startswith(
                                "/adddataprod"):  # /adddataprod id data
                            product = text.replace("/adddataprod ", "")
                            product = product.split()
                            error = False
                            try:
                                db.add_prod_real(product[0], product[1])
                            except:
                                error = True
                            if error:
                                await message.answer(
                                    "ERROR - Неверно введен id товара.")
                            else:
                                await message.answer(
                                    f"Добавлен новый товар к id {product[0]}")

    else:
        await message.answer("Срок аренды бота истёк.")
        if int(message.from_user.id) in settings.head_admin:
            if text.startswith("/addday"):
                day = text.replace("/addday", "").replace(" ", "")
                db.plus_day(day)
                await message.answer(f"Срок был продлён на {day} дней. ")
コード例 #8
0
import emoji
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

start_mark = ReplyKeyboardMarkup(
    keyboard=[
        [
            KeyboardButton(text=emoji.emojize(':black_circle:') + ' Начать ' + emoji.emojize(':red_circle:')),
        ]
    ],
    resize_keyboard=True
)
コード例 #9
0
ファイル: gender.py プロジェクト: btdlkot/QuestionnaireBot
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

gender_keyboard = ReplyKeyboardMarkup(
    keyboard=[
        [
            KeyboardButton(text="Жінка"),
            KeyboardButton(text="Чоловік")
        ],
    ],
    resize_keyboard=True
)
コード例 #10
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

menu = ReplyKeyboardMarkup(
    keyboard=[[
        KeyboardButton(text='Инструкции кассира'),
        KeyboardButton(text='Ошибки ККТ'),
    ], [KeyboardButton(text='FAQ Часто задаваемые вопросы')],
              [KeyboardButton(text='Заказать звонок')]],
    resize_keyboard=True,
)

cancel = ReplyKeyboardMarkup(keyboard=[[KeyboardButton(text='⬅️ Отмена')]],
                             resize_keyboard=True)
コード例 #11
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton
from models import Stock, Currency

stocks_dict = {'Moscow Exchange': 'ME',
               'NASDAQ': 'NSDQ'}
curr_dict = {'Рубль': 'RUB',
             'Доллар': 'USD',
             'Евро': 'EUR'}

stocks = [Stock(name, sym) for name, sym in stocks_dict.items()]
currencies = [Currency(curr, sym) for curr, sym in curr_dict.items()]
cancel_button = KeyboardButton('Cancel')

stock_kb = ReplyKeyboardMarkup([[stock.kb for stock in stocks], [cancel_button]], resize_keyboard=True)
currency_kb = ReplyKeyboardMarkup([[curr.kb for curr in currencies]], resize_keyboard=True)
paper_kb = ReplyKeyboardMarkup([['Add shares', 'Sell shares'], ['Sell all', 'Delete position']],
                               resize_keyboard=True)
cancel_kb = ReplyKeyboardMarkup([[cancel_button]], resize_keyboard=True)

コード例 #12
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

keyboard = ReplyKeyboardMarkup(
    keyboard=[[KeyboardButton(text="Local", request_location=True)]],
    resize_keyboard=True,
    one_time_keyboard=True)
コード例 #13
0
ファイル: main.py プロジェクト: kudoff/LesyaDiary
                InlineKeyboardButton('Физика 🤷🏻‍♀️', callback_data='subject_Физика'),
                InlineKeyboardButton('Информатика 💻', callback_data='subject_Информатика'),
                InlineKeyboardButton('Обществознание ⚖', callback_data='subject_Обществознание'),
                InlineKeyboardButton('История ⚔', callback_data='subject_История'),
                InlineKeyboardButton('Биология 🌿', callback_data='subject_Биология'),
                InlineKeyboardButton('Химия 💥', callback_data='subject_Химия'),
                InlineKeyboardButton('Иностранный язык ㊙', callback_data='subject_Иностранный язык'),
                InlineKeyboardButton('Родной язык 👅', callback_data='subject_Родной язык'),
                InlineKeyboardButton('Родная литература 📚', callback_data='subject_Родная литература'),
                InlineKeyboardButton('Физкультура 🏋🏻‍♀️', callback_data='subject_Физкультура'),
                InlineKeyboardButton('География 🗺', callback_data='subject_География'))
subjects_kb.add(InlineKeyboardButton('Удалить последний добавленный предмет 🗑', callback_data='subject_del'))
subjects_kb.add(InlineKeyboardButton('Добавить предмет 🆕', callback_data='subject_add'))
subjects_kb.add(InlineKeyboardButton('Больше уроков в этот день нет 🆗', callback_data='subject_end'))

main_kb = ReplyKeyboardMarkup(resize_keyboard=True).add(KeyboardButton('Домашнее задание на завтра ➡'))
main_kb.add(KeyboardButton('Домашнее задание на неделю 📅'))
main_kb.add(KeyboardButton('Расписание 📃'))

main_kb_adm = ReplyKeyboardMarkup(resize_keyboard=True).add(KeyboardButton('Изменить расписание 🔧'))
main_kb_adm.add(KeyboardButton('Домашнее задание на завтра ➡'))
main_kb_adm.add(KeyboardButton('Домашнее задание на неделю 📅'))
main_kb_adm.add(KeyboardButton('Расписание 📃'))

main_kb_sat = ReplyKeyboardMarkup(resize_keyboard=True).add(KeyboardButton('Домашнее задание на послезавтра ➡'))
main_kb_sat.add(KeyboardButton('Домашнее задание на неделю 📅'))
main_kb_sat.add(KeyboardButton('Расписание 📃'))

main_kb_adm_sat = ReplyKeyboardMarkup(resize_keyboard=True).add(KeyboardButton('Изменить расписание 🔧'))
main_kb_adm_sat.add(KeyboardButton('Домашнее задание на послезавтра ➡'))
main_kb_adm_sat.add(KeyboardButton('Домашнее задание на неделю 📅'))
コード例 #14
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

broadcast = ReplyKeyboardMarkup(resize_keyboard=True,
                                keyboard=[[
                                    KeyboardButton(text="✉️ Отправить"),
                                    KeyboardButton(text="🔀 Другой пост")
                                ], [KeyboardButton(text="🏠 Вернуться в меню")]
                                          ])
コード例 #15
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

StartButton = ReplyKeyboardMarkup(keyboard=
[
    [
        KeyboardButton(text="Начать")
    ]
],
    resize_keyboard=True,
    one_time_keyboard=True
)
コード例 #16
0
ファイル: bot.py プロジェクト: Valaid/DLS_tg_bot
bot = Bot(token=TOKEN)
dp = Dispatcher(bot)

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
cnn = models.vgg19(pretrained=True).features.to(device).eval()
cnn_normalization_mean = torch.tensor([0.485, 0.456, 0.406]).to(device)
cnn_normalization_std = torch.tensor([0.229, 0.224, 0.225]).to(device)

bot = Bot(token=TOKEN)
dp = Dispatcher(bot, storage=MemoryStorage())
image1 = False
image2 = False
bio = BytesIO()
bio.name = 'image.jpeg'
button_hi = KeyboardButton('Давай!')
greet_kb = ReplyKeyboardMarkup(resize_keyboard=True,
                               one_time_keyboard=True).add(button_hi)


@dp.message_handler(commands=['start', 'reset'], state='*')
async def process_start_command(message: types.Message):
    # set_state(message.from_user.id, str(States.S_START.value))
    await States.S_START.set()
    await message.reply(
        "Привет!\nЯ умею переносить стиль на фотографии, давай поиграем!",
        reply_markup=greet_kb)


@dp.message_handler(text="Давай!", state=States.S_START)
async def process_start_style_button_command(message: types.Message,
                                             state: FSMContext):
    # set_state(message.from_user.id, str(States.S_START.value))
コード例 #17
0
ファイル: FoodOrder3.py プロジェクト: maklabas/GuessNum
def add_key(avaliable_menu):
    keyboard = ReplyKeyboardMarkup(resize_keyboard=True,
                                   one_time_keyboard=True)
    for name in avaliable_menu:
        keyboard.add(name)
    return keyboard
コード例 #18
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

panel_admin = ReplyKeyboardMarkup(keyboard=[
    [
        KeyboardButton(text='Статистика'),
        KeyboardButton(text='Назад'),
    ],
],
                                  resize_keyboard=True)
コード例 #19
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

from data import constants

lang = ReplyKeyboardMarkup(keyboard=[
    [KeyboardButton(text=constants.Uz),
     KeyboardButton(text=constants.Ru)],
],
                           resize_keyboard=True)

share_number_uz = ReplyKeyboardMarkup(keyboard=[
    [
        KeyboardButton(text="Telefon raqamni ulashish", request_contact=True),
    ],
],
                                      resize_keyboard=True)

share_number_ru = ReplyKeyboardMarkup(keyboard=[
    [
        KeyboardButton(text="Поделиться контактом", request_contact=True),
    ],
],
                                      resize_keyboard=True)

regions_uz = ReplyKeyboardMarkup(keyboard=[
    [KeyboardButton(text="Toshkent"),
     KeyboardButton(text="Andijon viloyati")],
    [
        KeyboardButton(text="Namangan viloyati"),
        KeyboardButton(text="Farg\'ona viloyati")
    ],
コード例 #20
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton


Standard_section = ['О нас', 'Преподаватели', 'Цены', 'Расписание', '/start']

admin_markup = ReplyKeyboardMarkup(resize_keyboard=True)

for section in Standard_section:
    admin_markup.add(section)

admin_markup.add(
    KeyboardButton('Часто задаваемые вопросы')
).add(
    KeyboardButton('Статистика')
).add(
    KeyboardButton('Уведомления')
).add(
    KeyboardButton('Выйти из админки')
)

コード例 #21
0
ファイル: menu.py プロジェクト: odremaer/telegram-bot
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton


menu = ReplyKeyboardMarkup(
    keyboard=[
        [
            KeyboardButton(text='BTC'), KeyboardButton(text='ETH')
        ],
        [
         KeyboardButton(text='APL'), KeyboardButton(text='PAT')
        ]
    ],
    resize_keyboard=True
)
コード例 #22
0
from aiogram.types import ReplyKeyboardRemove, \
    ReplyKeyboardMarkup, KeyboardButton, \
    InlineKeyboardMarkup, InlineKeyboardButton

from lsg_parser import lsg

button_hi = KeyboardButton('Привет! 👋')

greet_kb = ReplyKeyboardMarkup()
greet_kb.add(button_hi)

greet_kb1 = ReplyKeyboardMarkup(resize_keyboard=True).add(button_hi)

greet_kb2 = ReplyKeyboardMarkup(
    resize_keyboard=True, one_time_keyboard=True
).add(button_hi)

button1 = KeyboardButton('1️⃣')
button2 = KeyboardButton('2️⃣')
button3 = KeyboardButton('3️⃣')

markup3 = ReplyKeyboardMarkup().add(
    button1).add(button2).add(button3)

markup4 = ReplyKeyboardMarkup().row(
    button1, button2, button3
)

markup5 = ReplyKeyboardMarkup().row(
    button1, button2, button3
).add(KeyboardButton('Средний ряд'))
コード例 #23
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

button_plus = KeyboardButton('1️⃣')

markup = ReplyKeyboardMarkup().row(button_plus)
コード例 #24
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

buttons = [{
    'status': 'Статус',
    'add': 'Новая',
    'delete': 'Удалить',
    'start_stop': 'Старт\\Стоп'
}, {
    'complete': 'Выполнить'
}]
menu_button = ReplyKeyboardMarkup([list(x.values()) for x in buttons],
                                  resize_keyboard=True)
cancel = ReplyKeyboardMarkup([['Отмена']],
                             resize_keyboard=True,
                             one_time_keyboard=True)
コード例 #25
0
def create_contact_request():
  return ReplyKeyboardMarkup(resize_keyboard = True).add(
    create_key('Отправить свой контакт ☎️', True)
  )
コード例 #26
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

panel_choose_role = ReplyKeyboardMarkup(keyboard=[[
    KeyboardButton(text='Начальник'),
    KeyboardButton(text='Подчиненный'),
], [
    KeyboardButton(text='Назад'),
]],
                                        resize_keyboard=True)
コード例 #27
0
ファイル: main.py プロジェクト: neoroles/telegram-bot-python
async def main_logic(message: types.Message):

    t0 = time.time()
    if message.text == 'clean':
        with open('data2.json', 'rb') as f:
            await bot.edit_message_media(InputMediaDocument(f), admin_id, 4)
    # with open('data.json', 'rb') as f:
    #     print(f)
    #     await bot.send_document(message.chat.id, f)
    print(message.message_id)
    data = await get_data()
    # print(data)
    print(len(data['users']))
    metka2 = False
    for user in data['users']:
        if user['chatid'] == message.chat.id:
            time_user = []
            try:
                for stroka in message.text.split(':'):
                    time_user.append(int(re.search(r'\d+', stroka).group()))

            except Exception as ex:
                # print(ex)
                pass

            print(time_user)
            if len(time_user) == 1:
                if time_user[0] > 0 and time_user[0] < 120:

                    new_time = datetime.datetime.now() + datetime.timedelta(
                        minutes=time_user[0])

                    metka_time = False
                    for time_us in user['calltime']:
                        if (new_time.time().hour +
                                3) == time_us[0] and new_time.time(
                                ).minute == time_us[1]:
                            await bot.send_message(
                                message.chat.id,
                                'На данное время у Вас уже записан звонок')
                            metka_time = True
                            break
                    if metka_time == False:
                        user['calltime'].append(
                            [new_time.time().hour + 3,
                             new_time.time().minute])
                        await save_data(data)
                        await bot.send_message(
                            message.chat.id,
                            'Вы добавили звонок на {}:{}'.format(
                                str(new_time.time().hour + 3),
                                str(new_time.time().minute)))
                else:
                    await bot.send_message(message.chat.id,
                                           'Укажите время от 1 до 120 минут')
            if len(time_user) == 2:
                if time_user[0] >= 0 and time_user[0] <= 24 and time_user[
                        1] >= 0 and time_user[1] <= 60:

                    metka_time = False
                    for time_us in user['calltime']:
                        if time_user[0] == time_us[0] and time_user[
                                1] == time_us[1]:
                            await bot.send_message(
                                message.chat.id,
                                'На данное время уже запланирован звонок')
                            metka_time = True
                            break
                    if metka_time == False:
                        user['calltime'].append([time_user[0], time_user[1]])
                        await save_data(data)
                        await bot.send_message(
                            message.chat.id,
                            'Вы добавили звонок на {}:{}'.format(
                                str(time_user[0]), str(time_user[1])))
                else:
                    await bot.send_message(
                        message.chat.id,
                        'Вы указали неправильное время. Попробуйте занова.')

            if message.text == B_CLEAN:
                user['calltime'].clear()
                await save_data(data)
                await bot.send_message(message.chat.id,
                                       'Все звонки удачно сброшены.')

            if message.text == B_CALL_NOW:
                client = Client(account_sid, auth_token)
                client.calls.create(url='https://ex.ru',
                                    to=user['phones'],
                                    from_='+12027967603')

            if message.text == B_LIST_CALLS:
                if len(user['calltime']) == 0:
                    await bot.send_message(
                        message.chat.id, 'У Вас нет запланированных звонков')
                else:
                    str_call_list = 'Запланированные звонки:\n'
                    for time_call in user['calltime']:
                        str_call_list += str(time_call[0]) + ':' + str(
                            time_call[1]) + '\n'
                    await bot.send_message(message.chat.id, str_call_list)
            if message.text == B_INFO:
                await bot.send_message(message.chat.id, 'Инфо тут')

            metka2 = True
            break
    if metka2 == False:
        button = KeyboardButton(B_REGISTRER)
        button.request_contact = True
        kb = ReplyKeyboardMarkup(resize_keyboard=True).add(button)
        await bot.send_message(
            message.chat.id,
            'Вы не зарегистрированы, нажмите на кнопку "Регистрация"',
            reply_markup=kb)

    if message.text == 'add':
        for number in range(10000):
            data['users'].append({
                'chatid': number,
                'phones': 8917,
                'state': 0,
                'calltime': []
            })

        with open('data3.json', 'w') as json_file:
            json.dump(data, json_file)
        with open('data3.json', 'rb') as f:
            await bot.edit_message_media(InputMediaDocument(f), admin_id, 4)

    t1 = time.time()
    print('end: ' + str(t1 - t0))
コード例 #28
0
from aiogram.types import ReplyKeyboardMarkup, KeyboardButton

director_panel = ReplyKeyboardMarkup(
    keyboard=[
        [
            KeyboardButton(text='Создать класс'),
            KeyboardButton(text='Добавить учителя')
        ],
        [
            KeyboardButton(text='Классы'),
        ]
    ],
    resize_keyboard=True
)
コード例 #29
0
ファイル: keyboards.py プロジェクト: YarMolenko13/weather-bot
from aiogram.types import ReplyKeyboardRemove, \
    ReplyKeyboardMarkup, KeyboardButton, \
    InlineKeyboardMarkup, InlineKeyboardButton

# стартовая кнопка
btn_start = KeyboardButton('Начать')
kb_start = ReplyKeyboardMarkup(resize_keyboard=True,
                               one_time_keyboard=True).add(btn_start)

# кнопки со входами в функции бота
btn_weather_now = KeyboardButton('Узнать погоду')
btn_sub_on_notion_menu = KeyboardButton('Настройка уведомлений')
kb_main = ReplyKeyboardMarkup(resize_keyboard=True).row(
    btn_weather_now, btn_sub_on_notion_menu)

# кнопки для работы с уведомлениями
btn_sub_yes = InlineKeyboardButton('Включить ✅', callback_data='sub_yes')
btn_sub_no = InlineKeyboardButton('Выключить ❌', callback_data='sub_no')
kb_sub_yes_or_no = InlineKeyboardMarkup(row_width=2).row(
    btn_sub_yes, btn_sub_no)

# инлайн клавиатура городов
btn_city_1 = KeyboardButton('Москва')
btn_city_2 = KeyboardButton('Санкт-Петербург')
btn_city_3 = KeyboardButton('Калининград')
btn_city_4 = KeyboardButton('Нижний Новгород')
btn_city_exite = KeyboardButton('Выйти')

kb_of_cities = ReplyKeyboardMarkup(resize_keyboard=True)\
    .row(btn_city_1, btn_city_2).row(btn_city_3, btn_city_4).add(btn_city_exite)
コード例 #30
0
from aiogram.types import ReplyKeyboardRemove, \
    ReplyKeyboardMarkup, KeyboardButton, \
    InlineKeyboardMarkup, InlineKeyboardButton

print_button = KeyboardButton('/print')
copy_button = KeyboardButton('/copy')
scan_button = KeyboardButton('/scan')
greet_kb = ReplyKeyboardMarkup()
greet_kb.add(print_button)
greet_kb.add(copy_button)
greet_kb.add(scan_button)