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 Type | Description |
---|---|
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:
JavaScript
TypeScript
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!",
};
},
};
daily.ts
import { CommandObject, CommandType, CooldownTypes } from "wokcommands";
export default {
description: "Ping pong command",
type: CommandType.BOTH,
cooldowns: {
type: CooldownTypes.perUser,
duration: "1 d",
},
callback: () => {
return {
content: "Pong!",
};
},
} as CommandObject;
Last modified 5mo ago