Cooldowns

You can use command cooldowns to ensure your commands are only ran every so often. Each cooldown type requires a string for it's duration and duration type (seconds, minutes, etc)

Character

Duration

Example

s

Seconds

30 s

m

Minutes

10 m

h

Hours

5 h

d

Days

3 d

There are 4 types of cooldowns:

Cooldown TypeDescription

perUser

Applies to a specific user across all guilds and DMs

perUserPerGuild

Applies to a specific user in a specific guild

perGuild

Applies to all users in a specific guild

global

Applies to all users in all guilds

Example of per-user cooldowns:

daily.js
const { CommandType, CooldownTypes } = require("wokcommands");

module.exports = {
  description: "Ping pong command",

  type: CommandType.BOTH,

  cooldowns: {
    type: CooldownTypes.perUser,
    duration: "1 d",
  },

  callback: () => {
    return {
      content: "Pong!",
    };
  },
};

Last updated