►Ndpp | The main namespace for D++ functions. classes and types |
►Nevents | The events namespace holds the internal event handlers for each websocket event. These are handled internally and also dispatched to the user code if the event is hooked |
Capplication_command_create | |
Capplication_command_delete | |
Capplication_command_update | |
Cchannel_create | |
Cchannel_delete | |
Cchannel_pins_update | |
Cchannel_update | |
Cevent | An event object represents an event handled internally, passed from the websocket e.g. MESSAGE_CREATE |
Cguild_ban_add | |
Cguild_ban_remove | |
Cguild_create | |
Cguild_delete | |
Cguild_emojis_update | |
Cguild_integrations_update | |
Cguild_join_request_delete | |
Cguild_member_add | |
Cguild_member_remove | |
Cguild_member_update | |
Cguild_members_chunk | |
Cguild_role_create | |
Cguild_role_delete | |
Cguild_role_update | |
Cguild_stickers_update | |
Cguild_update | |
Cintegration_create | |
Cintegration_delete | |
Cintegration_update | |
Cinteraction_create | |
Cinvite_create | |
Cinvite_delete | |
Clogger | |
Cmessage_create | |
Cmessage_delete | |
Cmessage_delete_bulk | |
Cmessage_reaction_add | |
Cmessage_reaction_remove | |
Cmessage_reaction_remove_all | |
Cmessage_reaction_remove_emoji | |
Cmessage_update | |
Cpresence_update | |
Cready | |
Cresumed | |
Cstage_instance_create | |
Cstage_instance_delete | |
Cstage_instance_update | |
Cthread_create | |
Cthread_delete | |
Cthread_list_sync | |
Cthread_member_update | |
Cthread_members_update | |
Cthread_update | |
Ctyping_start | |
Cuser_update | |
Cvoice_server_update | |
Cvoice_state_update | |
Cwebhooks_update | |
►Nutility | Utility helper functions, generally for logging |
Ciconhash | Store a 128 bit icon hash (profile picture, server icon etc) as a 128 bit binary value made of two uint64_t. Has a constructor to build one from a string, and a method to fetch the value back in string form |
Cuptime | A class used to represent an uptime in hours, minutes, seconds and days, with helper functions to convert from time_t and display as a string |
Cactivity | An activity is a representation of what a user is doing. It might be a game, or a website, or a movie. Whatever |
Capp_team | Represents a team of users who maintain a bot/application |
Capplication | The application class represents details of a bot application |
Capplication_command_create_t | Create application slash command |
Capplication_command_delete_t | Application slash command deleted |
Capplication_command_update_t | Update application slash command |
Cattachment | Represents an attachment in a dpp::message |
Caudit_change | Defines audit log changes |
Caudit_entry | An individual audit log entry |
Caudit_extra | Extra information for an audit log entry |
Cauditlog | The auditlog class represents the audit log entry of a guild |
Cautocomplete_interaction | An auto complete interaction |
Cautocomplete_t | Discord requests that we fill a list of auto completion choices for a command option |
Cban | The ban class represents a ban on a guild |
Cbucket_t | A rate limit bucket. The library builds one of these for each endpoint |
Cbutton_click_t | Click on button |
Ccache | A cache object maintains a cache of dpp::managed objects. This is for example users, channels or guilds |
Ccache_policy_t | Represents the caching policy of the cluster |
Cchannel | A definition of a discord channel |
Cchannel_create_t | Create channel |
Cchannel_delete_t | Delete channel |
Cchannel_pins_update_t | Channel pins update |
Cchannel_update_t | Update channel |
Ccluster | The cluster class represents a group of shards and a command queue for sending and receiving commands from discord via HTTP. You should usually instantiate a cluster object at the very least to make use of the library |
Ccommand_data_option | Values in the command interaction. These are the values specified by the user when actually issuing the command on a channel or in DM |
Ccommand_info_t | Represents the details of a command added to the command handler class |
Ccommand_interaction | Details of a command within an interaction. This subobject represents the application command associated with the interaction |
Ccommand_option | Each command option is a command line parameter. It can have a type (see dpp::command_option_type), a name, a description, can be required or optional, and can have zero or more choices (for multiple choice), plus options. Adding options acts like sub-commands and can contain more options |
Ccommand_option_choice | This struct represents choices in a multiple choice option for a command parameter. It has both a string name, and a value parameter which is a variant, meaning it can hold different potential types (see dpp::command_value) that you can retrieve with std::get() |
Ccommand_permission | Application command permissions allow you to enable or disable commands for specific users or roles within a guild |
Ccommand_resolved | Resolved snowflake ids to users, guild members, roles and channels |
Ccommand_source | Represents the sending source of a command. This is passed to any command handler and should be passed back to commandhandler::reply(), allowing the reply method to route any replies back to the origin, which may be a slash command or a message. Both require different response facilities but we want this to be transparent if you use the command handler class |
Ccommandhandler | The commandhandler class represents a group of commands, prefixed or slash commands with handling functions |
►Ccomponent | Represents the component object. A component is a clickable button or drop down list within a discord message, where the buttons emit on_button_click events when the user interacts with them |
Cinner_emoji | |
Ccomponent_interaction | A button click for a button component |
Cconfirmation | Confirmation object represents any true or false simple REST request |
Cconfirmation_callback_t | The results of a REST call wrapped in a convenient struct |
Cconnection | The connection object that the user has attached |
Cdiscord_client | Implements a discord client. Each discord_client connects to one shard and derives from a websocket client |
Cdiscord_voice_client | Implements a discord voice connection. Each discord_voice_client connects to one voice channel and derives from a websocket client |
Cdispatcher | The dispatcher class contains a set of std::functions representing hooked events that the user code is interested in. These are modified via the on_eventname style methods in the cluster class |
Cdtemplate | Represents a guild template |
Cembed | A rich embed for display within a dpp::message |
Cembed_author | Author within a dpp::embed object |
Cembed_field | A dpp::embed may contain zero or more fields |
Cembed_footer | A footer in a dpp::embed |
Cembed_image | An video, image or thumbnail in a dpp::embed |
Cembed_provider | Embed provider in a dpp::embed. Received from discord but cannot be sent |
Cemoji | Represents an emoji for a dpp::guild |
Cerror_detail | The details of a field in an error response |
Cerror_info | The full details of an error from a REST response |
Cetf_buffer | Represents a buffer of bytes being encoded into ETF |
Cetf_parser | The etf_parser class can serialise and deserialise ETF (Erlang Term Format) into and out of an nlohmann::json object, so that layers above the websocket don't have to be any different for handling ETF |
Cevent_dispatch_t | Base event parameter struct. Each event you receive from the library will have its parameter derived from this class. The class contains the raw event data, and a pointer to the current shard's dpp::discord_client object. You can also use this object to cancel the current event, meaning that any listeners after yours do not get notified of the current event if you call it |
Cexception | The dpp::exception class derives from std::exception and supports some other ways of passing in error details such as via std::string |
Cgateway | Represents the various information from the 'get gateway bot' api call |
Cguild | Represents a guild on Discord (AKA a server) |
Cguild_ban_add_t | Guild ban add |
Cguild_ban_remove_t | Guild ban remove |
Cguild_command_permissions | Returned when fetching the permissions for a command in a guild |
Cguild_create_t | Create guild |
Cguild_delete_t | Delete guild |
Cguild_emojis_update_t | Guild emojis update |
Cguild_integrations_update_t | Guild integrations update |
Cguild_join_request_delete_t | Guild join request delete (user declined membership screening) |
Cguild_member | Represents dpp::user membership upon a dpp::guild |
Cguild_member_add_t | Guild member add |
Cguild_member_remove_t | Guild member remove |
Cguild_member_update_t | Guild member update |
Cguild_members_chunk_t | Guild members chunk |
Cguild_role_create_t | Guild role create |
Cguild_role_delete_t | Guild role delete |
Cguild_role_update_t | Guild role update |
Cguild_stickers_update_t | Update guild stickers |
Cguild_update_t | Guild update |
Cguild_widget | Represents a guild widget, simple web widget of member list |
Chttp_request | A HTTP request |
Chttp_request_completion_t | The result of any HTTP request. Contains the headers, vital rate limit figures, and returned request body |
Cintegration | Represents an integration on a guild, e.g. a connection to twitch |
Cintegration_app | An application that has been integrated |
Cintegration_create_t | Integration create |
Cintegration_delete_t | Integration delete |
Cintegration_update_t | Integration update |
Cinteraction | An interaction represents a user running a command and arrives via the dpp::cluster::on_interaction_create event |
Cinteraction_create_t | Create interaction |
Cinteraction_response | A response to an interaction, used to reply to a command and initiate a message, which can be hidden from others (ephemeral) or visible to all |
Cinvite | Represents an invite to a discord guild or channel |
Cinvite_create_t | Invite create |
Cinvite_delete_t | Invite delete |
Clog_t | Log messages |
Cmanaged | The managed class is the base class for various types that can be stored in a cache that are identified by a dpp::snowflake id |
►Cmessage | Represents messages sent and received on Discord |
Callowed_ref | Allowed mentions detils |
Cmessage_interaction_struct | Reference to an interaction |
Cmessage_ref | Reference to another message, e.g. a reply |
Cmessage_create_t | Create message |
Cmessage_delete_bulk_t | Message delete bulk |
Cmessage_delete_t | Message Deleted |
Cmessage_reaction_add_t | Message reaction add |
Cmessage_reaction_remove_all_t | Message remove all reactions |
Cmessage_reaction_remove_emoji_t | Message remove emoji |
Cmessage_reaction_remove_t | Message reaction remove |
Cmessage_update_t | Message update |
Cparam_info | Details of a command parameter used in registration. Note that for non-slash commands optional parameters can only be at the end of the list of parameters |
Cpermission_overwrite | Channel permission overwrites |
Cpresence | Represents user presence, e.g. what game they are playing and if they are online |
Cpresence_update_t | Presence update |
Cprune | Defines a request to count prunable users, or start a prune operation |
Creaction | Represets a reaction to a dpp::message |
Cready_t | Session ready |
Crequest_queue | The request_queue class manages rate limits and marshalls HTTP requests that have been built as http_request objects |
Cresolved_user | Dpp::resolved_user contains both a dpp::guild_member and a dpp::user. The user can be used to obtain in-depth user details such as if they are nitro, and the guild member information to check their roles on a guild etc. The Discord API provides both if a parameter is a user ping, so we offer both in a combined structure |
Cresumed_t | Session resumed |
Crole | Represents a role within a dpp::guild |
Cselect_click_t | Click on select |
►Cselect_option | An option for a select component |
Cinner_select_emoji | Emoji definition. To set an emoji on your button you must set one of either the name or id fields. The easiest way is to use the component::set_emoji method |
Cslashcommand | Represents an application command, created by your bot either globally, or on a guild |
Cssl_client | Implements a simple non-blocking SSL stream client |
Cstage_instance | A stage instance. Stage instances are like a conference facility, with moderators/speakers and listeners |
Cstage_instance_create_t | Create stage instance |
Cstage_instance_delete_t | Delete stage instance |
Cstage_instance_update_t | Update stage instance |
Csticker | Represents stickers received in messages |
Csticker_pack | Represents a sticker pack (the built in groups of stickers that all nitro users get to use) |
Cteam_member | Represents a team member on a team who maintain a bot/application |
Cthread_create_t | Thread Create |
Cthread_delete_t | Thread Delete |
Cthread_list_sync_t | Thread List Sync |
Cthread_member | Represents membership of a user with a thread |
Cthread_member_update_t | Thread Member Update |
Cthread_members_update_t | Thread Members Update |
Cthread_metadata | Metadata for threads |
Cthread_update_t | Thread Update |
Ctype_punner | A horrible structure used within the ETF parser to convert uint64_t to double and back. This is horrible, but it is the official way erlang term format does this, so we can't really mess with it much |
Ctyping_start_t | Typing start |
Cuser | Represents a user on discord. May or may not be a member of a dpp::guild |
Cuser_update_t | User update |
Cvoice_buffer_send_t | Voice buffer send |
Cvoice_client_disconnect_t | Voice client disconnect event |
Cvoice_client_speaking_t | Voice client speaking event |
Cvoice_out_packet | An opus-encoded RTP packet to be sent out to a voice channel |
Cvoice_ready_t | Voice user talking |
Cvoice_receive_t | Voice receive packet |
Cvoice_server_update_t | Voice server update |
Cvoice_state_update_t | Voice state update |
Cvoice_track_marker_t | Voice state update |
Cvoice_user_talking_t | Voice user talking |
Cvoiceconn | Represents a connection to a voice channel. A client can only connect to one voice channel per guild at a time, so these are stored in a map in the dpp::discord_client keyed by guild_id |
Cvoiceregion | Represents a voice region on discord |
Cvoicestate | Represents the voice state of a user on a guild These are stored in the dpp::guild object, and accessible there, or via dpp::channel::get_voice_members |
Cwebhook | Represents a discord webhook |
Cwebhooks_update_t | Webhooks update |
Cwebsocket_client | Implements a websocket client based on the SSL client |
Cwelcome_channel_t | Defines a channel on a server's welcome screen |
Cwelcome_screen_t | Defines a server's welcome screen |
►Nhttplib | |
►Ndetail | |
Cci | |
CClient | |
►CClientImpl | |
CSocket | |
CContentReader | |
CDataSink | |
CMultipartFormData | |
CRequest | |
CResponse | |
CResult | |
CServer | |
CStream | |
CTaskQueue | |
CThreadPool | |