Discord embed command

135 Views Asked by At

I tried to use the following ping command, but when I trigger it, it gives me the following error:

The code:

const Discord = require('discord.js');

module.exports.run = async (bot, message, args) => {

let waiting = await message.channel.send("Pinging :hourglass:...").catch(console.error);

let embed = new Discord.MessageEmbed()
 .setTitle("Dragonite's & API's Latency", bot.user.avatarURL)
 .setColor("#f900ff")
 .addField("Dragonite :", `${waiting.createdTimestamp - message.createdTimestamp}` + "ms`", true)
 .addField("API :", Math.round(bot.ping) + "ms", true)
 .addFooter("Dragonite | Requested by " + message.author.tag)

waiting.edit(embed).catch(console.error);
}

module.exports.help = {
    name: "ping",
    description: "Calculate Dragonite's & API's Latency.",
    usage: "ping",
    example: "ping"
}

The error:

(node:23760) UnhandledPromiseRejectionWarning: TypeError: (intermediate value).setTitle(...).setColor(...).addField(...).addField(...).addFooter is not a function
1

There are 1 best solutions below

2
On

addFooter is not a method on the message embed object. Here is the API reference: https://discord.js.org/#/docs/main/master/class/MessageEmbed

The method you want might be setFooter: https://discord.js.org/#/docs/main/master/class/MessageEmbed?scrollTo=setFooter