GlobalMessageEvent

Interaction event for global message context commands.

Localization

You can send localized replies using the user, guild and also any Locale, by using this event directly, but also the interaction hook, see LocalizableInteraction for more details and configuration.

An alternative to using this event is injecting an AppLocalizationContext in a parameter, or retrieving one using getLocalizationContext.

In both cases, you can configure the user and guild locales, using UserLocaleProvider and GuildLocaleProvider.

Rate limit cancellation

Although it is recommended to reject commands using ApplicationCommandFilter, you can also return the bucket token with cancelRateLimit if you want to avoid consuming bandwidth in certain conditions.

See also

Inheritors

Properties

Link copied to clipboard
Link copied to clipboard

Gets the interaction user as an InputUser.

Link copied to clipboard
open override val isRateLimitCancelled: Boolean
Link copied to clipboard
open override var localizationBundle: String?

If set, forces the specified localization bundle to be used.

Link copied to clipboard
open override var localizationPrefix: String?

If set, adds the specified prefix to the path of every localization call, useful to avoid using very long strings in every reply/edit.

Functions

Link copied to clipboard
open override fun cancelRateLimit()

Cancels the token consumption of the current rate limited interaction.

Link copied to clipboard
@Nonnull
open override fun deferReply(): ReplyCallbackAction
@Nonnull
@CheckReturnValue
open fun deferReply(p0: Boolean): ReplyCallbackAction
Link copied to clipboard
@Nullable
open override fun getChannel(): MessageChannelUnion?
Link copied to clipboard
@Nullable
open fun getChannelId(): String?
Link copied to clipboard
open override fun getChannelIdLong(): Long
Link copied to clipboard
@Nonnull
open fun getChannelType(): ChannelType
Link copied to clipboard
@Nonnull
open fun getCommandId(): String
Link copied to clipboard
open override fun getCommandIdLong(): Long
Link copied to clipboard
@Nonnull
open fun getCommandString(): String
Link copied to clipboard
@Nonnull
open override fun getCommandType(): Command.Type
Link copied to clipboard
open override fun getDefaultMessages(): DefaultMessages

Retrieves a DefaultMessages instance, using a locale suitable for messages sent to the user.

Link copied to clipboard
@Nonnull
open override fun getEntitlements(): MutableList<Entitlement>
Link copied to clipboard
@Nonnull
open fun getFullCommandName(): String
Link copied to clipboard
@Nullable
open override fun getGuild(): Guild?
Link copied to clipboard
@Nonnull
open fun getGuildChannel(): GuildChannel
Link copied to clipboard
@Nonnull
open override fun getGuildLocale(): DiscordLocale
Link copied to clipboard
open override fun getGuildMessage(localizationPath: String, vararg entries: Localization.Entry): String

Returns the localized message at the following path, using the guild's locale and parameters.

Link copied to clipboard
fun LocalizableInteraction.getGuildMessage(localizationPath: String, vararg entries: PairEntry): String
Link copied to clipboard
open override fun getHook(): LocalizableInteractionHook
Link copied to clipboard
@Nonnull
open fun getId(): String
Link copied to clipboard
open override fun getIdLong(): Long
Link copied to clipboard
@Nonnull
open override fun getInteraction(): MessageContextInteraction
Link copied to clipboard
@Nonnull
open override fun getJDA(): JDA
Link copied to clipboard
open override fun getLocalizationContext(bundleName: String, pathPrefix: String?): AppLocalizationContext

Returns a localization context for the provided bundle name and path prefix, using the locales from UserLocaleProvider.getDiscordLocale and GuildLocaleProvider.getDiscordLocale.

Link copied to clipboard
open override fun getLocalizedMessage(locale: Locale, localizationPath: String, vararg entries: Localization.Entry): String

Returns the localized message at the following path, using the provided locale and parameters.

open override fun getLocalizedMessage(locale: DiscordLocale, localizationPath: String, vararg entries: Localization.Entry): String

Returns the localized message at the following path, using the provided locale and parameters.

