Nostrum.Struct.Channel (Nostrum v0.4.6) View Source
Struct representing a Discord guild channel.
A Nostrum.Struct.Channel
represents all 5 types of channels. Each
channel has a field :type
with any of the following values:
0
- GUILD_TEXT1
- DM2
- GUILD_VOICE3
- GROUP_DM4
- GUILD_CATEGORY
More information can be found on the Discord API Channel Documentation.
Mentioning Channels in Messages
A Nostrum.Struct.Channel
can be mentioned in message content using the String.Chars
protocol or mention/1
.
channel = %Nostrum.Struct.Channel{id: 381889573426429952}
Nostrum.Api.create_message!(184046599834435585, "#{channel}")
%Nostrum.Struct.Message{content: "<#381889573426429952>"}
channel = %Nostrum.Struct.Channel{id: 280085880452939778}
Nostrum.Api.create_message!(280085880452939778, "#{Nostrum.Struct.Channel.mention(channel)}")
%Nostrum.Struct.Message{content: "<#280085880452939778>"}
Link to this section Summary
Types
The application id of the group DM creator if it is bot-created
The bitrate of the voice channel
A Nostrum.Struct.Channel
that represents a channel category in a guild.
A Nostrum.Struct.Channel
that represents a DM channel.
A Nostrum.Struct.Channel
that represents a group DM channel.
A Nostrum.Struct.Channel
that represents a channel in a guild.
The id of the channel's guild
A Nostrum.Struct.Channel
that represents a text channel in a guild.
A Nostrum.Struct.Channel
that represents a voice channel in a guild.
The icon hash of the channel
The channel's id
Id of the last message sent
When the last pinned message was pinned
The name of the channel
If the channel is nsfw
The id of the DM creator
The id of the parent category for a channel
The list of overwrites
The ordered position of the channel
The recipients of the DM
A Nostrum.Struct.Channel
that represents a text channel.
Current channel topic
The user limit of the voice channel
A Nostrum.Struct.Channel
that represents a voice channel.
Functions
Formats a Nostrum.Struct.Channel
into a mention.
Link to this section Types
Specs
application_id() :: Nostrum.Snowflake.t() | nil
The application id of the group DM creator if it is bot-created
Specs
bitrate() :: integer()
The bitrate of the voice channel
Specs
channel_category() :: %Nostrum.Struct.Channel{ application_id: nil, bitrate: nil, guild_id: guild_id(), icon: nil, id: id(), last_message_id: nil, last_pin_timestamp: nil, name: name(), nsfw: nsfw(), owner_id: nil, parent_id: parent_id(), permission_overwrites: permission_overwrites(), position: position(), recipients: nil, topic: nil, type: 4, user_limit: nil }
A Nostrum.Struct.Channel
that represents a channel category in a guild.
Specs
dm_channel() :: %Nostrum.Struct.Channel{ application_id: nil, bitrate: nil, guild_id: nil, icon: nil, id: id(), last_message_id: last_message_id(), last_pin_timestamp: nil, name: nil, nsfw: nil, owner_id: nil, parent_id: nil, permission_overwrites: nil, position: nil, recipients: recipients(), topic: nil, type: 1, user_limit: nil }
A Nostrum.Struct.Channel
that represents a DM channel.
Specs
group_dm_channel() :: %Nostrum.Struct.Channel{ application_id: application_id(), bitrate: nil, guild_id: nil, icon: icon(), id: id(), last_message_id: last_message_id(), last_pin_timestamp: nil, name: name(), nsfw: nil, owner_id: owner_id(), parent_id: nil, permission_overwrites: nil, position: nil, recipients: recipients(), topic: nil, type: 3, user_limit: nil }
A Nostrum.Struct.Channel
that represents a group DM channel.
Specs
guild_channel() :: guild_text_channel() | guild_voice_channel() | channel_category()
A Nostrum.Struct.Channel
that represents a channel in a guild.
Specs
guild_id() :: Nostrum.Struct.Guild.id()
The id of the channel's guild
Specs
guild_text_channel() :: %Nostrum.Struct.Channel{ application_id: nil, bitrate: nil, guild_id: guild_id(), icon: nil, id: id(), last_message_id: last_message_id(), last_pin_timestamp: last_pin_timestamp(), name: name(), nsfw: nsfw(), owner_id: nil, parent_id: parent_id(), permission_overwrites: permission_overwrites(), position: position(), recipients: nil, topic: topic(), type: 0, user_limit: nil }
A Nostrum.Struct.Channel
that represents a text channel in a guild.
Specs
guild_voice_channel() :: %Nostrum.Struct.Channel{ application_id: nil, bitrate: bitrate(), guild_id: guild_id(), icon: nil, id: id(), last_message_id: nil, last_pin_timestamp: nil, name: name(), nsfw: nsfw(), owner_id: nil, parent_id: parent_id(), permission_overwrites: permission_overwrites(), position: position(), recipients: nil, topic: nil, type: 2, user_limit: user_limit() }
A Nostrum.Struct.Channel
that represents a voice channel in a guild.
Specs
icon() :: String.t() | nil
The icon hash of the channel
Specs
id() :: Nostrum.Snowflake.t()
The channel's id
Specs
last_message_id() :: Nostrum.Struct.Message.id() | nil
Id of the last message sent
Specs
last_pin_timestamp() :: String.t() | nil
When the last pinned message was pinned
Specs
name() :: String.t()
The name of the channel
Specs
nsfw() :: boolean()
If the channel is nsfw
Specs
owner_id() :: Nostrum.Struct.User.id()
The id of the DM creator
Specs
parent_id() :: id() | nil
The id of the parent category for a channel
Specs
permission_overwrites() :: [Nostrum.Struct.Overwrite.t()]
The list of overwrites
Specs
position() :: integer()
The ordered position of the channel
Specs
recipients() :: [Nostrum.Struct.User.t()]
The recipients of the DM
Specs
t() :: guild_text_channel() | dm_channel() | guild_voice_channel() | group_dm_channel() | channel_category()
Specs
text_channel() :: guild_text_channel() | dm_channel() | group_dm_channel()
A Nostrum.Struct.Channel
that represents a text channel.
Specs
topic() :: String.t()
Current channel topic
Specs
user_limit() :: integer()
The user limit of the voice channel
Specs
voice_channel() :: guild_voice_channel()
A Nostrum.Struct.Channel
that represents a voice channel.
Link to this section Functions
Specs
Formats a Nostrum.Struct.Channel
into a mention.
Examples
iex> channel = %Nostrum.Struct.Channel{id: 381889573426429952}
...> Nostrum.Struct.Channel.mention(channel)
"<#381889573426429952>"