class DMMessageManager
extends
MessageManagerexport class DMMessageManager extends MessageManager
Manages API methods for messages in direct message channels and holds their cache.
readonlyCollection<Key, Holds> cache :
The cache of items for this manager.
Inherited from: DataManager
DMChannel channel :
The channel that the messages belong to
readonlyConstructable<Holds> holds :
The data structure belonging to this manager.
Inherited from: DataManager
crosspostmessage: MessageResolvable) : Promise<Message> (
Publishes a message in an announcement channel to all channels following it, even if it's not cached.
Inherited from: MessageManager
deletemessage: MessageResolvable) : Promise<void> (
Deletes a message, even if it's not cached.
Inherited from: MessageManager
editmessage: MessageResolvableoptions: string | MessagePayload | MessageEditOptions) : Promise<Message<boolean>> (
Edits a message, even if it's not cached.
Inherited from: MessageManager
fetchoptions: MessageResolvable | FetchMessageOptions) : Promise<Message<InGuild>> (
Fetches message(s) from a channel. The returned Collection does not contain reaction users of the messages if they were not cached. Those need to be fetched separately in such a case.
// Fetch a message
channel.messages.fetch('99539446449315840')
.then(message => console.log(message.content))
.catch(console.error);
// Fetch a maximum of 10 messages without caching
channel.messages.fetch({ limit: 10, cache: false })
.then(messages => console.log(`Received ${messages.size} messages`))
.catch(console.error);
// Fetch a maximum of 10 messages without caching around a message id
channel.messages.fetch({ limit: 10, cache: false, around: '99539446449315840' })
.then(messages => console.log(`Received ${messages.size} messages`))
.catch(console.error);
// Fetch messages and filter by a user id
channel.messages.fetch()
.then(messages => console.log(`${messages.filter(message =>
message.author.id === '84484653687267328').size} messages`))
.catch(console.error);
Fetches the pinned messages of this channel and returns a collection of them. The returned Collection does not contain any reaction data of the messages. Those need to be fetched separately.
// Get pinned messages
channel.messages.fetchPinned()
.then(messages => console.log(`Received ${messages.size} messages`))
.catch(console.error);
Inherited from: MessageManager
fetchPollAnswerVotersoptions: FetchPollAnswerVotersOptions) : Promise<Collection<Snowflake, User>> (
Fetches the users that voted for a poll answer.
Inherited from: MessageManager
pinmessage: MessageResolvablereason?: string) : Promise<void> (
Pins a message to the channel's pinned messages, even if it's not cached.
Inherited from: MessageManager
reactmessage: MessageResolvableemoji: EmojiIdentifierResolvable) : Promise<void> (
Adds a reaction to a message, even if it's not cached.
Inherited from: MessageManager
resolvemessage: MessageResolvable) : Message (
Resolves a MessageResolvable to a Message object.
Inherited from: MessageManager
resolveIdmessage: MessageResolvable) : Snowflake (
Resolves a MessageResolvable to a Message id.
Inherited from: MessageManager
unpinmessage: MessageResolvablereason?: string) : Promise<void> (
Unpins a message from the channel's pinned messages, even if it's not cached.
Inherited from: MessageManager
valueOfCollection<Key, Holds> () :
Inherited from: DataManager