Получение дополнительной информации из событий (discord .js)

Доброго времени суток 0/

Имеется Discord Бот и пара ивентов, при срабатывании которых сообщается об этом в спец.канале. Удаление/обновление сообщения, удаление/обновление канала и так далее. Я смог получить рядовую информацию (кто удалил канал, id канала и так далее), но я не могу понять, как мне получить, скажем, информацию, если в канале изменены правила для ролей, если добавлена/удалена роль. Точно так же не могу получить информацию, если изменена иерархия ролей и т.д. Я только вникаю в Js-суть, но этого понять не могу. С помощью Google нашёл пару статей, из которых избрал для себя кое-чего, и сейчас в поле "изменено" он выдаёт мне "[object, object]".

Сам код channelUpdate.js:

const { RichEmbed } = require("discord.js");
const { purple_light } = require("../../colours.json")

module.exports = (bot, oldChannel, newChannel) => {

    const logChannel = oldChannel.guild.channels.find(c => c.id === "687260937744416798"); // channel-log-id

    if (oldChannel === newChannel || !logChannel) return;
    oldChannel.guild.fetchAuditLogs({ type: 13, limit: 1 })
        .then(audit => {
            let user = audit.entries.first().executor;
            let opt = audit.entries.first().extra;
            let changes = audit.entries.first().changes
            let changedValues = changes.map(c => `${c.key} was changed from ${c.old} to ${c.new}`).join('\n')
            console.log(changedValues)
            let logEmbed = new RichEmbed()
                .setAuthor(`Channel was update: | ${oldChannel.name}`)
                .addField("Now:", `${newChannel.name}`)
                .addField("Channel id:", `${newChannel.id}`)
                .addField("Updated by:", `${user}`)
                .addField("Changes:", `${opt}`)
                .setColor(purple_light)
                .setTimestamp();
            logChannel.send(logEmbed).catch(() => console.error);
        })
        .catch(console.error);

}

В консоли я вижу изменение параметров, но они отображаются в виде цифр. Собственно говоря, можно ли получить эту информацию в каком-то более точном виде?


Ответы (1 шт):

Автор решения: wilddip

Формат переменной opt - Роль, Пользователь или Объект (почему).

Попробуйте вывести этот объект в консоль - console.log(opt), после инициализации переменной и покопаться в ней.

→ Ссылка