DiscordCoreAPI
A Discord bot library written in C++, with custom asynchronous coroutines.
Loading...
Searching...
No Matches
Modifying Guild Channel Positions

/// Test.hpp -header for the "test" command.
/// https://github.com/RealTimeChris/DiscordCoreAPI
#pragma once
#include <index.hpp>
namespace discord_core_api {
class test : public base_function {
public:
test() {
commandName = "test";
helpDescription = "testing purposes!";
embed_data msgEmbed;
msgEmbed.setDescription("------\nSimply enter !test or /test!\n------");
msgEmbed.setTitle("__**test usage:**__");
msgEmbed.setTimeStamp(getTimeAndDate());
msgEmbed.setColor("fe_fe_fe");
helpEmbed = msgEmbed;
}
unique_ptr<base_function> create() {
return makeUnique<test>();
}
virtual void execute(base_function_arguments& args) {
try {
vector<discord_core_api::channel_data> channels = discord_core_api::channels::getGuildChannelsAsync({.guildId = args.eventData.getGuildId()}).get();
vector<modify_guild_channel_position_data> dataPackage00;
modify_guild_channel_position_data& dataPackage01;
dataPackage01.id = channels.at(1).id;
dataPackage01.lockPermissions = false;
dataPackage01.parentId = channels.at(1).parentId;
dataPackage01.position = channels.at(1).position-1;
dataPackage00.emplace_back(dataPackage01);
modify_guild_channel_positions_data dataPackage;
dataPackage.reason = "testing purposes!";
dataPackage.guildId = args.eventData.getGuildId();
dataPackage.modifyChannelData = dataPackage00;
} catch (...) {
rethrowException("test::execute()");
}
}
};
}
static co_routine< void > modifyGuildChannelPositionsAsync(modify_guild_channel_positions_data dataPackage)
Re-orders the channel_data positions, within a chosen guild_data.
static co_routine< jsonifier::vector< channel_data > > getGuildChannelsAsync(get_guild_channels_data dataPackage)
Collects a list of channels from a chosen guild_data.
The main namespace for the forward-facing interfaces.
Base class for the command classes.