defer reply on unsubscribe command; Possible fix to super delayed response
Some checks are pending
ptero-push / build (push) Waiting to run

This commit is contained in:
Christopher Cookman 2025-05-27 20:34:13 -06:00
parent e2596c4443
commit b3cc4887c2

View file

@ -865,39 +865,40 @@ discord.on("interactionCreate", async (interaction) => {
interaction.reply({ content: "Invalid room", ephemeral: true });
return;
}
interaction.deferReply({ ephemeral: true });
if (interaction.inGuild()) {
// Check if subbed
db.get(`SELECT * FROM channels WHERE channelid = ? AND iemchannel = ?`, [interaction.channel.id, room], (err, row) => {
if (err) {
console.error(err.message);
interaction.reply({ content: "Failed to unsubscribe from room", ephemeral: true });
interaction.editReply({ content: "Failed to unsubscribe from room", ephemeral: true });
}
if (!row) {
return interaction.reply({ content: `Not subscribed to \`${getWFOByRoom(room).location}\``, ephemeral: true });
return interaction.editReply({ content: `Not subscribed to \`${getWFOByRoom(room).location}\``, ephemeral: true });
}
db.run(`DELETE FROM channels WHERE channelid = ? AND iemchannel = ?`, [interaction.channel.id, room], (err) => {
if (err) {
console.error(err.message);
interaction.reply({ content: "Failed to unsubscribe from room", ephemeral: true });
interaction.editReply({ content: "Failed to unsubscribe from room", ephemeral: true });
}
interaction.reply({ content: `Unsubscribed from \`${getWFOByRoom(room).location}\``, ephemeral: true });
interaction.editReply({ content: `Unsubscribed from \`${getWFOByRoom(room).location}\``, ephemeral: true });
});
});
} else {
db.get(`SELECT * FROM userAlerts WHERE userid = ? AND iemchannel = ?`, [interaction.user.id, room], (err, row) => {
if (err) {
console.error(err.message);
interaction.reply({ content: "Failed to unsubscribe from room", ephemeral: true });
interaction.editReply({ content: "Failed to unsubscribe from room", ephemeral: true });
}
if (!row) {
return interaction.reply({ content: `Not subscribed to \`${getWFOByRoom(room).location}\``, ephemeral: true });
return interaction.editReply({ content: `Not subscribed to \`${getWFOByRoom(room).location}\``, ephemeral: true });
}
db.run(`DELETE FROM userAlerts WHERE userid = ? AND iemchannel = ?`, [interaction.user.id, room], (err) => {
if (err) {
console.error(err.message);
interaction.reply({ content: "Failed to unsubscribe from room", ephemeral: true });
interaction.editReply({ content: "Failed to unsubscribe from room", ephemeral: true });
}
interaction.reply({ content: `Unsubscribed from \`${getWFOByRoom(room).location}\``, ephemeral: true });
interaction.editReply({ content: `Unsubscribed from \`${getWFOByRoom(room).location}\``, ephemeral: true });
});
});
}