Class GenericInteractionCreateEvent
- java.lang.Object
-
- net.dv8tion.jda.api.events.Event
-
- net.dv8tion.jda.api.events.interaction.GenericInteractionCreateEvent
-
- All Implemented Interfaces:
ISnowflake,GenericEvent,Interaction
- Direct Known Subclasses:
GenericComponentInteractionCreateEvent,SlashCommandEvent
@Incubating public class GenericInteractionCreateEvent extends Event implements Interaction
Indicates that anInteractionwas created in a channel.
Every interaction event is derived from this event.Requirements
To receive these events, you must unset the Interactions Endpoint URL in your application dashboard. You can simply remove the URL for this endpoint in your settings at the Discord Developers Portal.
-
-
Constructor Summary
Constructors Constructor Description GenericInteractionCreateEvent​(JDA api, long responseNumber, Interaction interaction)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ReplyActiondeferReply()Acknowledge this interaction and defer the reply to a later time.AbstractChannelgetChannel()The channel this interaction happened in.GuildgetGuild()TheGuildthis interaction happened in.InteractionHookgetHook()TheInteractionHookwhich can be used to send deferred replies or followup messages.longgetIdLong()The Snowflake id of this entity.InteractiongetInteraction()TheInteractioninstance.MembergetMember()TheMemberwho caused this interaction.java.lang.StringgetToken()The interaction token used for responding to an interaction.intgetTypeRaw()The raw interaction type.UsergetUser()TheUserwho caused this interaction.booleanisAcknowledged()Whether this interaction has already been acknowledged.-
Methods inherited from class net.dv8tion.jda.api.events.Event
getJDA, getResponseNumber
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.dv8tion.jda.api.interactions.Interaction
deferReply, getChannelType, getGuildChannel, getJDA, getMessageChannel, getPrivateChannel, getTextChannel, getType, getVoiceChannel, isFromGuild, reply, reply, replyEmbeds, replyEmbeds, replyFormat
-
Methods inherited from interface net.dv8tion.jda.api.entities.ISnowflake
getId, getTimeCreated
-
-
-
-
Constructor Detail
-
GenericInteractionCreateEvent
public GenericInteractionCreateEvent​(@Nonnull JDA api, long responseNumber, @Nonnull Interaction interaction)
-
-
Method Detail
-
getInteraction
@Nonnull public Interaction getInteraction()
TheInteractioninstance.
Note that this event is a delegate which implements the same interface.- Returns:
- The
Interaction
-
getToken
@Nonnull public java.lang.String getToken()
Description copied from interface:InteractionThe interaction token used for responding to an interaction.- Specified by:
getTokenin interfaceInteraction- Returns:
- The interaction token
-
getTypeRaw
public int getTypeRaw()
Description copied from interface:InteractionThe raw interaction type.
It is recommended to useInteraction.getType()instead.- Specified by:
getTypeRawin interfaceInteraction- Returns:
- The raw interaction type
-
getGuild
@Nullable public Guild getGuild()
Description copied from interface:InteractionTheGuildthis interaction happened in.
This is null in direct messages.- Specified by:
getGuildin interfaceInteraction- Returns:
- The
Guildor null
-
getChannel
@Nullable public AbstractChannel getChannel()
Description copied from interface:InteractionThe channel this interaction happened in.
This is currently never null, but might be nullable in the future.- Specified by:
getChannelin interfaceInteraction- Returns:
- The channel or null if this interaction is not from a channel context
-
getHook
@Nonnull public InteractionHook getHook()
Description copied from interface:InteractionTheInteractionHookwhich can be used to send deferred replies or followup messages.- Specified by:
getHookin interfaceInteraction- Returns:
- The interaction hook
-
getMember
@Nullable public Member getMember()
Description copied from interface:InteractionTheMemberwho caused this interaction.
This is null if the interaction is not from a guild.- Specified by:
getMemberin interfaceInteraction- Returns:
- The
Member
-
getUser
@Nonnull public User getUser()
Description copied from interface:InteractionTheUserwho caused this interaction.- Specified by:
getUserin interfaceInteraction- Returns:
- The
User
-
getIdLong
public long getIdLong()
Description copied from interface:ISnowflakeThe Snowflake id of this entity. This is unique to every entity and will never change.- Specified by:
getIdLongin interfaceISnowflake- Returns:
- Long containing the Id.
-
isAcknowledged
public boolean isAcknowledged()
Description copied from interface:InteractionWhether this interaction has already been acknowledged.
BothInteraction.deferReply()andInteraction.reply(String)acknowledge an interaction. Each interaction can only be acknowledged once.- Specified by:
isAcknowledgedin interfaceInteraction- Returns:
- True, if this interaction has already been acknowledged
-
deferReply
@Nonnull public ReplyAction deferReply()
Description copied from interface:InteractionAcknowledge this interaction and defer the reply to a later time.
This will send a<Bot> is thinking...message in chat that will be updated later through eitherInteractionHook.editOriginal(String)orWebhookClient.sendMessage(String).You can use
deferReply(true)to send a deferred ephemeral reply. If your initial deferred message is not ephemeral it cannot be made ephemeral later. Your first message to theInteractionHookwill inherit whether the message is ephemeral or not from this deferred reply.You only have 3 seconds to acknowledge an interaction!
When the acknowledgement is sent after the interaction expired, you will receiveErrorResponse.UNKNOWN_INTERACTION.Use
Interaction.reply(String)to reply directly.- Specified by:
deferReplyin interfaceInteraction- Returns:
ReplyAction
-
-