Link copied to clipboard
fun LocalizableAction.getLocalizedMessage(locale: Locale, localizationPath: String, vararg entries: PairEntry): String
fun LocalizableAction.getLocalizedMessage(locale: DiscordLocale, localizationPath: String, vararg entries: PairEntry): String
Link copied to clipboard
@Nullable
open override fun getMember(): Member?
Link copied to clipboard
@Nonnull
open fun getMessageChannel(): MessageChannel
Link copied to clipboard
@Nonnull
open override fun getName(): String
Link copied to clipboard
@Nullable
open fun getOption(@Nonnull p0: String): OptionMapping?
@Nullable
open fun <T : Any> getOption(@Nonnull p0: String, @Nonnull p1: Function<in OptionMapping, out T>): T?
open fun <T : Any> getOption(@Nonnull p0: String, @Nullable p1: T?, @Nonnull p2: Function<in OptionMapping, out T>): T
open fun <T : Any> getOption(@Nonnull p0: String, @Nullable p1: Supplier<out T>?, @Nonnull p2: Function<in OptionMapping, out T>): T
Link copied to clipboard
@Nonnull
open override fun getOptions(): MutableList<OptionMapping>
Link copied to clipboard
@Nonnull
open fun getOptionsByName(@Nonnull p0: String): MutableList<OptionMapping>
Link copied to clipboard
@Nonnull
open fun getOptionsByType(@Nonnull p0: OptionType): MutableList<OptionMapping>
Link copied to clipboard
open override fun getRawData(): DataObject?
Link copied to clipboard
open override fun getResponseNumber(): Long
Link copied to clipboard
@Nullable
open override fun getSubcommandGroup(): String?
Link copied to clipboard
@Nullable
open override fun getSubcommandName(): String?
Link copied to clipboard
@Nonnull
open override fun getTarget(): Message
Link copied to clipboard
@Nonnull
open override fun getTargetType(): ContextInteraction.ContextTarget
Link copied to clipboard
@Nonnull
open fun getTimeCreated(): OffsetDateTime
Link copied to clipboard
@Nonnull
open override fun getToken(): String
Link copied to clipboard
@Nonnull
open fun getType(): InteractionType
Link copied to clipboard
open override fun getTypeRaw(): Int
Link copied to clipboard
@Nonnull
open override fun getUser(): User
Link copied to clipboard
@Nonnull
open override fun getUserLocale(): DiscordLocale
Link copied to clipboard
open override fun getUserMessage(localizationPath: String, vararg entries: Localization.Entry): String

Returns the localized message at the following path, using the user's locale and parameters.

Link copied to clipboard
fun LocalizableInteraction.getUserMessage(localizationPath: String, vararg entries: PairEntry): String
Link copied to clipboard
open override fun isAcknowledged(): Boolean
Link copied to clipboard
open fun isFromGuild(): Boolean
Link copied to clipboard
Link copied to clipboard
open override fun isGuildCommand(): Boolean
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun reply(@Nonnull p0: String): ReplyCallbackAction
@Nonnull
@CheckReturnValue
open fun reply(@Nonnull p0: MessageCreateData): ReplyCallbackAction
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun replyComponents(@Nonnull p0: MutableCollection<out LayoutComponent>): ReplyCallbackAction
@Nonnull
@CheckReturnValue
open fun replyComponents(@Nonnull p0: LayoutComponent, @Nonnull vararg p1: LayoutComponent): ReplyCallbackAction
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun replyEmbeds(@Nonnull p0: MutableCollection<out MessageEmbed>): ReplyCallbackAction
@Nonnull
@CheckReturnValue
open fun replyEmbeds(@Nonnull p0: MessageEmbed, @Nonnull vararg p1: MessageEmbed): ReplyCallbackAction
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun replyFiles(@Nonnull vararg p0: FileUpload): ReplyCallbackAction
@Nonnull
@CheckReturnValue
open fun replyFiles(@Nonnull p0: MutableCollection<out FileUpload>): ReplyCallbackAction
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun replyFormat(@Nonnull p0: String, @Nonnull vararg p1: Any): ReplyCallbackAction
Link copied to clipboard
@CheckReturnValue
open override fun replyGuild(localizationPath: String, vararg entries: Localization.Entry): ReplyCallbackAction

Replies with the localized message at the following path, using the guild's locale and provided parameters.

Link copied to clipboard
Link copied to clipboard
@CheckReturnValue
open override fun replyLocalized(locale: Locale, localizationPath: String, vararg entries: Localization.Entry): ReplyCallbackAction

Replies with the localized message at the following path, using the provided locale and parameters.

@CheckReturnValue
open override fun replyLocalized(locale: DiscordLocale, localizationPath: String, vararg entries: Localization.Entry): ReplyCallbackAction

Replies with the localized message at the following path, using the provided locale and parameters.

Link copied to clipboard
fun IReplyCallback.replyLocalized(context: LocalizationContext, localizationPath: String, vararg entries: PairEntry): ReplyCallbackAction

Replies a localized message to this interaction and acknowledges it.

fun LocalizableReplyCallback.replyLocalized(locale: Locale, localizationPath: String, vararg entries: PairEntry): ReplyCallbackAction
Link copied to clipboard

Replies a localized ephemeral message to this interaction and acknowledges it.

Link copied to clipboard
@Nonnull
open override fun replyModal(@Nonnull p0: Modal): ModalCallbackAction
Link copied to clipboard
@Nonnull
@CheckReturnValue
open fun replyPoll(@Nonnull p0: MessagePollData): ReplyCallbackAction
Link copied to clipboard
@CheckReturnValue
open override fun replyUser(localizationPath: String, vararg entries: Localization.Entry): ReplyCallbackAction

Replies with the localized message at the following path, using the user's locale and provided parameters.

Link copied to clipboard
fun LocalizableReplyCallback.replyUser(localizationPath: String, vararg entries: PairEntry): ReplyCallbackAction
Link copied to clipboard
Link copied to clipboard
open override fun toString(): String