Class: Discordrb::Profile
Overview
This class is a special variant of User that represents the bot's user profile (things like email addresses and the avatar). It can be accessed using Bot#profile.
Instance Attribute Summary
Attributes inherited from User
Attributes included from UserAttributes
#avatar_id, #bot_account, #discriminator, #username
Attributes included from IDObject
Instance Method Summary collapse
-
#avatar=(avatar) ⇒ Object
Changes the bot's avatar.
-
#current_bot? ⇒ true
Whether or not the user is the bot.
-
#email=(email) ⇒ Object
Sets the bot's email address.
-
#initialize(data, bot, email, password) ⇒ Profile
constructor
A new instance of Profile.
-
#inspect ⇒ Object
The inspect method is overwritten to give more useful output.
-
#password=(password) ⇒ Object
Changes the bot's password.
-
#username=(username) ⇒ Object
Sets the bot's username.
Methods inherited from User
Methods included from UserAttributes
#avatar_url, #distinct, #mention
Methods included from IDObject
Constructor Details
#initialize(data, bot, email, password) ⇒ Profile
Returns a new instance of Profile.
434 435 436 437 438 |
# File 'lib/discordrb/data.rb', line 434 def initialize(data, bot, email, password) super(data, bot) @email = email @password = password end |
Instance Method Details
#avatar=(avatar) ⇒ Object
Changes the bot's avatar.
468 469 470 471 472 473 474 475 476 |
# File 'lib/discordrb/data.rb', line 468 def avatar=(avatar) if avatar.respond_to? :read avatar_string = 'data:image/jpg;base64,' avatar_string += Base64.strict_encode64(avatar.read) update_profile_data(avatar: avatar_string) else update_profile_data(avatar: avatar) end end |
#current_bot? ⇒ true
Whether or not the user is the bot. The Profile can only ever be the bot user, so this always returns true.
442 443 444 |
# File 'lib/discordrb/data.rb', line 442 def current_bot? true end |
#email=(email) ⇒ Object
Sets the bot's email address. If you use this method, make sure that the login email in the script matches this one afterwards, so the bot doesn't have any trouble logging in in the future.
455 456 457 |
# File 'lib/discordrb/data.rb', line 455 def email=(email) update_profile_data(email: email) end |
#inspect ⇒ Object
The inspect method is overwritten to give more useful output
489 490 491 |
# File 'lib/discordrb/data.rb', line 489 def inspect "<Profile email=#{@email} user=#{super}>" end |
#password=(password) ⇒ Object
Changes the bot's password. This will invalidate all tokens so you will have to relog the bot.
461 462 463 |
# File 'lib/discordrb/data.rb', line 461 def password=(password) update_profile_data(new_password: password) end |
#username=(username) ⇒ Object
Sets the bot's username.
448 449 450 |
# File 'lib/discordrb/data.rb', line 448 def username=(username) update_profile_data(username: username) end |