Class: Discordrb::Events::PresenceEvent

Inherits:
Event
  • Object
show all
Defined in:
lib/discordrb/events/presence.rb

Overview

Event raised when a user's presence state updates (idle or online)

Instance Attribute Summary collapse

Attributes inherited from Event

#bot

Instance Method Summary collapse

Constructor Details

#initialize(data, bot) ⇒ PresenceEvent

Returns a new instance of PresenceEvent.



22
23
24
25
26
27
28
29
# File 'lib/discordrb/events/presence.rb', line 22

def initialize(data, bot)
  @bot = bot

  @user = bot.user(data['user']['id'].to_i)
  @status = data['status'].to_sym
  @client_status = user.client_status
  @server = bot.server(data['guild_id'].to_i)
end

Instance Attribute Details

#client_statusHash<Symbol, Symbol> (readonly)

Returns the current online status (:online, :idle or :dnd) of the user on various device types (:desktop, :mobile, or :web). The value will be nil if the user is offline or invisible.

Returns:

  • (Hash<Symbol, Symbol>)

    the current online status (:online, :idle or :dnd) of the user on various device types (:desktop, :mobile, or :web). The value will be nil if the user is offline or invisible.



20
21
22
# File 'lib/discordrb/events/presence.rb', line 20

def client_status
  @client_status
end

#serverServer (readonly)

Returns the server on which the presence update happened.

Returns:

  • (Server)

    the server on which the presence update happened.



10
11
12
# File 'lib/discordrb/events/presence.rb', line 10

def server
  @server
end

#statusSymbol (readonly)

Returns the new status.

Returns:

  • (Symbol)

    the new status.



16
17
18
# File 'lib/discordrb/events/presence.rb', line 16

def status
  @status
end

#userUser (readonly)

Returns the user whose status got updated.

Returns:

  • (User)

    the user whose status got updated.



13
14
15
# File 'lib/discordrb/events/presence.rb', line 13

def user
  @user
end