const users = [ { name: "Alice", points: 0, referralCode: "ALICE123" }, { name: "Bob", points: 0, referralCode: "BOB456" }, { name: "Charlie", points: 0, referralCode: "CHARL789" }, ]; function getUserByReferralCode(referralCode) { return users.find(user => user.referralCode === referralCode); } function updatePoints(userId, points) { const user = users.find(user => user.id === userId); user.points += points; } function handleReferral(message) { const referringUserId = message.from.id; const referringUser = users.find(user => user.id === referringUserId); const referredReferralCode = message.text; const referredUser = getUserByReferralCode(referredReferralCode); if (referredUser && referredUser.id !== referringUserId) { updatePoints(referringUserId, 10); // reward referring user with 10 points updatePoints(referredUser.id, 20); // reward referred user with 20 points bot.sendMessage(message.chat.id, `Congratulations, you have earned 10 points for referring a friend!`); bot.sendMessage(referredUser.id, `Congratulations, you have earned 20 points for being referred by ${referringUser.name}!`); } else { bot.sendMessage(message.chat.id, `Sorry, that referral code is invalid.`); } } bot.onText(/\/referral_code/, message => { const userId = message.from.id; const user = users.find(user => user.id === userId); bot.sendMessage(message.chat.id, `Your referral code is ${user.referralCode}. Share this with your friends to earn points!`); }); bot.on('message', message => { const userId = message.from.id; const user = users.find(user => user.id === userId); if (user) { handleReferral(message); } else { bot.sendMessage(message.chat.id, `Sorry, you need to have a user account to participate in the referral program.`); } });

Comments

Popular Posts