Skip to content
SinisterRectus edited this page Aug 10, 2018 · 28 revisions

Represents a text channel in a Discord guild, where guild members and webhooks can send and receive messages.

Instances of this class should not be constructed by users.

Properties Inherited From GuildChannel

Name Type Description
category GuildCategoryChannel/nil The parent channel category that may contain this channel.
guild Guild The guild in which this channel exists.
name string The name of the channel. This should be between 2 and 100 characters in length.
permissionOverwrites Cache An iterable cache of all overwrites that exist in this channel. To access an overwrite that may exist, but is not cached, use GuildChannel:getPermissionOverwriteFor.
position number The position of the channel, where 0 is the highest.

Properties Inherited From TextChannel

Name Type Description
messages WeakCache An iterable weak cache of all messages that are visible to the client. Messages that are not referenced elsewhere are eventually garbage collected. To access a message that may exist but is not cached, use TextChannel:getMessage.

Properties

Name Type Description
members FilteredIterable A filtered iterable of guild members that have permission to read this channel. If you want to check whether a specific member has permission to read this channel, it would be better to get the member object elsewhere and use Member:hasPermission rather than check whether the member exists here.
nsfw boolean Whether this channel is marked as NSFW (not safe for work).
topic string/nil The channel's topic. This should be between 1 and 1024 characters.

Methods Inherited From GuildChannel

createInvite(payload)

Parameter Type
payload table

Creates an invite to the channel. Optional payload fields are: - max_age:number time in seconds until expiration, default = 86400 (24 hours) - max_uses:number total number of uses allowed, default = 0 (unlimited) - temporary:boolean whether the invite grants temporary membership, default = false - unique:boolean whether a unique code should be guaranteed, default = false

Returns: Invite

delete()

Permanently deletes the channel. This cannot be undone!

Returns: boolean

getInvites()

Returns a newly constructed cache of all invite objects for the channel. The cache and its objects are not automatically updated via gateway events. You must call this method again to get the updated objects.

Returns: Cache

getPermissionOverwriteFor(obj)

Parameter Type
obj Role/Member

Returns a permission overwrite object corresponding to the provided member or role object. If a cached overwrite is not found, an empty overwrite with zero-permissions is returned instead. Therefore, this can be used to create a new overwrite when one does not exist. Note that the member or role must exist in the same guild as the channel does.

Returns: PermissionOverwrite

moveDown(n)

Parameter Type
n number

Moves a channel down its list. The parameter n indicates how many spaces the channel should be moved, clamped to the lowest position, with a default of 1 if it is omitted. This will also normalize the positions of all channels.

Returns: boolean

moveUp(n)

Parameter Type
n number

Moves a channel up its list. The parameter n indicates how many spaces the channel should be moved, clamped to the highest position, with a default of 1 if it is omitted. This will also normalize the positions of all channels.

Returns: boolean

setCategory(id)

Parameter Type
id Channel-ID-Resolvable

Sets the channel's parent category.

Returns: boolean

setName(name)

Parameter Type
name string

Sets the channel's name. This must be between 2 and 100 characters in length.

Returns: boolean

Methods Inherited From TextChannel

broadcastTyping()

Indicates in the channel that the client's user "is typing".

Returns: boolean

getFirstMessage()

Returns the first message found in the channel, if any exist. This is not a cache shortcut; an HTTP request is made each time this method is called.

Returns: Message

getLastMessage()

Returns the last message found in the channel, if any exist. This is not a cache shortcut; an HTTP request is made each time this method is called.

Returns: Message

getMessage(id)

Parameter Type
id Message-ID-Resolvable

Gets a message object by ID. If the object is already cached, then the cached object will be returned; otherwise, an HTTP request is made.

Returns: Message

getMessages(limit)

Parameter Type Optional
limit number

Returns a newly constructed cache of between 1 and 100 (default = 50) message objects found in the channel. While the cache will never automatically gain or lose objects, the objects that it contains may be updated by gateway events.

Returns: SecondaryCache

getMessagesAfter(id, limit)

Parameter Type Optional
id Message-ID-Resolvable
limit number

Returns a newly constructed cache of between 1 and 100 (default = 50) message objects found in the channel after a specific point. While the cache will never automatically gain or lose objects, the objects that it contains may be updated by gateway events.

Returns: SecondaryCache

getMessagesAround(id, limit)

Parameter Type Optional
id Message-ID-Resolvable
limit number

Returns a newly constructed cache of between 1 and 100 (default = 50) message objects found in the channel around a specific point. While the cache will never automatically gain or lose objects, the objects that it contains may be updated by gateway events.

Returns: SecondaryCache

getMessagesBefore(id, limit)

Parameter Type Optional
id Message-ID-Resolvable
limit number

Returns a newly constructed cache of between 1 and 100 (default = 50) message objects found in the channel before a specific point. While the cache will never automatically gain or lose objects, the objects that it contains may be updated by gateway events.

Returns: SecondaryCache

getPinnedMessages()

Returns a newly constructed cache of up to 50 messages that are pinned in the channel. While the cache will never automatically gain or lose objects, the objects that it contains may be updated by gateway events.

Returns: SecondaryCache

send(content)

Parameter Type
content string/table

Sends a message to the channel. If content is a string, then this is simply sent as the message content. If it is a table, more advanced formatting is allowed. See managing messages for more information.

Returns: Message

sendf(content, ...)

Parameter Type
content string
... *

Sends a message to the channel with content formatted with ... via string.format

Returns: Message

Methods

bulkDelete(messages)

Parameter Type
messages Message-ID-Resolvables

Bulk deletes multiple messages, from 2 to 100, from the channel.

Returns: boolean

createWebhook(name)

Parameter Type
name string

Creates a webhook for this channel. The name must be between 2 and 32 characters in length.

Returns: Webhook

disableNSFW()

Disables the NSFW setting for the channel. NSFW channels are hidden from users until the user explicitly requests to view them.

Returns: boolean

enableNSFW()

Enables the NSFW setting for the channel. NSFW channels are hidden from users until the user explicitly requests to view them.

Returns: boolean

getWebhooks()

Returns a newly constructed cache of all webhook objects for the channel. The cache and its objects are not automatically updated via gateway events. You must call this method again to get the updated objects.

Returns: Cache

setTopic(topic)

Parameter Type
topic string

Sets the channel's topic. This must be between 1 and 1024 characters. Pass nil to remove the topic.

Returns: boolean

Clone this wiki locally