MessageManager
classe · Source
Manages API methods for Messages and holds their cache.
Extends: CachedManager
Properties
channel
The channel that the messages belong to Source
cache
The cache of Messages Source
_cache
readonly · private
The private cache of items for this manager. Source
holds
readonly · private
The data structure belonging to this manager. Source
client
readonly
The client that instantiated this Manager Source
Methods
fetch
Gets a message, or messages, from this 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. Parameters
| Name | Type | Description |
|---|---|---|
message? | Snowflake | ChannelLogsQueryOptions | The id of the message to fetch, or query parameters. |
options? | BaseFetchOptions | Additional options for this fetch |
Returns: Promise<(Message\|Collection<Snowflake, Message>)>
// Get message
channel.messages.fetch('99539446449315840')
.then(message => console.log(message.content))
.catch(console.error);2
3
4
// Get messages
channel.messages.fetch({ limit: 10 })
.then(messages => console.log(`Received ${messages.size} messages`))
.catch(console.error);2
3
4
// Get messages and filter by user id
channel.messages.fetch()
.then(messages => console.log(`${messages.filter(m => m.author.id === '84484653687267328').size} messages`))
.catch(console.error);2
3
4
fetchPinned
async
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. Parameters
| Name | Type | Description |
|---|---|---|
cache? | boolean | Whether to cache the message(s) Default: true. |
Returns: Promise<Collection<Snowflake, Message>>
// Get pinned messages
channel.messages.fetchPinned()
.then(messages => console.log(`Received ${messages.size} messages`))
.catch(console.error);2
3
4
resolve
Resolves a MessageResolvable to a Message object. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message resolvable to resolve |
Returns: MessageSource
resolveId
Resolves a MessageResolvable to a Message id. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message resolvable to resolve |
Returns: SnowflakeSource
edit
async
Edits a message, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to edit |
options | string | MessageEditOptions | MessagePayload | The options to edit the message |
Returns: Promise<Message>Source
crosspost
async
Publishes a message in an announcement channel to all channels following it, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to publish |
Returns: Promise<Message>Source
pin
async
Pins a message to the channel's pinned messages, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to pin |
reason? | string | Reason for pinning |
Returns: Promise<void>Source
unpin
async
Unpins a message from the channel's pinned messages, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to unpin |
reason? | string | Reason for unpinning |
Returns: Promise<void>Source
react
async
Adds a reaction to a message, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to react to |
emoji | EmojiIdentifierResolvable | The emoji to react with |
burst? | boolean | Super Reactions (Discord Nitro only) Default: false. |
Returns: Promise<void>Source
delete
async
Deletes a message, even if it's not cached. Parameters
| Name | Type | Description |
|---|---|---|
message | MessageResolvable | The message to delete |
Returns: Promise<void>Source
search
async
Search Messages in the channel. Parameters
| Name | Type | Description |
|---|---|---|
options | MessageSearchOptions | Performs a search within the channel. |
Returns: MessageSearchResultSource
endPoll
async
Ends a poll. Parameters
| Name | Type | Description |
|---|---|---|
messageId | Snowflake | The id of the message |
Returns: Promise<Message>Source
fetchPollAnswerVoters
async
Fetches the users that voted for a poll answer. Parameters
| Name | Type | Description |
|---|---|---|
options | FetchPollAnswerVotersOptions | The options for fetching the poll answer voters |
Returns: Promise<Collection<Snowflake, User>>Source