Discord.js Transcripts
Discord Transcripts is a node.js module to generate nice looking HTML transcripts.
Usage
Example usage using the built in message fetcher.
const discordTranscripts = require('discord-transcripts');
// or (if using typescript) import * as discordTranscripts from 'discord-transcripts';
const channel = message.channel; // or however you get your TextChannel
// Must be awaited
const attachment = await discordTranscripts.createTranscript(channel);
channel.send({
files: [attachment]
});
Or if you prefer, you can pass in your own messages.
const discordTranscripts = require('discord-transcripts');
// or (if using typescript) import * as discordTranscripts from 'discord-transcripts';
const messages = someWayToGetMessages(); // Must be Collection<string, Message> or Message[]
const channel = someWayToGetChannel(); // Used for ticket name, guild icon, and guild name
// You do not need to await this
const attachment = discordTranscripts.generateFromMessages(messages, channel);
channel.send({
files: [attachment]
});
Configuration
Both methods of generating a transcript allow for an option object as the last parameter.
Built in Message Fetcher
const attachment = await createTranscript(channel, {
limit: -1, // Max amount of messages to fetch.
returnBuffer: false, // Return a buffer instead of a MessageAttachment
fileName: 'transcript.html' // Only valid with returnBuffer false. Name of attachment.
});
Providing your own messages
const attachment = await generateFromMessages(messages, channel, {
returnBuffer: false, // Return a buffer instead of a MessageAttachment
fileName: 'transcript.html' // Only valid with returnBuffer false. Name of attachment.
});