33 DiscordCoreAPI_Dll
inline bool operator==(
const ChannelData& lhs,
const ChannelData& rhs) {
34 return lhs.id == rhs.id;
44 Snowflake channelId{};
49 Snowflake channelId{};
56 Snowflake roleOrUserId{};
57 Snowflake channelId{};
62 operator Serializer();
67 Snowflake channelId{};
72 Snowflake targetApplicationId{};
74 Snowflake targetUserId{};
75 Snowflake channelId{};
82 operator Serializer();
87 Snowflake roleOrUserId{};
88 Snowflake channelId{};
94 Snowflake targetChannelId{};
95 Snowflake channelId{};
97 operator Serializer();
102 Snowflake channelId{};
112 std::vector<OverWriteData> permissionOverwrites{};
113 int32_t defaultAutoArchiveDuration{};
114 int32_t rateLimitPerUser{};
115 std::string reason{};
116 Snowflake parentId{};
126 operator Serializer();
131 bool lockPermissions{};
132 Snowflake parentId{};
139 std::vector<ModifyGuildChannelPositionData> modifyChannelData{};
140 std::string reason{};
143 operator Serializer();
154 std::unordered_map<uint64_t, UserData> recipients{};
155 DefaultReactionData defaultReactionEmoji{};
156 std::vector<ForumTagData> availableTags{};
157 int32_t defaultThreadRateLimitPerUser{};
158 int32_t defaultAutoArchiveDuration{};
159 std::vector<Snowflake> appliedTags{};
161 StringWrapper lastMessageId{};
163 StringWrapper permissions{};
164 int32_t videoQualityMode{};
165 int32_t rateLimitPerUser{};
166 int32_t totalMessageSent{};
167 Snowflake applicationId{};
168 StringWrapper rtcRegion{};
170 int32_t messageCount{};
171 StringWrapper topic{};
190 std::
string getIconUrl() noexcept;
193 class DiscordCoreAPI_Dll ChannelVector {
195 ChannelVector() noexcept = default;
197 operator std::vector<
Channel>();
199 ChannelVector(Value jsonData);
201 virtual ~ChannelVector() noexcept = default;
204 std::vector<
Channel> channels{};
210 Snowflake channelId{};
211 std::string reason{};
213 operator Serializer();
227 friend class DiscordCoreInternal::WebSocketClient;
233 static void initialize(DiscordCoreInternal::HttpsClient*, ConfigManager* configManager);
311 static void removeChannel(Snowflake channelId);
313 static bool doWeCacheChannels();
316 static DiscordCoreInternal::HttpsClient* httpsClient;
317 static ObjectCache<ChannelData> cache;
318 static bool doWeCacheChannelsBool;
InviteTargetTypes
Invite target types.
ChannelType
Channel types.
PermissionOverwritesType
PermissionTypes overwrites types.
The main namespace for this library.
For collecting a Channel from Discord's servers.
For deleting or closing a Channel.
For editing the PermissionTypes overwrites of a given Channel, for a given Role or User.
For collecting the invites to a given Channel.
For creating an invite to a given Channel.
For deleting the PermissionTypes overwrites of a given Channel for a given Role or User.
For following a news Channel.
For triggering the typing indicator in a given Channel.
For acquiring a list of Channels from a chosen Guild.
For creating a new Channel within a chosen Guild.
For modifying the Channel position responseData of a single Channel.
For modifying the current positions of one or more Channels in the Guild.
For collecting a direct-messaging Channel.
For modifying a Channel's properties.
An interface class for the Channel-related endpoints.
A CoRoutine - representing a potentially asynchronous operation/function.
DiscordCoreClient - The main class for this library.
Meta data for a Thread type of Channel.
Data for a single member of a Thread.
Data structure representing a single Channel.
For updating/modifying a given Channel's properties.
Data structure representing a single Guild.
A discord Guild. Used to connect to/disconnect from voice.
Class for representing a timeStamp, as well as working with time-related values.