Invite Tracking

Who invited whom, counted automatically, with a leaderboard and manual adjustments.

Overview#

Iris watches every invite in the server and works out which one a new member came through. Nobody has to claim a join, and nothing has to be set up: as long as Iris can read the invite list, counting starts the moment it joins.

A count is not one number. Iris separates people who joined and stayed from those who left again, and from accounts too new to be genuine, so an invite contest is judged on real members rather than on a total somebody farmed.

How a count is made up#

SettingTypeDefaultWhat it does
RegularCountedAutomaticMembers who joined through the invite and are still in the server.
LeftSubtractedAutomaticMembers who joined through the invite and have since left.
FakeSubtractedAutomaticJoins from accounts too new to count, which is what stops a throwaway account inflating a total.
BonusManual0Invites granted by staff with /invite-manage addbonus, for anything Iris cannot see.
TotalDerivedAutomaticRegular plus bonus, less those who left and those judged fake.

Commands#

Anyone#

CommandWhat it doesRequires
/invites [user]Invite count for you or somebody else, broken down into the five figures above.Anyone

Staff#

CommandWhat it doesRequires
/invite-manage leaderboardThe members who have invited the most people.Anyone
/invite-manage inviter <user>Show who invited a given member.Anyone
/invite-manage list <user>List the members somebody has invited.Anyone
/invite-manage codes [user]Every invite code, with uses and expiry.Anyone
/invite-manage addbonus <user> <amount>Grant bonus invites.Manage Server
/invite-manage removebonus <user> <amount>Take bonus invites away.Manage Server
/invite-manage addinvites <user> <amount>Add to the regular count directly.Manage Server
/invite-manage removeinvites <user> <amount>Subtract from the regular count.Manage Server
/invite-manage reset [user]Reset one member, or the whole server when no member is given.Manage Server

Permissions#

PermissionWhy Iris needs it
Manage ServerReads the invite list. Without it Iris cannot tell which invite a join came through, and every count stays at zero.
View ChannelsReads the channel commands are run in.
Send MessagesReplies at all.
Embed LinksEvery reply is an embed.

What it looks like#

I
Iris APP Today at 8:58 PM
@member
Total

38

Regular

44

Bonus

5

Left

9

Fake

2

An invite count, split into what actually stuck.

Tips and gotchas#

Every count is zero.

Iris is missing Manage Server. That permission is what lets it read the invite list, and nothing can be attributed without it.

A join was not credited to anyone.

It came through a vanity URL, a widget, or an invite created while Iris was offline. Those cannot be matched to an inviter after the fact.

Somebody is inviting alt accounts.

New accounts are counted as fake and do not add to the total. For a harder stop, verification blocks the second account outright.

Can I give a role for reaching a number of invites?

Not automatically. Check /invite-manage leaderboard and hand the role out with /role add.