12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- ============
- Interactions
- ============
- Interactions are utilized in message components and slash commands.
- Attributes
- ==========
- +----------------+----------------------+------------------------------------------------------+
- | name | type | description |
- +================+======================+======================================================+
- | id | string | id of the interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | application_id | string | id of the application associated to the interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | int | type | type of interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | data | ``?InteractionData`` | data associated with the interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | guild | ``?Guild`` | guild interaction was triggered from, null if DM. |
- +----------------+----------------------+------------------------------------------------------+
- | channel | ``?Channel`` | channel interaction was triggered from. |
- +----------------+----------------------+------------------------------------------------------+
- | member | ``?Member`` | member that triggered interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | user | ``User`` | user that triggered interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | token | string | internal token for responding to interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | version | int | version of interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | message | ``?Message`` | message that triggered interaction. |
- +----------------+----------------------+------------------------------------------------------+
- | locale | ?string | The selected language of the invoking user. |
- +----------------+----------------------+------------------------------------------------------+
- | guild_locale | ?string | The guild’s preferred locale, if invoked in a guild. |
- +----------------+----------------------+------------------------------------------------------+
- The locale list can be seen on `Discord API reference <https://discord.com/developers/docs/reference#locales>`_.
- Functions on interaction create
- ===============================
- The following functions are used to respond an interaction after being created ``Event::INTERACTION_CREATE``, responding interaction with wrong type throws a ``LogicException``
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- | name | description | valid for interaction type |
- +==============================================================================================+=============================================================================+==================================================================+
- | ``acknowledgeWithResponse(?bool $ephemeral)`` | acknowledges the interaction, creating a placeholder response to be updated | ``APPLICATION_COMMAND``, ``MESSAGE_COMPONENT``, ``MODAL_SUBMIT`` |
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- | ``acknowledge()`` | defer the interaction | ``MESSAGE_COMPONENT``, ``MODAL_SUBMIT`` |
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- | ``respondWithMessage(MessageBuilder $builder, ?bool $ephemeral)`` | responds to the interaction with a message. ephemeral is default false | ``APPLICATION_COMMAND``, ``MESSAGE_COMPONENT``, ``MODAL_SUBMIT`` |
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- | ``autoCompleteResult(array $choices)`` | responds a suggestion to options with auto complete | ``APPLICATION_COMMAND_AUTOCOMPLETE`` |
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- | ``showModal(string $title, string $custom_id, array $components, ?callable $submit = null)`` | responds to the interaction with a popup modal | ``MODAL_SUBMIT`` |
- +----------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------+------------------------------------------------------------------+
- Functions after interaction response
- ====================================
- The following functions can be only used after interaction respond above, otherwise throws a ``RuntimeException`` “Interaction has not been responded to.”
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | name | description | return |
- +========================================================================+================================================================================================+======================+
- | ``updateMessage(MessageBuilder $message)`` | updates the message the interaction was triggered from. only for message component interaction | ``Promise<void>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``getOriginalResponse()`` | gets the original interaction response | ``Promise<Message>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``updateOriginalResponse(MessageBuilder $message)`` | updates the original interaction response | ``Promise<Message>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``deleteOriginalResponse()`` | deletes the original interaction response | ``Promise<void>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``sendFollowUpMessage(MessageBuilder $builder, ?bool $ephemeral)`` | sends a follow up message to the interaction. ephemeral is defalt false | ``Promise<Message>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``getFollowUpMessage(string $message_id)`` | gets a non ephemeral follow up message from the interaction | ``Promise<Message>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``updateFollowUpMessage(string $message_id, MessageBuilder $builder)`` | updates the follow up message of the interaction | ``Promise<Message>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
- | ``deleteFollowUpMessage(string $message_id)`` | deletes a follow up message from the interaction | ``Promise<void>`` |
- +------------------------------------------------------------------------+------------------------------------------------------------------------------------------------+----------------------+
|