Найти в Дзене
TG Bots | IVANOV

Как создать реферальную ссылку в Aiogram 3 чат-бот

Импортируйте необходимые функции: Вам понадобятся функции для создания и декодирования реферальных ссылок. Импортируйте их следующим образом: from aiogram.utils.deep_linking import create_start_link, decode_payload Напишите обработчик, который будет генерировать реферальную ссылку при получении определенной команды (например, /start): @dp.message_handler(commands=["start"]) async def user_registration(message: Message): # Генерация реферальной ссылки link = await create_start_link(bot, str(message.from_user.id), encode=True) await message.answer(f"Ваша пригласительная ссылка: {link}") Создайте обработчик, который будет обрабатывать входящие реферальные ссылки и регистрировать пользователей: @dp.message_handler(commands=["start"]) async def handle_referral(message: Message): payload = message.get_args() # Получаем аргументы из команды refer_id = decode_payload(payload) if payload else None # Логика регистрации пользователя с учетом реферала if refer_id: # Здесь можно добавить логику д
Оглавление

1) Чтобы создать реферальную ссылку в Aiogram 3, выполните следующие шаги

Импортируйте необходимые функции:

Вам понадобятся функции для создания и декодирования реферальных ссылок. Импортируйте их следующим образом:

from aiogram.utils.deep_linking import create_start_link, decode_payload

2) Создайте обработчик для команды:

Напишите обработчик, который будет генерировать реферальную ссылку при получении определенной команды (например, /start):

@dp.message_handler(commands=["start"])
async def user_registration(message: Message):
# Генерация реферальной ссылки
link = await create_start_link(bot, str(message.from_user.id), encode=True)
await message.answer(f"Ваша пригласительная ссылка: {link}")

3) Обработка реферальной ссылки

Создайте обработчик, который будет обрабатывать входящие реферальные ссылки и регистрировать пользователей:

@dp.message_handler(commands=["start"])
async def handle_referral(message: Message):
payload = message.get_args() # Получаем аргументы из команды
refer_id = decode_payload(payload) if payload else None
# Логика регистрации пользователя с учетом реферала
if refer_id:
# Здесь можно добавить логику для обработки реферала, например, обновление базы данных
await message.answer(f"Вы зарегистрированы по реферальной ссылке пользователя с ID: {refer_id}")
else:
await message.answer("Вы зарегистрированы без реферала.")

4) Дополнительная логика:

Вы можете добавить логику для отслеживания количества приглашенных пользователей и других функций по своему усмотрению.

Таким образом, вы создадите простую реферальную систему для вашего Telegram-бота на Aiogram 3

Мой Телеграм канал TGBots