← Все вопросы
Как сделать команду /start с приветствием в aiogram?
5
Когда нажимаешь на бота кнопку «Запустить», он должен поздороваться и обращаться по имени. Как поймать именно команду /start и вытащить имя пользователя?
1 ответ
10
✓ Принятый ответ — помог автору
Для /start есть готовый фильтр CommandStart, а имя пользователя лежит в message.from_user:
from aiogram.filters import CommandStart
from aiogram.types import Message
@dp.message(CommandStart())
async def start(message: Message):
name = message.from_user.first_name
await message.answer(f"Привет, {name}! Я бот-помощник. Напиши /help, чтобы узнать что я умею.")
message.from_user.first_name — имя из профиля. Есть ещё username (с собачкой) и id (числовой). Имя точно есть у всех, а вот username может быть None, если человек его не задал — это важно помнить.
Ваш ответ
Войдите, чтобы ответить на вопрос.