SleepyDiscord::WebsocketppDiscordClient
Inherits from SleepyDiscord::BaseDiscordClient, SleepyDiscord::GenericMessageReceiver
inherited members​
Public Classes inherited from SleepyDiscord::BaseDiscordClient
Name | |
---|---|
struct | RawRequestModeTypeHelper |
struct | Request |
struct | RequestModeType |
struct | RequestModeType< Async > |
struct | RequestModeType< Sync > |
struct | RequestSettings |
Public Types inherited from SleepyDiscord::BaseDiscordClient
Name | |
---|---|
enum | GetMessagesKey { na, around, before, after, limit} |
enum bool | AssignmentType { TilDueTime, EpochTime} |
using std::function< void(Response)> | RequestCallback |
typedef TimedTask | PostableTask |
Public Functions inherited from SleepyDiscord::BaseDiscordClient
Name | |
---|---|
BaseDiscordClient() =default | |
BaseDiscordClient(const std::string _token) | |
~BaseDiscordClient() | |
Response | request(const RequestMethod method, Route path, const std::string jsonParameters ="", const std::vector< Part > & multipartParameters ={}, RequestCallback callback =nullptr, const RequestMode mode =Sync_AsyncQueue) |
template <class ParmType > void | requestAsync(const RequestMethod method, Route path, std::function< void(ParmType)> callback, const std::string jsonParameters ="", const std::vector< Part > & multipartParameters ={}, const RequestMode mode =Async) |
template <class ParmType > Response | requestSync(const RequestMethod method, Route path, std::function< void(ParmType)> callback, const std::string jsonParameters ="", const std::vector< Part > & multipartParameters ={}, const RequestMode mode =Sync) |
const Route | path(const char * source, std::initializer_list< std::string > values ={}) |
template <class RequestSettingsClass > Response | request(const RequestMethod method, Route path, RequestSettingsClass & settings, const std::string jsonParameters ="", const std::initializer_list< Part > & multipartParameters ={}) |
template <RequestMode mode,class ParmType =void,class Callback =RequestCallback> RequestModeType< mode >::ReturnType | request(const RequestMethod method, Route path, Callback callback, const std::string jsonParameters ="", const std::initializer_list< Part > & multipartParameters ={}) |
void | testFunction(std::string teststring) |
ObjectResponse< Gateway > | getGateway(RequestSettings< ObjectResponse< Gateway >> settings ={}) |
ObjectResponse< Channel > | getChannel(Snowflake< Channel > channelID, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | editChannel(Snowflake< Channel > channelID, std::string name ="", std::string topic ="", RequestSettings< ObjectResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | editChannelName(Snowflake< Channel > channelID, std::string name, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | editChannelTopic(Snowflake< Channel > channelID, std::string topic, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | deleteChannel(Snowflake< Channel > channelID, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ArrayResponse< Message > | getMessages(Snowflake< Channel > channelID, GetMessagesKey when, Snowflake< Message > messageID, uint8_t limit =0, RequestSettings< ArrayResponse< Message >> settings ={}) |
ObjectResponse< Message > | getMessage(Snowflake< Channel > channelID, Snowflake< Message > messageID, RequestSettings< ObjectResponse< Message >> settings ={}) |
const Embed | createInvalidEmbed() |
ObjectResponse< Message > | sendMessage(Snowflake< Channel > channelID, std::string message, Embed embed =Embed::Flag::INVALID_EMBED, MessageReference replyingTo ={}, TTS tts =TTS::Default, RequestSettings< ObjectResponse< Message >> settings ={}) |
ObjectResponse< Message > | sendMessage(SendMessageParams params, RequestSettings< ObjectResponse< Message >> settings ={}) |
ObjectResponse< Message > | uploadFile(Snowflake< Channel > channelID, std::string fileLocation, std::string message, Embed embed =Embed::Flag::INVALID_EMBED, MessageReference replyingTo ={}, RequestSettings< ObjectResponse< Message >> settings ={}) |
ObjectResponse< Message > | uploadFile(SendMessageParams params, std::string fileLocation, RequestSettings< ObjectResponse< Message >> settings ={}) |
BoolResponse | addReaction(Snowflake< Channel > channelID, Snowflake< Message > messageID, std::string emoji, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | removeReaction(Snowflake< Channel > channelID, Snowflake< Message > messageID, std::string emoji, Snowflake< User > userID ="@me") |
ArrayResponse< User > | getReactions(Snowflake< Channel > channelID, Snowflake< Message > messageID, std::string emoji, RequestSettings< ArrayResponse< Reaction >> settings ={}) |
StandardResponse | removeAllReactions(Snowflake< Channel > channelID, Snowflake< Message > messageID, RequestSettings< StandardResponse > settings ={}) |
ObjectResponse< Message > | editMessage(Snowflake< Channel > channelID, Snowflake< Message > messageID, std::string newMessage, Embed embed =Embed::Flag::INVALID_EMBED, RequestSettings< ObjectResponse< Message >> settings ={}) |
ObjectResponse< Message > | editMessage(EditMessageParams params, RequestSettings< ObjectResponse< Message >> settings ={}) |
BoolResponse | deleteMessage(Snowflake< Channel > channelID, Snowflake< Message > messageID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | bulkDeleteMessages(Snowflake< Channel > channelID, std::vector< Snowflake< Message >> messageIDs, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | editChannelPermissions(Snowflake< Channel > channelID, Snowflake< Overwrite > overwriteID, int allow, int deny, std::string type) |
ArrayResponse< Invite > | getChannelInvites(Snowflake< Channel > channelID, RequestSettings< ArrayResponse< Invite >> settings ={}) |
ObjectResponse< Invite > | createChannelInvite(Snowflake< Channel > channelID, const uint64_t maxAge =0, const uint64_t maxUses =0, const bool temporary =false, const bool unique =false) |
BoolResponse | removeChannelPermission(Snowflake< Channel > channelID, std::string ID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | sendTyping(Snowflake< Channel > channelID, RequestSettings< BoolResponse > settings ={}) |
ArrayResponse< Message > | getPinnedMessages(Snowflake< Channel > channelID, RequestSettings< ArrayResponse< Message >> settings ={}) |
BoolResponse | pinMessage(Snowflake< Channel > channelID, Snowflake< Message > messageID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | unpinMessage(Snowflake< Channel > channelID, Snowflake< Message > messageID, RequestSettings< BoolResponse > settings ={}) |
StandardResponse | addRecipient(Snowflake< Channel > channelID, Snowflake< User > userID, RequestSettings< StandardResponse > settings ={}) |
StandardResponse | removeRecipient(Snowflake< Channel > channelID, Snowflake< User > userID, RequestSettings< StandardResponse > settings ={}) |
BoolResponse | deleteReaction(Snowflake< Channel > channelID, Snowflake< Message > messageID, std::string emoji) |
StandardResponse | deleteAllReactions(Snowflake< Channel > channelID, Snowflake< Message > messageID) |
BoolResponse | deleteChannelPermission(Snowflake< Channel > channelID, std::string ID) |
StandardResponse | deleteRecipient(Snowflake< Channel > channelID, Snowflake< User > _userID) |
ObjectResponse< Message > | editMessage(Message message, std::string newMessage, Embed embed =Embed::Flag::INVALID_EMBED) |
ObjectResponse< Message > | sendMessage(Snowflake< Channel > channelID, std::string message, RequestSettings< ObjectResponse< Message >> settings) |
ObjectResponse< Server > | getServer(Snowflake< Server > serverID, RequestSettings< ObjectResponse< Server >> settings ={}) |
ObjectResponse< Server > | deleteServer(Snowflake< Server > serverID, RequestSettings< ObjectResponse< Server >> settings ={}) |
ArrayResponse< Channel > | getServerChannels(Snowflake< Server > serverID, RequestSettings< ArrayResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | createTextChannel(Snowflake< Server > serverID, std::string name, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | createChannel(Snowflake< Server > serverID, std::string name, Channel::ChannelType Type, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ArrayResponse< Channel > | editChannelPositions(Snowflake< Server > serverID, std::vector< std::pair< std::string, uint64_t >> positions, RequestSettings< ArrayResponse< Channel >> settings ={}) |
ObjectResponse< ServerMember > | getMember(Snowflake< Server > serverID, Snowflake< User > userID, RequestSettings< ObjectResponse< ServerMember >> settings ={}) |
ArrayResponse< ServerMember > | listMembers(Snowflake< Server > serverID, uint16_t limit =0, std::string after ="", RequestSettings< ArrayResponse< ServerMember >> settings ={}) |
ObjectResponse< ServerMember > | addMember(Snowflake< Server > serverID, Snowflake< User > userID, std::string accesToken, std::string nick ="", std::vector< Role > roles ={}, bool mute =false, bool deaf =false) |
BoolResponse | editMember(Snowflake< Server > serverID, Snowflake< User > userID, std::string nickname ="", std::vector< Snowflake< Role >> roles ={}, int8_t mute =-1, int8_t deaf =-1, Snowflake< Channel > channelID ={}) |
BoolResponse | muteServerMember(Snowflake< Server > serverID, Snowflake< User > userID, bool mute =true, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | editNickname(Snowflake< Server > serverID, std::string newNickname, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | addRole(Snowflake< Server > serverID, Snowflake< User > userID, Snowflake< Role > roleID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | removeRole(Snowflake< Server > serverID, Snowflake< User > userID, Snowflake< Role > roleID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | kickMember(Snowflake< Server > serverID, Snowflake< User > userID, RequestSettings< BoolResponse > settings ={}) |
ArrayResponse< User > | getBans(Snowflake< Server > serverID, RequestSettings< ArrayResponse< User >> settings ={}) |
BoolResponse | banMember(Snowflake< Server > serverID, Snowflake< User > userID, int deleteMessageDays =-1, std::string reason ="", RequestSettings< BoolResponse > settings ={}) |
BoolResponse | unbanMember(Snowflake< Server > serverID, Snowflake< User > userID, RequestSettings< BoolResponse > settings ={}) |
ArrayResponse< Role > | getRoles(Snowflake< Server > serverID, RequestSettings< ArrayResponse< Role >> settings ={}) |
ObjectResponse< Role > | createRole(Snowflake< Server > serverID, std::string name ="", Permission permissions =Permission::NONE, unsigned int color =0, bool hoist =false, bool mentionable =false) |
ArrayResponse< Role > | editRolePosition(Snowflake< Server > serverID, std::vector< std::pair< std::string, uint64_t >> positions, RequestSettings< ArrayResponse< Role >> settings ={}) |
StringResponse | editRole(Snowflake< Server > serverID, Snowflake< Role > roleID, std::string name ="", Permission permissions =Permission::NONE, uint32_t color =1<< 24, int8_t hoist =-1, int8_t mentionable =-1) |
BoolResponse | deleteRole(Snowflake< Server > serverID, Snowflake< Role > roleID, RequestSettings< BoolResponse > settings ={}) |
StandardResponse | pruneMembers(Snowflake< Server > serverID, const unsigned int numOfDays, RequestSettings< StandardResponse > settings ={}) |
ArrayResponse< VoiceRegion > | getVoiceRegions(RequestSettings< ArrayResponse< VoiceRegion >> settings ={}) |
ArrayResponse< Invite > | getServerInvites(Snowflake< Server > serverID, RequestSettings< ArrayResponse< Invite >> settings ={}) |
StringResponse | getIntegrations(Snowflake< Server > serverID, RequestSettings< StringResponse > settings ={}) |
BoolResponse | createIntegration(Snowflake< Server > serverID, std::string type, std::string integrationID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | editIntergration(Snowflake< Server > serverID, std::string integrationID, int expireBegavior, int expireGracePeriod, bool enbleEmoticons) |
BoolResponse | deleteIntegration(Snowflake< Server > serverID, std::string integrationID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | syncIntegration(Snowflake< Server > serverID, std::string integrationID, RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< ServerWidget > | getServerWidget(Snowflake< Server > serverID, RequestSettings< ObjectResponse< ServerWidget >> settings ={}) |
ObjectResponse< Invite > | inviteEndpoint(RequestMethod method, std::string inviteCode, RequestSettings< ObjectResponse< Invite >> settings ={}) |
ObjectResponse< Invite > | getInvite(std::string inviteCode, RequestSettings< ObjectResponse< Invite >> settings ={}) |
ObjectResponse< Invite > | deleteInvite(std::string inviteCode, RequestSettings< ObjectResponse< Invite >> settings ={}) |
ObjectResponse< Invite > | acceptInvite(std::string inviteCode, RequestSettings< ObjectResponse< Invite >> settings ={}) |
ObjectResponse< User > | getCurrentUser(RequestSettings< ObjectResponse< User >> settings ={}) |
ObjectResponse< User > | getUser(Snowflake< User > userID, RequestSettings< ObjectResponse< User >> settings ={}) |
ArrayResponse< Server > | getServers(RequestSettings< ArrayResponse< Server >> settings ={}) |
BoolResponse | leaveServer(Snowflake< Server > serverID, RequestSettings< BoolResponse > settings ={}) |
ArrayResponse< Channel > | getDirectMessageChannels(RequestSettings< ArrayResponse< Channel >> settings ={}) |
ObjectResponse< Channel > | createDirectMessageChannel(std::string recipientID, RequestSettings< ObjectResponse< Channel >> settings ={}) |
ArrayResponse< Connection > | getUserConnections(RequestSettings< ArrayResponse< Connection >> settings ={}) |
ObjectResponse< Webhook > | createWebhook(Snowflake< Channel > channelID, std::string name, std::string avatar ="", RequestSettings< ObjectResponse< Webhook >> settings ={}) |
ArrayResponse< Webhook > | getChannelWebhooks(Snowflake< Channel > channelID, RequestSettings< ArrayResponse< Webhook >> settings ={}) |
ArrayResponse< Webhook > | getServerWebhooks(Snowflake< Server > serverID, RequestSettings< ArrayResponse< Webhook >> settings ={}) |
ObjectResponse< Webhook > | getWebhook(Snowflake< Webhook > webhookID, std::string webhookToken ="", RequestSettings< ObjectResponse< Webhook >> settings ={}) |
ObjectResponse< Webhook > | editWebhook(Snowflake< Webhook > webhookID, std::string webhookToken ="", std::string name ="", std::string avatar ="") |
BoolResponse | deleteWebhook(Snowflake< Webhook > webhookID, std::string webhookToken ="", RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< Webhook > | requestExecuteWebhook(Snowflake< Webhook > webhookID, std::string webhookToken, std::pair< std::string, std::string > pair, bool wait, std::string username, std::string avatar_url, bool tts) |
ObjectResponse< Webhook > | executeWebhook(Snowflake< Webhook > webhookID, std::string webhookToken, std::string content, bool wait =false, std::string username ="", std::string avatar_url ="", bool tts =false) |
ObjectResponse< Webhook > | executeWebhook(Snowflake< Webhook > webhookID, std::string webhookToken, std::vector< Embed > embeds, bool wait =false, std::string username ="", std::string avatar_url ="", bool tts =false) |
ObjectResponse< Webhook > | executeWebhook(Snowflake< Webhook > webhookID, std::string webhookToken, filePathPart file, bool wait =false, std::string username ="", std::string avatar_url ="", bool tts =false) |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | createGlobalAppCommand(Snowflake< DiscordObject >::RawType applicationID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, bool defaultPermission =true, AppCommand::Type type =AppCommand::Type::NONE, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | editGlobalAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< AppCommand > commandID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, bool defaultPermission =true, AppCommand::Type type =AppCommand::Type::NONE, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
ArrayResponse< AppCommand > | getGlobalAppCommands(Snowflake< DiscordObject >::RawType applicationID, RequestSettings< ArrayResponse< AppCommand >> settings ={}) |
ObjectResponse< AppCommand > | getGlobalAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< AppCommand > commandID, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
BoolResponse | deleteGlobalAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< AppCommand > commandID, RequestSettings< BoolResponse > settings ={}) |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | createServerAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, bool defaultPermission =true, AppCommand::Type type =AppCommand::Type::NONE, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | editServerAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
ArrayResponse< AppCommand > | getServerAppCommands(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, RequestSettings< ArrayResponse< AppCommand >> settings ={}) |
ObjectResponse< AppCommand > | getServerAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
BoolResponse | deleteServerAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, RequestSettings< BoolResponse > settings ={}) |
template <typename Type > BoolResponse | createInteractionResponse(Snowflake< Interaction > interactionID, std::string token, Type response, RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< Message > | editOriginalInteractionResponse(Snowflake< DiscordObject >::RawType applicationID, std::string interactionToken, EditWebhookParams params, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | deleteOriginalInteractionResponse(Snowflake< DiscordObject >::RawType applicationID, std::string interactionToken, RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< Message > | createFollowupMessage(Snowflake< DiscordObject >::RawType applicationID, std::string interactionToken, FollowupMessage params, RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< Message > | editFollowupMessage(Snowflake< DiscordObject >::RawType applicationID, std::string interactionToken, Snowflake< Message > messageID, EditWebhookParams params, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | deleteFollowupMessage(Snowflake< DiscordObject >::RawType applicationID, std::string interactionToken, Snowflake< Message > messageID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | batchEditAppCommandPermissions(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, std::vector< ServerAppCommandPermissions > permissions, RequestSettings< BoolResponse > settings ={}) Batch edits permissions for all commands in a guild. Takes an array of partial objects including id and permissions. https://discord.com/developers/docs/interactions/slash-commands#batch-edit-application-command-permissions |
BoolResponse | editServerAppCommandPermission(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, std::vector< AppCommand::Permissions > permissions, RequestSettings< BoolResponse > settings ={}) Edits command permissions for a specific command for your application in a guild. https://discord.com/developers/docs/interactions/slash-commands#edit-application-command-permissions |
ArrayResponse< ServerAppCommandPermissions > | getServerAppCommandPermissions(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, RequestSettings< ArrayResponse< ServerAppCommandPermissions >> settings ={}) Fetches command permissions for all commands for your application in a guild. https://discord.com/developers/docs/interactions/slash-commands#get-guild-application-command-permissions |
ObjectResponse< ServerAppCommandPermissions > | getAppCommandPermissions(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, RequestSettings< ObjectResponse< ServerAppCommandPermissions >> settings ={}) Fetches command permissions for a specific command for your application in a guild. https://discord.com/developers/docs/interactions/slash-commands#get-application-command-permissions |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | createAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, bool defaultPermission =true, AppCommand::Type type =AppCommand::Type::NONE, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
template <typename Options =const AppCommand::EmptyOptions> ObjectResponse< AppCommand > | editAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, std::string name, std::string description, Options options =(std::nullptr_t) nullptr, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
ArrayResponse< AppCommand > | getAppCommands(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, RequestSettings< ArrayResponse< AppCommand >> settings ={}) |
ObjectResponse< AppCommand > | getAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, RequestSettings< ObjectResponse< AppCommand >> settings ={}) |
BoolResponse | deleteAppCommand(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, Snowflake< AppCommand > commandID, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | bulkOverwriteServerAppCommands(Snowflake< DiscordObject >::RawType applicationID, Snowflake< Server > serverID, std::vector< AppCommand > commands, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | bulkOverwriteGlobalAppCommands(Snowflake< DiscordObject >::RawType applicationID, std::vector< AppCommand > commands, RequestSettings< BoolResponse > settings ={}) |
ObjectResponse< User > | createStageInstance(Snowflake< Channel > channelID, std::string topic, StageInstance::PrivacyLevel privacyLevel =StageInstance::PrivacyLevel::NotSet, RequestSettings< ObjectResponse< User >> settings ={}) |
ObjectResponse< StageInstance > | getStageInstance(Snowflake< Channel > channelID, RequestSettings< ObjectResponse< StageInstance >> settings ={}) |
BoolResponse | editStageInstance(Snowflake< Channel > channelID, std::string topic, StageInstance::PrivacyLevel privacyLevel =StageInstance::PrivacyLevel::NotSet, RequestSettings< BoolResponse > settings ={}) |
BoolResponse | deleteStageInstance(Snowflake< Channel > channelID, RequestSettings< BoolResponse > settings ={}) |
void | updateStatus(std::string gameName ="", uint64_t idleSince =0, Status status =online, bool afk =false) |
void | requestServerMembers(ServerMembersRequest request) |
void | getServerBanner(Snowflake< Server > serverID, std::string serverBanner, std::string format, std::function< void(StandardResponse &)> callback) |
void | getServerBanner(Server & server, std::string format) |
void | waitTilReady() |
const bool | isReady() |
const bool | isQuiting() |
const bool | isBot() |
const Snowflake< User > | getID() |
void | setShardID(int _shardID, int _shardCount) |
const int | getShardID() |
const int | getShardCount() |
const bool | hasIntents() |
const IntentsRaw | getIntents() |
void | setIntents(IntentsRaw newIntents) |
void | quit() |
template <class Container ,typename T =typename Container::value_type> void | setIntents(const Container & listOfIntents) |
template <typename... Types> void | setIntents(Intent first, Intent second, Types... others) |
template <class Handler ,class... Types> void | useCompression(Types &&... arguments) |
void | useCompression(bool value =true) |
template <class Handler ,class... Types> void | setScheduleHandler(Types &&... arguments) |
GenericScheduleHandler & | getScheduleHandler() |
void | unschedule(Timer & timer) |
std::shared_ptr< ServerCache > | createServerCache() |
void | setServerCache(std::shared_ptr< ServerCache > cache) |
std::shared_ptr< ServerCache > & | getServerCache() |
constexpr nonstd::string_view | getCDN_URL() |
Protected Functions inherited from SleepyDiscord::BaseDiscordClient
Name | |
---|---|
virtual void | onDepletedRequestSupply(const Route::Bucket & bucket, time_t timeTilReset) |
virtual void | onExceededRateLimit(bool global, std::time_t timeTilRetry, Request request, bool & continueRequest) |
virtual void | onReady(Ready readyData) |
virtual void | onResumed() |
virtual void | onDeleteServer(UnavailableServer server) |
virtual void | onEditServer(Server server) |
virtual void | onBan(Snowflake< Server > serverID, User user) |
virtual void | onUnban(Snowflake< Server > serverID, User user) |
virtual void | onMember(Snowflake< Server > serverID, ServerMember member) |
virtual void | onRemoveMember(Snowflake< Server > serverID, User user) |
virtual void | onEditMember(Snowflake< Server > serverID, User user, std::vector< Snowflake< Role >> roles, std::string nick) |
virtual void | onRole(Snowflake< Server > serverID, Role role) |
virtual void | onDeleteRole(Snowflake< Server > serverID, Snowflake< Role > roleID) |
virtual void | onEditRole(Snowflake< Server > serverID, Role role) |
virtual void | onEditEmojis(Snowflake< Server > serverID, std::vector< Emoji > emojis) |
virtual void | onMemberChunk(ServerMembersChunk memberChunk) |
virtual void | onDeleteChannel(Channel channel) |
virtual void | onEditChannel(Channel channel) |
virtual void | onPinMessage(Snowflake< Channel > channelID, std::string lastPinTimestamp) |
virtual void | onPresenceUpdate(PresenceUpdate presenseUpdate) |
virtual void | onEditUser(User user) |
virtual void | onEditUserSettings(const json::Value & jsonMessage) |
virtual void | onEditVoiceState(VoiceState & state) |
virtual void | onTyping(Snowflake< Channel > channelID, Snowflake< User > userID, time_t timestamp) |
virtual void | onDeleteMessages(Snowflake< Channel > channelID, std::vector< Snowflake< Message >> messages) |
virtual void | onEditMessage(MessageRevisions revisioins) |
virtual void | onEditVoiceServer(VoiceServerUpdate & update) |
virtual void | onReaction(Snowflake< User > userID, Snowflake< Channel > channelID, Snowflake< Message > messageID, Emoji emoji) |
virtual void | onDeleteReaction(Snowflake< User > userID, Snowflake< Channel > channelID, Snowflake< Message > messageID, Emoji emoji) |
virtual void | onDeleteAllReaction(Snowflake< Server > serverID, Snowflake< Channel > channelID, Snowflake< Message > messageID) |
virtual void | onServer(Server server) |
virtual void | onChannel(Channel channel) |
virtual void | onInteraction(Interaction interaction) |
virtual void | onAppCommand(AppCommand appCommand) |
virtual void | onEditAppCommand(AppCommand appCommand) |
virtual void | onDeleteAppCommand(AppCommand appCommand) |
virtual void | onStageInstance(StageInstance instance) |
virtual void | onDeleteStageInstance(StageInstance instance) |
virtual void | onEditStageInstance(StageInstance instance) |
virtual void | onUnknownEvent(std::string name, const json::Value & data) |
virtual void | onDispatch(const json::Value & t, json::Value & d) |
virtual void | onHeartbeat() |
virtual void | onHeartbeatAck() |
virtual void | onInvaldSession() |
virtual void | onDisconnect() |
virtual void | onResume() |
virtual void | onQuit() |
virtual void | onRestart() |
virtual void | onResponse(Response response) |
virtual void | sleep(const unsigned int milliseconds) |
virtual void | fileRead(const char path, std::string const file) |
virtual void | tick(float deltaTime) |
virtual void | onError(ErrorCode errorCode, const std::string errorMessage) |
virtual void | processMessage(const std::string & message) override |
virtual void | processMessage(const WebSocketMessage message) override |
virtual void | processCloseCode(const int16_t code) override |
void | heartbeat() |
void | sendHeartbeat() |
void | resetHeartbeatValues() |
std::string | getToken() |
void | setToken(const std::string & value) |
void | start(const std::string _token, const char maxNumOfThreads =DEFAULT_THREADS, int _shardID =0, int _shardCount =0) |
virtual void | handleFailToConnect() override |
void | reconnect(const unsigned int status =4900) |
void | initialize(GenericMessageReceiver *& messageProcessor) const |
void | processMessage(GenericMessageReceiver *& messageProcessor, const std::string & message) const |
void | processCloseCode(GenericMessageReceiver *& messageProcessor, const int16_t & code) const |
virtual const time_t | getEpochTimeMillisecond() |
Public Functions inherited from SleepyDiscord::GenericMessageReceiver
Name | |
---|---|
virtual | ~GenericMessageReceiver() =default |
virtual void | initialize() |
virtual void | handleFailToConnect() |
virtual void | processMessage(const std::string & message) =0 |
virtual void | processCloseCode(const int16_t ) |
virtual void | processMessage(const WebSocketMessage message) |
Protected Functions inherited from SleepyDiscord::GenericMessageReceiver
Name | |
---|---|
const time_t | getRetryDelay() |
Public Attributes inherited from SleepyDiscord::GenericMessageReceiver
Name | |
---|---|
WebsocketConnection | connection |
Protected Attributes inherited from SleepyDiscord::GenericMessageReceiver
Name | |
---|---|
int | consecutiveReconnectsCount |
Timer | reconnectTimer |
Public Types Documentation​
using TimerPointer​
using SleepyDiscord::WebsocketppDiscordClient::TimerPointer = std::weak_ptr<websocketpp::lib::asio::steady_timer>;
Public Functions Documentation​
function WebsocketppDiscordClient​
WebsocketppDiscordClient() =default
function WebsocketppDiscordClient​
WebsocketppDiscordClient(
const std::string token,
const char numOfThreads =SleepyDiscord::DEFAULT_THREADS
)
function ~WebsocketppDiscordClient​
~WebsocketppDiscordClient()
function run​
virtual void run() override
Reimplements: SleepyDiscord::BaseDiscordClient::run
function schedule​
virtual Timer schedule(
TimedTask code,
const time_t milliseconds
) override
Reimplements: SleepyDiscord::BaseDiscordClient::schedule
function postTask​
inline virtual void postTask(
PostableTask code
) override
Reimplements: SleepyDiscord::BaseDiscordClient::postTask
Updated on 13 April 2022 at 18:39:59 UTC