Class: Line::Bot::V2::MessagingApi::UserProfileResponse
- Inherits:
-
Object
- Object
- Line::Bot::V2::MessagingApi::UserProfileResponse
- Defined in:
- lib/line/bot/v2/messaging_api/model/user_profile_response.rb
Overview
Instance Attribute Summary collapse
-
#display_name ⇒ String
User’s display name.
-
#language ⇒ String?
User’s language, as a BCP 47 language tag.
-
#picture_url ⇒ String?
Profile image URL.
-
#status_message ⇒ String?
User’s status message.
-
#user_id ⇒ String
User ID.
Class Method Summary collapse
-
.create(args) ⇒ Line::Bot::V2::MessagingApi::UserProfileResponse
Create an instance of the class from a hash.
Instance Method Summary collapse
-
#==(other) ⇒ Boolean
True if the objects are equal, false otherwise.
-
#hash ⇒ Integer
Hash code of the object.
-
#initialize(display_name:, user_id:, picture_url: nil, status_message: nil, language: nil, **dynamic_attributes) ⇒ UserProfileResponse
constructor
A new instance of UserProfileResponse.
Constructor Details
#initialize(display_name:, user_id:, picture_url: nil, status_message: nil, language: nil, **dynamic_attributes) ⇒ UserProfileResponse
Returns a new instance of UserProfileResponse.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 37 def initialize( display_name:, user_id:, picture_url: nil, status_message: nil, language: nil, **dynamic_attributes ) @display_name = display_name @user_id = user_id @picture_url = picture_url @status_message = @language = language dynamic_attributes.each do |key, value| self.class.attr_accessor key if value.is_a?(Hash) struct_klass = Struct.new(*value.keys.map(&:to_sym)) struct_values = value.map { |_k, v| v.is_a?(Hash) ? Line::Bot::V2::Utils.hash_to_struct(v) : v } instance_variable_set("@#{key}", struct_klass.new(*struct_values)) else instance_variable_set("@#{key}", value) end end end |
Instance Attribute Details
#display_name ⇒ String
Returns User’s display name.
18 19 20 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 18 def display_name @display_name end |
#language ⇒ String?
Returns User’s language, as a BCP 47 language tag. Not included in the response if the user hasn’t yet consented to the LINE Privacy Policy.
30 31 32 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 30 def language @language end |
#picture_url ⇒ String?
Returns Profile image URL. ‘https` image URL. Not included in the response if the user doesn’t have a profile image.
24 25 26 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 24 def picture_url @picture_url end |
#status_message ⇒ String?
Returns User’s status message. Not included in the response if the user doesn’t have a status message.
27 28 29 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 27 def @status_message end |
#user_id ⇒ String
Returns User ID.
21 22 23 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 21 def user_id @user_id end |
Class Method Details
.create(args) ⇒ Line::Bot::V2::MessagingApi::UserProfileResponse
Create an instance of the class from a hash
68 69 70 71 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 68 def self.create(args) # steep:ignore symbolized_args = Line::Bot::V2::Utils.deep_symbolize(args) return new(**symbolized_args) # steep:ignore end |
Instance Method Details
#==(other) ⇒ Boolean
Returns true if the objects are equal, false otherwise.
75 76 77 78 79 80 81 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 75 def ==(other) return false unless self.class == other.class instance_variables.all? do |var| instance_variable_get(var) == other.instance_variable_get(var) end end |
#hash ⇒ Integer
Returns Hash code of the object.
84 85 86 |
# File 'lib/line/bot/v2/messaging_api/model/user_profile_response.rb', line 84 def hash [self.class, *instance_variables.map { |var| instance_variable_get(var) }].hash end |