@fastwalkerrr

Как создать реферальную систему Python aiogram 3?

Вот такой код создающий рефералку:

from aiogram.utils.deep_linking import create_start_link, decode_payload

@dp.message(F.text == "Реферальная система")
async def referral(message: Message):
    link = await create_start_link(bot,str(message.from_user.id), encode=True)

    await message.answer(f"Ваша пригласительная ссылка: {link}")


Как сделать чтобы бот отправлял рефереру сообщение, когда кто-то запустил бота по его реферальной ссылке?
  • Вопрос задан
  • 1904 просмотра
Решения вопроса 1
@twistfire92
Python backend developer
В обработчике команды start в объекте message смотрите что пришло в поле text. Там будет что-то типа
"/start MTIzNDU2Nzg5"
Отбрасываете "/start ", декодируете оставшееся из Base64, получите id пользователя кому отправлять сообщение.

Можно при вызове create_start_link значение параметра encode установить False, тогда id реферала кодироваться не будет и никакого декодирования делать не надо будет. Но я бы так не делал.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы