Class: OnyxCord::Events::ApplicationCommandEvent

Inherits:
InteractionCreateEvent show all
Defined in:
lib/onyxcord/events/interactions/application_commands.rb

Overview

Event for ApplicationCommand interactions.

Direct Known Subclasses

AutocompleteEvent

Instance Attribute Summary collapse

Attributes inherited from InteractionCreateEvent

#channel, #channel_id, #context, #interaction, #server, #server_id, #server_integration?, #type, #user, #user_integration?, #user_locale

Attributes inherited from Event

#bot

Instance Method Summary collapse

Methods inherited from InteractionCreateEvent

#defer, #defer_update, #delete_message, #delete_response, #edit_message, #edit_response, #get_component, #respond, #send_message, #show_modal, #update_message

Instance Attribute Details

#command_idInteger (readonly)

Returns The ID of the command.

Returns:

  • (Integer)

    The ID of the command.



13
14
15
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 13

def command_id
  @command_id
end

#command_nameSymbol (readonly)

Returns The name of the command.

Returns:

  • (Symbol)

    The name of the command.



10
11
12
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 10

def command_name
  @command_name
end

#optionsHash<Symbol, Object> (readonly)

Returns Arguments provided to the command, mapped as Name => Value.

Returns:

  • (Hash<Symbol, Object>)

    Arguments provided to the command, mapped as Name => Value.



25
26
27
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 25

def options
  @options
end

#resolvedResolved (readonly)

Returns The resolved channels, roles, users, members, and attachments for this event.

Returns:

  • (Resolved)

    The resolved channels, roles, users, members, and attachments for this event.



22
23
24
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 22

def resolved
  @resolved
end

#subcommandSymbol? (readonly)

Returns The name of the subcommand relevant to this event.

Returns:

  • (Symbol, nil)

    The name of the subcommand relevant to this event.



19
20
21
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 19

def subcommand
  @subcommand
end

#subcommand_groupSymbol? (readonly)

Returns The name of the subcommand group relevant to this event.

Returns:

  • (Symbol, nil)

    The name of the subcommand group relevant to this event.



16
17
18
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 16

def subcommand_group
  @subcommand_group
end

#target_idInteger? (readonly)

Returns The target of this command when it is a context command.

Returns:

  • (Integer, nil)

    The target of this command when it is a context command.



28
29
30
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 28

def target_id
  @target_id
end

Instance Method Details

#global_command?true, false

Returns Whether or not the application command that was executed has been registered globally. If this is false, then the application command that was executed is only available in the invoking server.

Returns:

  • (true, false)

    Whether or not the application command that was executed has been registered globally. If this is false, then the application command that was executed is only available in the invoking server.



69
70
71
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 69

def global_command?
  @command_server_id.nil?
end

#targetMessage, ...

Returns The target of this command, for context commands.

Returns:

  • (Message, User, nil)

    The target of this command, for context commands.



74
75
76
77
78
# File 'lib/onyxcord/events/interactions/application_commands.rb', line 74

def target
  return nil unless @target_id

  @resolved.find { |data| data.key?(@target_id) }[@target_id]
end