D++ (DPP)
C++ Discord API Bot Library
|
Create interaction. More...
#include <dispatcher.h>
Public Member Functions | |
interaction_create_t (class discord_client *client, const std::string &raw) | |
void | reply (command_completion_event_t callback=utility::log_error()) const |
Acknowledge interaction without displaying a message to the user, for use with button and select menu components. More... | |
void | reply (interaction_response_type t, const message &m, command_completion_event_t callback=utility::log_error()) const |
Send a reply for this interaction. More... | |
void | reply (interaction_response_type t, const std::string &mt, command_completion_event_t callback=utility::log_error()) const |
Send a reply for this interaction. More... | |
void | reply (const message &m, command_completion_event_t callback=utility::log_error()) const |
Send a reply for this interaction. Uses the default type of dpp::ir_channel_message_with_source, a simple message reply. More... | |
void | reply (const std::string &mt, command_completion_event_t callback=utility::log_error()) const |
Send a reply for this interaction. Uses the default type of dpp::ir_channel_message_with_source, a simple message reply. More... | |
void | dialog (const interaction_modal_response &mr, command_completion_event_t callback=utility::log_error()) const |
Reply to interaction with a dialog box. More... | |
void | edit_response (const message &m, command_completion_event_t callback=utility::log_error()) const |
Edit the response for this interaction. More... | |
void | edit_response (const std::string &mt, command_completion_event_t callback=utility::log_error()) const |
Edit the response for this interaction. More... | |
void | thinking (bool ephemeral=false, command_completion_event_t callback=utility::log_error()) const |
Set the bot to 'thinking' state where you have up to 15 minutes to respond. More... | |
void | get_original_response (command_completion_event_t callback) const |
Get original response message for this interaction. More... | |
void | edit_original_response (const message &m, command_completion_event_t callback=utility::log_error()) const |
Edit original response message for this interaction. More... | |
void | delete_original_response (command_completion_event_t callback=utility::log_error()) const |
Delete original response message for this interaction. This cannot be used on an ephemeral interaction response. More... | |
virtual const command_value & | get_parameter (const std::string &name) const |
Get a command line parameter. More... | |
virtual | ~interaction_create_t ()=default |
Destroy this object. More... | |
const event_dispatch_t & | cancel_event () const |
Cancels the event in progress. Any other attached lambdas for this event after this one are not called. Note that event cancellation is a thread local state, and not stored in the object (because object which can be cancelled is const during the event, and cannot itself contain the changeable state). More... | |
bool | is_cancelled () const |
Returns true if the event is cancelled. Note that event cancellation is a thread local state, and not stored in the object (because object which can be cancelled is const during the event, and cannot itself contain the changeable state). More... | |
Public Attributes | |
interaction | command |
command interaction More... | |
const std::string | raw_event |
Raw event data. If you are using json on your websocket, this will contain json, and if you are using ETF as your websocket protocol, it will contain raw ETF data. More... | |
class discord_client * | from |
Shard the event came from. Note that for some events, notably voice events, this may be nullptr. More... | |
Create interaction.
dpp::interaction_create_t::interaction_create_t | ( | class discord_client * | client, |
const std::string & | raw | ||
) |
Constructor
client | The shard the event originated on |
raw | Raw event text as JSON |
|
virtualdefault |
Destroy this object.
|
inherited |
Cancels the event in progress. Any other attached lambdas for this event after this one are not called. Note that event cancellation is a thread local state, and not stored in the object (because object which can be cancelled is const
during the event, and cannot itself contain the changeable state).
void dpp::interaction_create_t::delete_original_response | ( | command_completion_event_t | callback = utility::log_error() | ) | const |
Delete original response message for this interaction. This cannot be used on an ephemeral interaction response.
callback | Function to call when the API call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::dialog | ( | const interaction_modal_response & | mr, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Reply to interaction with a dialog box.
mr | Dialog box response to send |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::edit_original_response | ( | const message & | m, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Edit original response message for this interaction.
m | Message object to send. Not all fields are supported by Discord. |
callback | Function to call when the API call completes. On success the callback will contain a dpp::message object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::edit_response | ( | const message & | m, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Edit the response for this interaction.
m | Message object to send. Not all fields are supported by Discord. |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::edit_response | ( | const std::string & | mt, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Edit the response for this interaction.
mt | The string value to send, for simple text only messages |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::get_original_response | ( | command_completion_event_t | callback | ) | const |
Get original response message for this interaction.
callback | Function to call when the API call completes. On success the callback will contain a dpp::message object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
|
virtual |
Get a command line parameter.
name | The command line parameter to retrieve |
|
inherited |
Returns true if the event is cancelled. Note that event cancellation is a thread local state, and not stored in the object (because object which can be cancelled is const
during the event, and cannot itself contain the changeable state).
void dpp::interaction_create_t::reply | ( | command_completion_event_t | callback = utility::log_error() | ) | const |
Acknowledge interaction without displaying a message to the user, for use with button and select menu components.
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::reply | ( | const message & | m, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Send a reply for this interaction. Uses the default type of dpp::ir_channel_message_with_source, a simple message reply.
m | Message object to send. Not all fields are supported by Discord. |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::reply | ( | const std::string & | mt, |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Send a reply for this interaction. Uses the default type of dpp::ir_channel_message_with_source, a simple message reply.
mt | The string value to send, for simple text only messages |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::reply | ( | interaction_response_type | t, |
const message & | m, | ||
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Send a reply for this interaction.
t | Type of reply to send |
m | Message object to send. Not all fields are supported by Discord. |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::reply | ( | interaction_response_type | t, |
const std::string & | mt, | ||
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Send a reply for this interaction.
t | Type of reply to send |
mt | The string value to send, for simple text only messages |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
void dpp::interaction_create_t::thinking | ( | bool | ephemeral = false , |
command_completion_event_t | callback = utility::log_error() |
||
) | const |
Set the bot to 'thinking' state where you have up to 15 minutes to respond.
ephemeral | True if the thinking state should be ephemeral |
callback | User function to execute when the api call completes. On success the callback will contain a dpp::confirmation object in confirmation_callback_t::value. On failure, the value is undefined and confirmation_callback_t::is_error() method will return true. You can obtain full error details with confirmation_callback_t::get_error(). |
interaction dpp::interaction_create_t::command |
command interaction
|
inherited |
Shard the event came from. Note that for some events, notably voice events, this may be nullptr.
|
inherited |
Raw event data. If you are using json on your websocket, this will contain json, and if you are using ETF as your websocket protocol, it will contain raw ETF data.