logging: delay joins by a second to be able to get members-search info

This commit is contained in:
Cynthia Foxwell 2025-04-24 10:23:59 -06:00
parent 38e3ace7af
commit 636a52290e
Signed by: Cynosphere
SSH key fingerprint: SHA256:H3SM8ufP/uxqLwKSH7xY89TDnbR9uOHzjLoBr0tlajk

View file

@ -318,10 +318,12 @@ events.add("guildMemberAdd", "logging", async function (guild, member) {
const channel = await getLoggingChannel(guild); const channel = await getLoggingChannel(guild);
if (!channel) return; if (!channel) return;
const timestamp = new Date().toISOString();
const user = member.user; const user = member.user;
const defaultAvatar = getDefaultAvatar(user.id, user.discriminator ?? 0); const defaultAvatar = getDefaultAvatar(user.id, user.discriminator ?? 0);
const avatar = user.avatar ? CDNEndpoints.USER_AVATAR(user.id, user.avatar) : defaultAvatar; const avatar = user.avatar ? CDNEndpoints.USER_AVATAR(user.id, user.avatar) : defaultAvatar;
setTimeout(async () => {
const memberSearch = await hf.bot.requestHandler const memberSearch = await hf.bot.requestHandler
.request("POST", `/guilds/${guild.id}/members-search`, true, { .request("POST", `/guilds/${guild.id}/members-search`, true, {
and_query: {user_id: {or_query: [user.id]}}, and_query: {user_id: {or_query: [user.id]}},
@ -332,7 +334,7 @@ events.add("guildMemberAdd", "logging", async function (guild, member) {
.catch(() => {}); .catch(() => {});
let inviter; let inviter;
if (memberSearch?.inviter_id) inviter = await guild.getMember(memberSearch.inviter_id); if (memberSearch?.inviter_id) inviter = await guild.getRESTMember(memberSearch.inviter_id).catch(() => {});
channel channel
.createMessage({ .createMessage({
@ -341,7 +343,7 @@ events.add("guildMemberAdd", "logging", async function (guild, member) {
color: COLOR_ADDED, color: COLOR_ADDED,
title: "Member Joined", title: "Member Joined",
description: `<@${user.id}> (${formatUsername(user)})`, description: `<@${user.id}> (${formatUsername(user)})`,
timestamp: new Date().toISOString(), timestamp,
thumbnail: { thumbnail: {
url: avatar, url: avatar,
}, },
@ -380,6 +382,7 @@ events.add("guildMemberAdd", "logging", async function (guild, member) {
], ],
}) })
.catch(() => {}); .catch(() => {});
}, 1000);
}); });
events.add("guildMemberRemove", "logging", async function (guild, member) { events.add("guildMemberRemove", "logging", async function (guild, member) {