Prepare to bot creation #2

This commit is contained in:
Aleksei Krugliak 2022-04-02 00:23:02 +04:00
parent 017c278b44
commit 1ff4f8098c
9 changed files with 55 additions and 25 deletions

View File

@ -7,4 +7,3 @@ env.read_env()
BOT_TOKEN = env.str("BOT_TOKEN") # Забираем значение типа str BOT_TOKEN = env.str("BOT_TOKEN") # Забираем значение типа str
ADMINS = env.list("ADMINS") # Тут у нас будет список из админов ADMINS = env.list("ADMINS") # Тут у нас будет список из админов
IP = env.str("ip") # Тоже str, но для айпи адреса хоста IP = env.str("ip") # Тоже str, но для айпи адреса хоста

View File

@ -1,3 +1,5 @@
from . import help from . import help
from . import start from . import start
from . import echo from . import echo
from . import add
from . import settings

9
handlers/users/add.py Normal file
View File

@ -0,0 +1,9 @@
from aiogram import types
from aiogram.dispatcher.filters.builtin import Command
from loader import dp
@dp.message_handler(commands="add")
async def bot_add(message: types.Message):
await message.answer(f"This is ADD command, {message.from_user.username}!")

View File

View File

@ -1,21 +1,21 @@
from aiogram import types from aiogram import types
from aiogram.dispatcher import FSMContext from aiogram.dispatcher import FSMContext
from loader import dp # from loader import dp
#
#
# Эхо хендлер, куда летят текстовые сообщения без указанного состояния # # Эхо хендлер, куда летят текстовые сообщения без указанного состояния
@dp.message_handler(state=None) # @dp.message_handler(state=None)
async def bot_echo(message: types.Message): # async def bot_echo(message: types.Message):
await message.answer(f"Эхо без состояния." # await message.answer(f"Эхо без состояния."
f"Сообщение:\n" # f"Сообщение:\n"
f"{message.text}") # f"{message.text}")
#
#
# Эхо хендлер, куда летят ВСЕ сообщения с указанным состоянием # # Эхо хендлер, куда летят ВСЕ сообщения с указанным состоянием
@dp.message_handler(state="*", content_types=types.ContentTypes.ANY) # @dp.message_handler(state="*", content_types=types.ContentTypes.ANY)
async def bot_echo_all(message: types.Message, state: FSMContext): # async def bot_echo_all(message: types.Message, state: FSMContext):
state = await state.get_state() # state = await state.get_state()
await message.answer(f"Эхо в состоянии <code>{state}</code>.\n" # await message.answer(f"Эхо в состоянии <code>{state}</code>.\n"
f"\nСодержание сообщения:\n" # f"\nСодержание сообщения:\n"
f"<code>{message}</code>") # f"<code>{message}</code>")

View File

@ -6,8 +6,13 @@ from loader import dp
@dp.message_handler(CommandHelp()) @dp.message_handler(CommandHelp())
async def bot_help(message: types.Message): async def bot_help(message: types.Message):
text = ("Список команд: ", text = ("Available commands: ",
"/start - Начать диалог", "/start - Launch bot.",
"/help - Получить справку") "/help - Commands list, little help.",
"/add - Add expense.",
"/edit - Edit expense.",
"/list - See my expenses.",
"/settings - Configure bot."
)
await message.answer("\n".join(text)) await message.answer("\n".join(text))

View File

@ -0,0 +1,9 @@
from aiogram import types
from aiogram.dispatcher.filters.builtin import CommandSettings
from loader import dp
@dp.message_handler(CommandSettings())
async def bot_settings(message: types.Message):
await message.answer(f"Settings being here...")

View File

@ -6,4 +6,4 @@ from loader import dp
@dp.message_handler(CommandStart()) @dp.message_handler(CommandStart())
async def bot_start(message: types.Message): async def bot_start(message: types.Message):
await message.answer(f"Привет, {message.from_user.full_name}!") await message.answer(f"Hello, {message.from_user.username}!")

View File

@ -4,7 +4,13 @@ from aiogram import types
async def set_default_commands(dp): async def set_default_commands(dp):
await dp.bot.set_my_commands( await dp.bot.set_my_commands(
[ [
types.BotCommand("start", "Start bot."), types.BotCommand("start", "Launch bot."),
types.BotCommand("help", "Help."), types.BotCommand("help", "Commands list, little help."),
types.BotCommand("add", "Add expense."),
types.BotCommand("edit", "Edit expense."),
types.BotCommand("list", "See my expenses."),
types.BotCommand("settings", "Configure bot."),
# types.BotCommand("settings2", "Configure bot."),
# types.BotCommand("settings3", "Configure bot."),
] ]
) )