Update V1.0.0 announcement

This commit is contained in:
Ean Milligan (Bastion) 2023-04-29 06:33:51 -04:00
parent e7568745ca
commit 7aec6989e3
2 changed files with 51 additions and 16 deletions

24
mod.ts
View File

@ -749,9 +749,8 @@ startBot({
const thisLFG = (await getMessage(thisLFGPost.channelId, thisLFGPost.messageId)).embeds[0].fields || [];
sendDirectMessage(thisLFGPost.ownerId, {
embeds: [{
title: `Hello ${(await getUser(thisLFGPost.ownerId)).username}! Your event in ${
lfgMessage.guild?.name || (await getGuild(message.guildId, { counts: false, addToCache: false })).name
} has filled up!`,
title: `Hello ${(await getUser(thisLFGPost.ownerId)).username}! Your event in ${lfgMessage.guild?.name || (await getGuild(message.guildId, { counts: false, addToCache: false })).name
} has filled up!`,
fields: [
thisLFG[0],
{
@ -1060,12 +1059,22 @@ startBot({
for (const ownerId of owners) {
if (args[0] === 'all') {
console.log(`Message sent to ${ownerId}`);
sendDirectMessage(ownerId, constantCmds.announcement)
sendDirectMessage(ownerId, constantCmds.announcement).then(() => sendDirectMessage(ownerId, constantCmds.announcementPart2).catch((e) => {
log(LT.ERROR, `Failed to send message: ${jsonStringifyBig(message)} | ${jsonStringifyBig(e)}`);
})).catch((e) => {
log(LT.ERROR, `Failed to send message: ${jsonStringifyBig(message)} | ${jsonStringifyBig(e)}`);
});
} else if (args[0] === 'dry') {
console.log(`Fake Message sent to ${ownerId}`);
}
}
message.send(constantCmds.announcement);
message.send(constantCmds.announcement).then(() => message.send(constantCmds.announcementPart2).catch((e) => {
log(LT.ERROR, `Failed to send message: ${jsonStringifyBig(message)} | ${jsonStringifyBig(e)}`);
})).catch((e) => {
log(LT.ERROR, `Failed to send message: ${jsonStringifyBig(message)} | ${jsonStringifyBig(e)}`);
});
}
},
interactionCreate: async (interact, member) => {
@ -1173,9 +1182,8 @@ startBot({
const thisLFG = (await getMessage(thisLFGPost.channelId, thisLFGPost.messageId)).embeds[0].fields || [];
sendDirectMessage(thisLFGPost.ownerId, {
embeds: [{
title: `Hello ${(await getUser(thisLFGPost.ownerId)).username}! Your event in ${
message.guild?.name || (await getGuild(message.guildId, { counts: false, addToCache: false })).name
} has filled up!`,
title: `Hello ${(await getUser(thisLFGPost.ownerId)).username}! Your event in ${message.guild?.name || (await getGuild(message.guildId, { counts: false, addToCache: false })).name
} has filled up!`,
fields: [
thisLFG[0],
{

View File

@ -147,34 +147,57 @@ export const constantCmds = {
}],
},
announcement: {
content: 'Hi! You\'re receiving this message as you have me in one of your servers. This is a very important announcement regarding how you and your community uses this bot in your guild. Please read the following details carefully.\n\nThis announcement feature is reserved for important breaking changes only. Group Up will be reaching version 1.0 with this major update and will not have any more breaking changes for a significant amount of time.',
content: `Hi! You\'re receiving this message as you have me in one of your servers. This is a very important announcement regarding how you and your community uses this bot in your guild. Please read the following details carefully.
This announcement feature is reserved for important breaking changes only. Group Up will be reaching version 1.0 with this major update and will not have any more breaking changes for a significant amount of time.`,
embeds: [{
color: 0x313bf9,
title: 'Version 1.0.0 is coming!',
description: 'Group Up is coming up on a major milestone, giving your community an even better and more user friendly experience.',
description: `Group Up is coming up on a major milestone, giving your community an even better and more user friendly experience.
**NOTICE:** All Guild settings will be deleted when V1.0.0 is released.
**NOTICE:** All Guilds are forced to use the \`/\` command prefix via the Discord Slash Command system.`,
fields: [
{
name: 'When is this update coming out?',
value: 'This update will be pushed out ${discordRelativeTimestamp}, on ${discordTimestamp}. Group Up will be brought offline one hour before the update goes out to handle a small migration and deploying the major update.',
value: 'This update will be released <t:1683136800:R>, on <t:1683136800:F>. Group Up will be brought offline one hour before the update releases (<t:1683133200:R>, on <t:1683133200:F>) to handle a small migration and the deployment of the major update.',
inline: true,
},
{
name: 'What is changing?',
value: 'Group Up is moving to a fully Button Interaction and Slash Command based system. This means less commands to memorize and gives Group Up users more friendly methods to interact with, such as Forms, and ephemeral messages.',
value: 'Group Up is moving to a fully Button and Slash Command based system. This means less commands to memorize and gives Group Up users more friendly methods to interact with, such as Forms, and Ephemeral messages.',
inline: true,
},
{
name: 'What do you need to do?',
value: `Once the update is live, there are a couple things you will need to do:
1. The bot will now require the 'Manage Channels' permission. Simply edit the role named 'Group Up' in your server to add this permission. This increase in permission is needed for the initial setup that you will be running next.
1. The bot will now require the \`MANAGE_GUILD\`, \`MANAGE_CHANNELS\`, \`MANAGE_ROLES\`, and \`MANAGE_MESSAGES\` permissions. Simply edit the role named 'Group Up' in your server to add these permissions. The increased permissions are only needed for the initial setup. After the setup is complete, the bot only requires the \`MANAGE_MESSAGES\` permission.
2. Go to or create the channel you want Group Up to use for event scheduling. Group Up will be taking full control of this channel, so please make sure you are OK with that before continuing.
3. Once in the desired channel, run \`/commandName\` and follow on screen prompts. This will discover any pre-existing events, update them to the new design, and reconfigure the channel to work with the new system.
3. Once in the desired channel, run \`/setup\` and follow on screen prompts. This will discover any pre-existing events, update them to the new design, and reconfigure the channel to work with the new system.
Note: If there are any pre-existing events, they will end up above the new instructions message Group Up sends. This is expected and unavoidable.`,
},
],
}],
},
announcementPart2: {
embeds: [{
color: 0x313bf9,
fields: [
{
name: 'If you used the Group Up Manager system before V1.0.0:',
value: `The Group Up Manager System is many times more powerful now. This system grants managers the ability to edit events, and delete events in addition to the prior Join/Leave/Alternate options.
This system now requires a log channel which allows you to audit what your Group Up Managers are doing. Additionally, the owner of events that a Group Up Manager modifies will be notified of any changes.
To enable this system, simply run \`/setup with-manager-role\` and fill in the requested fields.`,
},
{
name: 'What if I don\'t want to update?',
value: 'As hosting costs money and I am running this bot for free, only the new system will be available from the official Group Up Discord bot.\n\nIf you really want to keep the old text based system, you may do so by hosting the bot yourself. This is **not recommended and not supported**, but as this project is open source, you may check out [my GitHub](https://github.com/Burn-E99/GroupUp) for details on how to host it privately.'
value: `As hosting costs money and I am running this bot for free, only the new system (V1.0.0) will be available from the official Group Up Discord bot.
If you *really* want to keep the old text based system, you may do so by hosting the bot yourself. This is **not recommended and not supported**, but as this project is open source, you may check out [my GitHub](https://github.com/Burn-E99/GroupUp) for details on how to host the last text based version (V0.5.8) privately.`
},
{
name: 'Have more questions?',
@ -182,7 +205,11 @@ Note: If there are any pre-existing events, they will end up above the new instr
},
{
name: 'Final Words',
value: 'As I want to avoid these unsolicited DMs in the future, please join [my support server](https://discord.gg/peHASXMZYv). All future announcements will be sent via this server.\n\nThank you for using Group Up, and I hope you enjoy this major update.\n\n~Ean AKA Burn_E99',
value: `As I want to avoid these unexpected/undesirable DMs in the future, please join [my support server](https://discord.gg/peHASXMZYv). All future announcements will be sent via this server.
Thank you for using Group Up, and I hope you enjoy this major update.
~Ean AKA Burn_E99`,
},
],
}],