@ArsenBor66

Как для телеграм бота обработать «реферальную ссылку»?

Я так понимаю, это ссылка формата t.me/botname?start=id...
Так вот, как именно ее нужно обработать? Ведь по сути, человек когда нажимает на ссылку просто попадает на чат с ботом и ему предлогает нажать кнопку "Start". А мне к примеру надо, что бы пригласивший человек получил некое уведомление и т.п.
Не важно на каком языке, думаю пойму. Главное идея.
  • Вопрос задан
  • 8780 просмотров
Решения вопроса 1
Когда человек переходит по ссылке t.me/YourBot?start=user_id и нажимает Start, боту отправляется сообщение /start user_id. Чтобы реферальная ссылка была короче, ID пользователя можно, например, конвертировать из десятичной системы в 36-ичную.
<?php

// Получаем user_id из ID реферала
function parseRefLink($ref_link) {
	$ref_link = strtolower($ref_link);

	if (!preg_match('/^r_([0-9a-z]+)$/', $ref_link)) {
		return false;
	}

	$ref_link = substr($ref_link, 2);
	return intval(base_convert($ref_link, 36, 10));
}

// Получаем ID реферала из user_id
function getRefLink($tg_user_id) {
	return 'r_'.base_convert($tg_user_id, 10, 36);
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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