D++ (DPP)
C++ Discord API Bot Library
|
A definition of a discord thread. A thread is a superset of a channel. Not to be confused with std::thread
!
More...
#include <channel.h>
Public Member Functions | |
thread () | |
Construct a new thread object. More... | |
bool | is_news_thread () const |
Returns true if the thread is within an announcement channel. More... | |
bool | is_public_thread () const |
Returns true if the channel is a public thread. More... | |
bool | is_private_thread () const |
Returns true if the channel is a private thread. More... | |
thread & | fill_from_json (nlohmann::json *j) |
virtual | ~thread () |
Destroy the thread object. More... | |
std::string | build_json (bool with_id=false) const |
Build json for this thread object. More... | |
channel & | set_name (const std::string &name) |
Set name of this channel object. More... | |
channel & | set_topic (const std::string &topic) |
Set topic of this channel object. More... | |
channel & | set_flags (const uint8_t flags) |
Set flags for this channel object. More... | |
channel & | add_flag (const channel_flags flag) |
Add (bitwise OR) a flag to this channel object. More... | |
channel & | remove_flag (const channel_flags flag) |
Remove (bitwise NOT AND) a flag from this channel object. More... | |
channel & | set_position (const uint16_t position) |
Set position of this channel object. More... | |
channel & | set_guild_id (const snowflake guild_id) |
Set guild_id of this channel object. More... | |
channel & | set_parent_id (const snowflake parent_id) |
Set parent_id of this channel object. More... | |
channel & | set_user_limit (const uint8_t user_limit) |
Set user_limit of this channel object. More... | |
channel & | set_bitrate (const uint16_t bitrate) |
Set bitrate of this channel object. More... | |
channel & | set_nsfw (const bool is_nsfw) |
Set nsfw property of this channel object. More... | |
channel & | set_lock_permissions (const bool is_lock_permissions) |
Set lock permissions property of this channel object Used only with the reorder channels method. More... | |
channel & | set_rate_limit_per_user (const uint16_t rate_limit_per_user) |
Set rate_limit_per_user of this channel object. More... | |
channel & | add_permission_overwrite (const snowflake id, const overwrite_type type, const uint64_t allowed_permissions, const uint64_t denied_permissions) |
Add a permission_overwrite to this channel object. More... | |
std::string | get_mention () const |
Get the mention ping for the channel. More... | |
permission | get_user_permissions (const class user *user) const |
Get the user overall permissions for a member on this channel, including channel overwrites. More... | |
permission | get_user_permissions (const class guild_member &member) const |
Get the overall user permissions for a member on this channel, including channel overwrites. More... | |
std::map< snowflake, class guild_member * > | get_members () |
Return a map of members on the channel, built from the guild's member list based on which members have the VIEW_CHANNEL permission. Does not return reliable information for voice channels, use dpp::channel::get_voice_members() instead for this. More... | |
std::map< snowflake, voicestate > | get_voice_members () |
Get a map of members in this channel, if it is a voice channel. The map is keyed by snowflake id of the user. More... | |
std::string | get_banner_url (uint16_t size=0) const |
Get the channel's banner url if they have one, otherwise returns an empty string. More... | |
std::string | get_icon_url (uint16_t size=0) const |
Get the channel's icon url (if its a group DM), otherwise returns an empty string. More... | |
bool | is_nsfw () const |
Returns true if the channel is NSFW gated. More... | |
bool | is_locked_permissions () const |
Returns true if the permissions are to be synced with the category it is in. Used only and set manually when using the reorder channels method. More... | |
bool | is_text_channel () const |
Returns true if the channel is a text channel. More... | |
bool | is_dm () const |
Returns true if the channel is a DM. More... | |
bool | is_voice_channel () const |
Returns true if the channel is a voice channel. More... | |
bool | is_group_dm () const |
Returns true if the channel is a group DM channel. More... | |
bool | is_category () const |
Returns true if the channel is a category. More... | |
bool | is_forum () const |
Returns true if the channel is a forum. More... | |
bool | is_news_channel () const |
Returns true if the channel is an announcement channel. More... | |
bool | is_store_channel () const |
Returns true if the channel is a store channel. More... | |
bool | is_stage_channel () const |
Returns true if the channel is a stage channel. More... | |
bool | is_video_auto () const |
Returns true if video quality is auto. More... | |
bool | is_video_720p () const |
Returns true if video quality is 720p. More... | |
bool | is_pinned_thread () const |
Returns true if channel is a pinned thread in forum. More... | |
double | get_creation_time () const |
Get the creation time of this object according to Discord. More... | |
bool | operator== (const managed &other) const noexcept |
Comparison operator for comparing two managed objects by id. More... | |
bool | operator!= (const managed &other) const noexcept |
Comparison operator for comparing two managed objects by id. More... | |
Public Attributes | |
thread_member | member |
Thread member of current user if joined to the thread. Note this is only set by certain api calls otherwise contains default data. More... | |
thread_metadata | metadata |
uint8_t | message_count |
uint8_t | member_count |
std::string | name |
std::string | topic |
std::string | rtc_region |
Voice region if set for voice channel, otherwise empty string. More... | |
std::vector< snowflake > | recipients |
std::vector< permission_overwrite > | permission_overwrites |
utility::iconhash | icon |
Channel icon (for group DMs) More... | |
utility::iconhash | banner |
Channel banner (boost level locked) More... | |
snowflake | owner_id |
snowflake | parent_id |
snowflake | guild_id |
snowflake | last_message_id |
time_t | last_pin_timestamp |
permission | permissions |
This is only filled when the channel is part of the resolved set sent within an interaction. Any other time it contains zero. When filled, it contains the calculated permission bitmask of the user issuing the command within this channel. More... | |
uint16_t | position |
uint16_t | bitrate |
uint16_t | rate_limit_per_user |
uint8_t | flags |
uint8_t | user_limit |
snowflake | id |
Unique ID of object set by Discord. This value contains a timestamp, worker ID, internal server ID, and an incrementing value. Only the timestamp is relevant to us as useful metadata. More... | |
A definition of a discord thread. A thread is a superset of a channel. Not to be confused with std::thread
!
dpp::thread::thread | ( | ) |
Construct a new thread object.
|
virtual |
Destroy the thread object.
|
inherited |
Add (bitwise OR) a flag to this channel object.
flag | Flag bit to add from dpp::channel_flags |
|
inherited |
Add a permission_overwrite to this channel object.
id | ID of the role or the member you want to add overwrite for |
type | type of overwrite |
allowed_permissions | bitmask of allowed permissions (refer to enum dpp::permissions) for this user/role in this channel |
denied_permissions | bitmask of denied permissions (refer to enum dpp::permissions) for this user/role in this channel |
|
virtual |
Build json for this thread object.
with_id | include the ID in the json |
Reimplemented from dpp::channel.
thread & dpp::thread::fill_from_json | ( | nlohmann::json * | j | ) |
Read class values from json object
j | A json object to read from |
|
inherited |
Get the channel's banner url if they have one, otherwise returns an empty string.
size | The size of the banner in pixels. It can be any power of two between 16 and 4096. if not specified, the default sized banner is returned. |
|
inherited |
Get the creation time of this object according to Discord.
|
inherited |
Get the channel's icon url (if its a group DM), otherwise returns an empty string.
size | The size of the icon in pixels. It can be any power of two between 16 and 4096. if not specified, the default sized icon is returned. |
|
inherited |
Return a map of members on the channel, built from the guild's member list based on which members have the VIEW_CHANNEL permission. Does not return reliable information for voice channels, use dpp::channel::get_voice_members() instead for this.
|
inherited |
Get the mention ping for the channel.
|
inherited |
Get the overall user permissions for a member on this channel, including channel overwrites.
member | The member to resolve the permissions for |
|
inherited |
Get the user overall permissions for a member on this channel, including channel overwrites.
user | The user to resolve the permissions for |
|
inherited |
Get a map of members in this channel, if it is a voice channel. The map is keyed by snowflake id of the user.
|
inherited |
Returns true if the channel is a category.
|
inherited |
Returns true if the channel is a DM.
|
inherited |
Returns true if the channel is a forum.
|
inherited |
Returns true if the channel is a group DM channel.
|
inherited |
Returns true if the permissions are to be synced with the category it is in. Used only and set manually when using the reorder channels method.
|
inherited |
Returns true if the channel is an announcement channel.
bool dpp::thread::is_news_thread | ( | ) | const |
Returns true if the thread is within an announcement channel.
|
inherited |
Returns true if the channel is NSFW gated.
|
inherited |
Returns true if channel is a pinned thread in forum.
bool dpp::thread::is_private_thread | ( | ) | const |
Returns true if the channel is a private thread.
bool dpp::thread::is_public_thread | ( | ) | const |
Returns true if the channel is a public thread.
|
inherited |
Returns true if the channel is a stage channel.
|
inherited |
Returns true if the channel is a store channel.
|
inherited |
Returns true if the channel is a text channel.
|
inherited |
Returns true if video quality is 720p.
|
inherited |
Returns true if video quality is auto.
|
inherited |
Returns true if the channel is a voice channel.
|
noexceptinherited |
Comparison operator for comparing two managed objects by id.
other | Other object to compare against |
|
noexceptinherited |
Comparison operator for comparing two managed objects by id.
other | Other object to compare against |
|
inherited |
Remove (bitwise NOT AND) a flag from this channel object.
flag | Flag bit to remove from dpp::channel_flags |
|
inherited |
Set bitrate of this channel object.
bitrate | Bitrate to set |
|
inherited |
Set flags for this channel object.
flags | Flag bitmask to set from dpp::channel_flags |
Set guild_id of this channel object.
guild_id | Guild ID to set |
|
inherited |
Set lock permissions property of this channel object Used only with the reorder channels method.
is_lock_permissions | true, if we are to inherit permissions from the category |
|
inherited |
Set name of this channel object.
name | Name to set |
dpp::length_exception | if length < 1 |
|
inherited |
Set nsfw property of this channel object.
is_nsfw | true, if channel is nsfw |
Set parent_id of this channel object.
parent_id | Parent ID to set |
|
inherited |
Set position of this channel object.
position | Position to set |
|
inherited |
Set rate_limit_per_user of this channel object.
rate_limit_per_user | rate_limit_per_user (slowmode in sec) to set |
|
inherited |
Set topic of this channel object.
topic | Topic to set |
|
inherited |
Set user_limit of this channel object.
user_limit | Limit to set |
|
inherited |
Channel banner (boost level locked)
|
inherited |
the bitrate (in bits) of the voice channel
|
inherited |
Flags bitmap
|
inherited |
Guild id of the guild that owns the channel
|
inherited |
Channel icon (for group DMs)
|
inherited |
Unique ID of object set by Discord. This value contains a timestamp, worker ID, internal server ID, and an incrementing value. Only the timestamp is relevant to us as useful metadata.
|
inherited |
ID of last message to be sent to the channel
|
inherited |
Timestamp of last pinned message
thread_member dpp::thread::member |
Thread member of current user if joined to the thread. Note this is only set by certain api calls otherwise contains default data.
uint8_t dpp::thread::member_count |
Approximate count of members in a thread (threads)
uint8_t dpp::thread::message_count |
Number of messages (not including the initial message or deleted messages) of the thread. If the thread was created before July 1, 2022, it stops counting at 50
thread_metadata dpp::thread::metadata |
Thread metadata (threads)
|
inherited |
Channel name
|
inherited |
User ID of owner for group DMs
|
inherited |
Parent ID (category)
|
inherited |
Permission overwrites to apply to base permissions
|
inherited |
This is only filled when the channel is part of the resolved
set sent within an interaction. Any other time it contains zero. When filled, it contains the calculated permission bitmask of the user issuing the command within this channel.
|
inherited |
Sorting position, lower number means higher up the list
|
inherited |
amount of seconds a user has to wait before sending another message (0-21600); bots, as well as users with the permission manage_messages or manage_channel, are unaffected
|
inherited |
DM recipients
|
inherited |
Voice region if set for voice channel, otherwise empty string.
|
inherited |
Channel topic
|
inherited |
Maximum user limit for voice channels (0-99)