Module: Discordrb::UserAttributes
- Included in:
- Light::LightProfile, User
- Defined in:
- lib/discordrb/data/user.rb
Overview
Mixin for the attributes users should have
Constant Summary collapse
- FLAGS =
rubocop:disable Naming/VariableNumber
{ staff: 1 << 0, partner: 1 << 1, hypesquad: 1 << 2, bug_hunter_level_1: 1 << 3, hypesquad_online_house_1: 1 << 6, hypesquad_online_house_2: 1 << 7, hypesquad_online_house_3: 1 << 8, premium_early_supporter: 1 << 9, team_pseudo_user: 1 << 10, bug_hunter_level_2: 1 << 14, verified_bot: 1 << 16, verified_developer: 1 << 17, certified_moderator: 1 << 18, bot_http_interactions: 1 << 19, active_developer: 1 << 22 }.freeze
Instance Attribute Summary collapse
-
#avatar_id ⇒ String
The ID of this user's current avatar, can be used to generate an avatar URL.
-
#bot_account ⇒ true, false
(also: #bot_account?)
readonly
Whether this user is a Discord bot account.
-
#discriminator ⇒ String
(also: #discrim, #tag, #discord_tag)
readonly
This user's discriminator which is used internally to identify users with identical usernames.
-
#global_name ⇒ String?
readonly
This user's global name.
-
#public_flags ⇒ Integer
readonly
The public flags on a user's account.
-
#username ⇒ String
(also: #name)
readonly
This user's username.
-
#webhook_account ⇒ true, false
(also: #webhook_account?, #webhook?)
readonly
Whether this is fake user for a webhook message.
Instance Method Summary collapse
-
#avatar_url(format = nil) ⇒ String
Utility function to get a user's avatar URL.
-
#display_name ⇒ String
Utility function to get Discord's display name of a user not in server.
-
#distinct ⇒ String
Utility function to get Discord's distinct representation of a user, i.e.
-
#mention ⇒ String
Utility function to mention users in messages.
Instance Attribute Details
#avatar_id ⇒ String
Returns the ID of this user's current avatar, can be used to generate an avatar URL.
50 51 52 |
# File 'lib/discordrb/data/user.rb', line 50 def avatar_id @avatar_id end |
#bot_account ⇒ true, false (readonly) Also known as: bot_account?
Returns whether this user is a Discord bot account.
40 41 42 |
# File 'lib/discordrb/data/user.rb', line 40 def bot_account @bot_account end |
#discriminator ⇒ String (readonly) Also known as: discrim, tag, discord_tag
Returns this user's discriminator which is used internally to identify users with identical usernames.
34 35 36 |
# File 'lib/discordrb/data/user.rb', line 34 def discriminator @discriminator end |
#global_name ⇒ String? (readonly)
Returns this user's global name.
31 32 33 |
# File 'lib/discordrb/data/user.rb', line 31 def global_name @global_name end |
#public_flags ⇒ Integer (readonly)
Returns the public flags on a user's account.
90 91 92 |
# File 'lib/discordrb/data/user.rb', line 90 def public_flags @public_flags end |
#username ⇒ String (readonly) Also known as: name
Returns this user's username.
27 28 29 |
# File 'lib/discordrb/data/user.rb', line 27 def username @username end |
#webhook_account ⇒ true, false (readonly) Also known as: webhook_account?, webhook?
Returns whether this is fake user for a webhook message.
44 45 46 |
# File 'lib/discordrb/data/user.rb', line 44 def webhook_account @webhook_account end |
Instance Method Details
#avatar_url(format = nil) ⇒ String
Utility function to get a user's avatar URL. TODO: Maybe change this method again after discriminator removal ?
79 80 81 82 83 84 85 86 87 |
# File 'lib/discordrb/data/user.rb', line 79 def avatar_url(format = nil) unless @avatar_id return API::User.default_avatar(@discriminator, legacy: true) if @discriminator && @discriminator != '0' return API::User.default_avatar(@id) end API::User.avatar_url(@id, @avatar_id, format) end |
#display_name ⇒ String
Utility function to get Discord's display name of a user not in server
54 55 56 |
# File 'lib/discordrb/data/user.rb', line 54 def display_name global_name || username end |
#distinct ⇒ String
Utility function to get Discord's distinct representation of a user, i.e. username + discriminator TODO: Maybe change this method again after discriminator removal ?
67 68 69 70 71 72 73 |
# File 'lib/discordrb/data/user.rb', line 67 def distinct if @discriminator && @discriminator != '0' "#{@username}##{@discriminator}" else @username.to_s end end |
#mention ⇒ String
Utility function to mention users in messages
60 61 62 |
# File 'lib/discordrb/data/user.rb', line 60 def mention "<@#{@id}>" end |